[
  {
    "path": ".prettierrc",
    "content": "{\n    \"printWidth\": 150\n}"
  },
  {
    "path": "ders-1/0-js-vs-vue/js/app.js",
    "content": "const todoText = document.querySelector(\"#todoText\");\nconst addBtn = document.querySelector(\"#addBtn\");\nconst todoList = document.querySelector(\"#todoList\");\n\naddBtn.addEventListener(\"click\", () => {\n  const listItem = document.createElement(\"li\");\n  listItem.textContent = todoText.value;\n  todoList.append(listItem);\n});\n"
  },
  {
    "path": "ders-1/0-js-vs-vue/js/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n  </head>\n  <body>\n    <input type=\"text\" id=\"todoText\" />\n    <button id=\"addBtn\">Ekle</button>\n    <ul id=\"todoList\"></ul>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/0-js-vs-vue/vue/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      todoText: null,\n      todoList: [],\n    };\n  },\n  methods: {\n    addTodo() {\n      this.todoList.push(this.todoText);\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1/0-js-vs-vue/vue/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <input type=\"text\" id=\"todoText\" v-model=\"todoText\" />\n      <button id=\"addBtn\" @click=\"addTodo\">Ekle</button>\n      <ul id=\"todoList\">\n        <li v-for=\"todo in todoList\" :key=\"todo\">{{ todo }}</li>\n      </ul>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/1-vue-instance/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      title: \"Vue.js Bootcamp 1.gün\",\n      content: \"Lorem ipsum dolor sit amet..\",\n      eduflow: {\n        title: \"Müfredat ve açıklamalar için tıklayınız\",\n        target: \"_blank\",\n        url: \"https://eduflow.kablosuzkedi.com\",\n        alt: \"mufredat-kablosuzkedi-vue-bootcamp\",\n      },\n      owner: \"Pogaca\",\n      coords: {\n        x: 0,\n        y: 0,\n      },\n    };\n  },\n  methods: {\n    changeTitle(pTitle) {\n      this.title = pTitle;\n    },\n    updateCoords(message, event) {\n      //   console.log(message, event.x, event.y);\n      this.changeTitle(`${event.x},${event.y}`);\n      this.coords = {\n        x: event.x,\n        y: event.y,\n      };\n    },\n  },\n}).mount(\"#app\");\n// Vue2 Version\n// new Vue({\n// el : \"#app\",\n//     data : {\n\n//     }\n// })\n"
  },
  {
    "path": "ders-1/1-vue-instance/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <div id=\"app\">\n      <h1>{{ title }}</h1>\n      <p>{{ content }}</p>\n      <a\n        :target=\"eduflow.target\"\n        :href=\"eduflow.url\"\n        v-bind:alt=\"eduflow.alt\"\n        v-bind:kablosuzkedi=\"owner\"\n      >\n        {{ eduflow.title }}</a\n      >\n      <br />\n      <br />\n      <button v-on:click=\"changeTitle('Bu 1.buton')\">Title Değiştir...</button>\n      <button v-on:click=\"changeTitle('Bu 2.buton')\">\n        Title 2 Değiştir...\n      </button>\n      <div\n        @mousemove=\"updateCoords('mouseMoooove',$event)\"\n        class=\"box\"\n        @click=\"changeTitle('Box üzerinden gelen..')\"\n      ></div>\n      <span>{{ coords.x }},{{ coords.y }}</span>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/1-vue-instance/style.css",
    "content": ".box {\n  margin-top: 10px;\n  border: 2px dashed #666;\n  width: 200px;\n  height: 200px;\n  background-color: beige;\n}\n"
  },
  {
    "path": "ders-1/2-events/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      fullName: \"Küpeli\",\n    };\n  },\n  methods: {\n    updateValue(kamil) {\n      this.fullName = kamil.target.value;\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1/2-events/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Events</title>\n    <link\n      href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css\"\n      rel=\"stylesheet\"\n      integrity=\"sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC\"\n      crossorigin=\"anonymous\"\n    />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"row mt-5\">\n        <div class=\"col-4 offset-4\">\n          <h3 class=\"text-center\">Event</h3>\n          <!-- <input v-on:input=\"\" type=\"text\" class=\"form-control\" /> -->\n          <!-- <input\n            @input=\"fullName = $event.target.value\"\n            :value=\"fullName\"\n            type=\"text\"\n            class=\"form-control\"\n          /> -->\n          <input v-model=\"fullName\" type=\"text\" class=\"form-control\" />\n\n          {{ fullName }}\n          <br />\n          <button class=\"btn btn-primary btn-sm\">Ekle</button>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/3-counter-app/.prettierrc",
    "content": "{\n    \"printWidth\": 150\n}"
  },
  {
    "path": "ders-1/3-counter-app/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      counter: 0,\n      counter2: 0,\n    };\n  },\n  methods: {},\n  computed: {\n    getCounterResult() {\n      console.log(\"Counter 1 Çalıştı\");\n      return this.counter > 5 ? \"BÜYÜK\" : \"KÜÇÜK\";\n    },\n    getCounter2Result() {\n      console.log(\"Counter 2 Çalıştı\");\n      return this.counter2 > 5 ? \"BÜYÜK\" : \"KÜÇÜK\";\n    },\n  },\n  watch: {\n    counter(newValue, oldValue) {\n      console.log(\"Counter\", oldValue, \"=>\", newValue);\n    },\n    getCounterResult(newValue, oldValue) {\n      console.log(\"RESULT\", oldValue, \"=>\", newValue);\n    },\n  },\n  //   methods: {\n  //     inc() {\n  //       this.counter++;\n  //     },\n  //     dec() {\n  //       this.counter--;\n  //     },\n  //   },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1/3-counter-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Counter</title>\n    <link\n      href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css\"\n      rel=\"stylesheet\"\n      integrity=\"sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC\"\n      crossorigin=\"anonymous\"\n    />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\" class=\"container\">\n      <div class=\"row mt-5\">\n        <div class=\"col-2 card p-2 me-2\">\n          <h3 class=\"text-center\">{{ counter }}</h3>\n          <div class=\"d-flex justify-content-center align-items-center\">\n            <button @click=\"counter++\" class=\"btn me-2 btn-sm btn-primary\">+</button>\n            <button @click=\"counter--\" class=\"btn btn-sm btn-danger\">-</button>\n          </div>\n          <div class=\"alert alert-warning mt-2\">{{ getCounterResult }}</div>\n        </div>\n\n        <div class=\"col-2 card p-2\">\n          <h3 class=\"text-center\">{{ counter2 }}</h3>\n          <div class=\"d-flex justify-content-center align-items-center\">\n            <button @click=\"counter2++\" class=\"btn me-2 btn-sm btn-primary\">+</button>\n            <button @click=\"counter2--\" class=\"btn btn-sm btn-danger\">-</button>\n          </div>\n          <div class=\"alert alert-warning mt-2\">{{ getCounter2Result }}</div>\n        </div>\n      </div>\n    </div>\n\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/4-reactivity-examples/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      search: \"\",\n      itemList: [\"elma\", \"armut\", \"kiraz\", \"çilek\"],\n      //   filteredList: [],\n    };\n  },\n  methods: {\n    searchList() {\n      //   this.filteredList = this.itemList.filter((i) => i.includes(this.search));\n    },\n  },\n  computed: {\n    filteredList() {\n      return this.itemList.filter((i) => i.includes(this.search));\n    },\n  },\n});\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-1/4-reactivity-examples/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <link\n      href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css\"\n      rel=\"stylesheet\"\n      integrity=\"sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC\"\n      crossorigin=\"anonymous\"\n    />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\" class=\"container\">\n      <div class=\"row mt-5\">\n        <div class=\"col-4 offset-4 p-2 card\">\n          <input type=\"text\" v-model=\"search\" />\n          <button class=\"btn btn-sm btn-primary\" @click=\"searchList\">\n            Ara\n          </button>\n          <pre class=\"mt-3\">\n                {{ itemList }}\n                </pre\n          >\n          <pre class=\"mt-3\">\n                {{ filteredList }}\n                </pre\n          >\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/5-life-cycle-hooks/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      title: \"Test Başlığı\",\n      itemList: [],\n    };\n  },\n  beforeCreate() {\n    console.log(\"beforeCreate Çalıştı..\");\n  },\n  created() {\n    console.log(\"created Çalıştı..\");\n    setTimeout(() => {\n      this.itemList = [1, 2, 3, 4, 5, 56, 7, 8];\n    }, 2000);\n\n    setTimeout(() => {\n      this.title = \"Bu yeni başlık.\";\n    }, 3000);\n  },\n  beforeMount() {\n    console.log(\"beforeMount Çalıştı..\");\n  },\n  mounted() {\n    console.log(\"mounted Çalıştı..\");\n  },\n  beforeUpdate() {\n    console.log(\"beforeUpdate Çalıştı..\");\n  },\n  updated() {\n    console.log(\"updated Çalıştı..\");\n  },\n  beforeUnmount() {\n    console.log(\"beforeUnmount Çalıştı..\");\n  },\n  unmounted() {\n    console.log(\"unmounted Çalıştı..\");\n  },\n});\n\napp.mount(\"#app\");\n\nsetTimeout(() => {\n  app.unmount();\n}, 5000);\n// const app2 = Vue.createApp({})\n"
  },
  {
    "path": "ders-1/5-life-cycle-hooks/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Life Cycle Hooks</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      {{ title }}\n      <pre>\n        {{ itemList }}\n      </pre>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/6-class-style-binding/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      showBorder: false,\n      redBG: false,\n      boxClass: \"border red\",\n      bgColor: \"cyan\",\n    };\n  },\n  computed: {\n    boxClasses() {\n      return { border: this.showBorder, red: this.redBG };\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1/6-class-style-binding/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Class Style Binding</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <div id=\"app\">\n      <input type=\"text\" v-model=\"bgColor\" />\n      <button @click=\"showBorder = !showBorder\">Border Ekle/Ekleme</button>\n      <button @click=\"redBG = !redBG\">Kırmızı BG Yap.</button>\n      <div\n        class=\"box\"\n        :style=\"{ backgroundColor : bgColor }\"\n        :class=\"boxClasses\"\n      ></div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/6-class-style-binding/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: \"Courier New\", Courier, monospace;\n}\n\nbody {\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  padding: 10px;\n}\n\n.box {\n  width: 100px;\n  height: 100px;\n  background-color: #dedede;\n}\n\n.border {\n  border: 3px dashed #666;\n}\n\n.red {\n  background-color: red;\n}\n\n.green {\n  background-color: green;\n}\n\n.blue {\n  background-color: blue;\n}\n"
  },
  {
    "path": "ders-1/7-conditions/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      showContainer: false,\n      counter: 0,\n    };\n  },\n  computed: {\n    counterBoxClass() {\n      return { \"bg-success text-white\": this.counter > 0, \"bg-danger text-white\": this.counter < 0 };\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1/7-conditions/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link\n      href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css\"\n      rel=\"stylesheet\"\n      integrity=\"sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC\"\n      crossorigin=\"anonymous\"\n    />\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container\">\n        <div class=\"row\">\n          <div class=\"col-8 offset-2 p-2\">\n            <button class=\"btn btn-sm btn-primary\" @click=\"showContainer = !showContainer\">Aç / Kapat</button>\n            <h1 v-if=\"!showContainer\" class=\"text-danger\">BAŞLANGIÇTA GÖZÜKECEK</h1>\n            <h1 v-else class=\"text-primary\">SONRA GÖZÜKECEK</h1>\n            <hr />\n\n            <h3 :class=\"counterBoxClass\">{{ counter }}</h3>\n            <button class=\"btn btn-sm btn-success\" @click=\"counter++\">Artır</button>\n            <button class=\"btn btn-sm btn-danger\" @click=\"counter--\">Azalt</button>\n            <p v-if=\"counter < 0\">Counter Negatif</p>\n            <p v-else-if=\"counter > 0\">Counter Pozitif</p>\n            <p v-else>Counter 0</p>\n\n            <hr />\n\n            <p v-show=\"counter < 0\">Counter Negatif</p>\n            <p v-show=\"counter > 0\">Counter Pozitif</p>\n            <p v-show=\"counter === 0\">Counter 0</p>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/8-loops/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      todoList: [\n        { id: 1, text: \"Vue Bootcamp Hafta 1\", completed: false },\n        { id: 2, text: \"Vue Bootcamp Hafta 2\", completed: false },\n        { id: 3, text: \"Vue Bootcamp Hafta 3\", completed: false },\n        { id: 4, text: \"Vue Bootcamp Hafta 4\", completed: false },\n        { id: 5, text: \"Vue Bootcamp Hafta 5\", completed: false },\n        { id: 6, text: \"Vue Bootcamp Hafta 6\", completed: false },\n        { id: 7, text: \"Vue Bootcamp Hafta 7\", completed: false },\n      ],\n    };\n  },\n  methods: {\n    addTodo(event) {\n      this.todoList.push({\n        id: new Date().getTime(),\n        text: event.target.value,\n        completed: false,\n      });\n      event.target.value = \"\";\n    },\n    removeItem(todoItem) {\n      this.todoList = this.todoList.filter((todo) => todo !== todoItem);\n    },\n  },\n  computed: {\n    completedItemCount() {\n      return this.todoList.filter((t) => t.completed).length;\n    },\n    unCompletedItemCount() {\n      return this.todoList.filter((t) => !t.completed).length;\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1/8-loops/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Loops</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link\n      href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css\"\n      rel=\"stylesheet\"\n      integrity=\"sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC\"\n      crossorigin=\"anonymous\"\n    />\n    <style>\n      .uncompleted-item {\n        background-color: #dc354536;\n      }\n      .completed-item {\n        background-color: #19875440;\n      }\n    </style>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container\">\n        <div class=\"row\">\n          <div class=\"col-8 p-2\">\n            <h3 class=\"text-center\">Todo List</h3>\n            <div class=\"d-flex justify-content-star mb-4\">\n              <input type=\"text\" class=\"form-control me-2\" @keydown.enter=\"addTodo\" />\n            </div>\n            <div v-if=\"todoList.length > 0\">\n              <ul class=\"list-group\">\n                <li\n                  v-for=\"todo in todoList\"\n                  :key=\"todo.id\"\n                  :class=\"{ 'completed-item' : todo.completed, 'uncompleted-item' : !todo.completed }\"\n                  class=\"list-group-item d-flex justify-content-between align-items-center\"\n                >\n                  <div>\n                    <input class=\"form-check-input\" type=\"checkbox\" v-model=\"todo.completed\" :id=\"`completed_checkbox_${todo.id}`\" />\n                    <label class=\"form-check-label ms-2\" :for=\"`completed_checkbox_${todo.id}`\"> {{ todo.text }} </label>\n                  </div>\n                  <button class=\"btn btn-danger btn-sm\" @click=\"removeItem(todo)\">Sil</button>\n                </li>\n              </ul>\n              <div class=\"d-flex justify-content-between align-items-center\">\n                <small class=\"text-success\"> Tamamlanmış item sayısı :{{ completedItemCount }} </small>\n                <small class=\"text-danger\"> Tamamlanmamış item sayısı :{{ unCompletedItemCount }} </small>\n              </div>\n            </div>\n\n            <div v-else class=\"alert alert-warning\">Henüz eklenmiş bir todo bulunmamaktadır.</div>\n          </div>\n          <div class=\"col-4\">\n            <pre> {{ todoList }} </pre>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/class-list-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Class List App</title>\n    <link rel=\"stylesheet\" href=\"./style.css\" />\n  </head>\n  <body>\n    <header>Class List App</header>\n    <div class=\"container\">\n      <div class=\"class--list--app\">\n        <div class=\"card\">\n          <ul class=\"class-list\">\n            <li>\n              <label>\n                <input class=\"mr-5\" type=\"checkbox\" />\n                <span>Background Color</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input class=\"mr-5\" type=\"checkbox\" />\n                <span>Border</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input class=\"mr-5\" type=\"checkbox\" />\n                <span>Border Radius</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input class=\"mr-5\" type=\"checkbox\" />\n                <span>Color</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input class=\"mr-5\" type=\"checkbox\" />\n                <span>Font Bold</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input class=\"mr-5\" type=\"checkbox\" />\n                <span>Font Italic</span>\n              </label>\n            </li>\n          </ul>\n\n          <textarea rows=\"5\"></textarea>\n        </div>\n      </div>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/class-list-app/readme.txt",
    "content": "ÖDEV\nYukarıda bulunan checkbox elementlerine tıklanıldığında, checkbox'ın sahip olduğu Class bilgisini textarea elementine verecek Vue uygulamasını yazınız.\nWhen the above checkbox elements are clicked, write the Vue application that will give the Class information of the checkbox to the textarea element.\n\nİPUCU\nBackground Color, Border, Color, Font Bold, Border Radius, Font Italic için birer CSS Class'ı oluşturarak, her bir checkbox için v-model ile kontrol yapabilirsiniz.\nBy creating a CSS Class for Background Color, Border, Color, Font Bold, Border Radius, Font Italic, you can control each checkbox with a v-model."
  },
  {
    "path": "ders-1/odevler/class-list-app/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1/odevler/comment-like-dislike-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Comment Like/Dislike App</title>\n    <link rel=\"stylesheet\" href=\"./style.css\" />\n  </head>\n  <body>\n    <header>Comment Like/Dislike App</header>\n    <div class=\"container\">\n      <div class=\"comment--like--dislike--app\">\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n      </div>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/comment-like-dislike-app/readme.txt",
    "content": "ÖDEV\n1 - ) data üzerinde bulunan bir comments isimli bir Array üzerinden \".comment--item\" elementini v-for ile döndürünüz.\n1 - ) iterate the \".comment - item\" element with v-for over an Array named comments on the data.\n2 - ) Kullanıcı Beğendim / Beğenmedim butonuna tıkladığında, üzerinde yazan sayaçları arttırınız. Yani Beğendim (5) Beğenmedim (10) gibi.\n2 - ) When the user clicks on the Like / Dislike button, increase the counters written on it. So I Like (5) Like I Don't Like (10).\n\nİPUCU:\nBeğeni sayılarını comments içerisinde tutabilirsiniz.\nYou can keep the number of likes in the comments.\n\nNOT:\nBeğeni sayılarının sürekli artmasının bir önemi yoktur.\nIt doesn't matter that the number of likes is constantly increasing."
  },
  {
    "path": "ders-1/odevler/comment-like-dislike-app/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n  box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n  -ms-flex-pack: end;\n  justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n  -ms-flex-align: end;\n  align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: end;\n  -ms-flex-align: end;\n  align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n  appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n  flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [4];\n  grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: flex-start;\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n  align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n  align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [6];\n  grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */\n"
  },
  {
    "path": "ders-1/odevler/cozum-1/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 1 | Template üzerine Veri Yazdırmak</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 1 | Template Üzerine Veri Yazdırmak</header>\n\n    <div id=\"exercise\" class=\"container\">\n      <div class=\"card\">\n        <!-- 1) Interpolation yani {{}} Syntax'ını kullanarak <p> elementinin içeriğini Name ve Age verileriyle doldurun-->\n        <p>VueJS Muazzam bir Framework - {{ name }} ({{ age }})</p>\n\n        <!-- 2) Yaşınızı 5 ile çarpıp <p> içerisinde yazdırınız -->\n        <p class=\"mt-10\">{{ age * 5 }}</p>\n\n        <!-- 3) Fonksiyon çağırarak 0 ile 1 arasında bir sayı üretip <p> içerisinde yazdırınız (Math.random()) -->\n        <!-- <p class=\"mt-10\">{{ showText() }}</p> -->\n        <p class=\"mt-10\">{{ randomNumber() }}</p>\n\n        <!-- 4) Google üzerinden bulacağınız herhangi bir fotoğrafı <img> elementinde gösterme işlemini yapınız. Bunu yaparken \"src\" attribute' una bind etmeyi unutmayınız -->\n        <img v-bind:src=\"image_url\" :alt=\"seo_keyword\" />\n\n        <!-- 5) Name değişkeninin değerinin <input /> içine yazdığınız değer ile anlık olarak değiştirilmesini sağlayınız. (\"value\" attribute kullanarak) -->\n        <div class=\"mb-10\">\n          <!-- <input type=\"text\" :value=\"name\" @input=\"valueChanged\" /> -->\n          <input\n            type=\"text\"\n            :value=\"name\"\n            @input=\"name = $event.target.value\"\n          />\n        </div>\n      </div>\n    </div>\n\n    <script>\n      const app = Vue.createApp({\n        data() {\n          return {\n            name: \"Defne\",\n            age: 2.5,\n            image_url:\n              \"https://lh3.googleusercontent.com/proxy/sIuVvQueNt9Xr99WTOG2zFiKBaiXvnXli2A4-g5A2sgdpAtDMsVYWCQ1yMndMGrxyz4PoK9lgMkk325HM1Mx2-dX66Q7enxgxBZeILYWeKT3MUQkt8XzqLv2X-NfYGFOJi1bAEBXNVmjdAb_Sw\",\n            seo_keyword: \"vue-js-eğitim-kablosuzkedi\",\n          };\n        },\n        methods: {\n          showText() {\n            return \"Kodluyoruz Ailesine Selam Olsun!\";\n          },\n          randomNumber() {\n            // setTimeout(() => {\n            //   this.name = \"Gokhan\";\n            // }, 5000);\n            return Math.random();\n          },\n          valueChanged(event) {\n            console.log(\"Event =>\", event.target.value);\n            this.name = event.target.value;\n          },\n        },\n        computed: {},\n      });\n\n      app.mount(\"#exercise\");\n    </script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/cozum-1/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1/odevler/cozum-2/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      value: \"\",\n      value2: \"\",\n    };\n  },\n  methods: {\n    showMeAlert() {\n      alert(\"Bu bir alert..\");\n    },\n    keyDownEvent(e) {\n      console.log(\"Event\", e);\n      this.value = e.target.value;\n    },\n    keyDownEvent2(e) {\n      console.log(\"Event\", e);\n      this.value2 = e.target.value;\n    },\n  },\n});\napp.mount(\"#exercise\");\n"
  },
  {
    "path": "ders-1/odevler/cozum-2/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 2 | Event</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 2 | Events</header>\n    <div class=\"container\" id=\"exercise\">\n      <div class=\"card text-center\">\n        <!-- 1) Butona tıklanıldığında bir alert() kutusu çıkartınız -->\n        <div class=\"mb-10\">\n          <button @click=\"showMeAlert\">Alert Göster</button>\n        </div>\n\n        <!-- 2) \"keydown\" event'ini dinleyerek value değişkeni içerisinde yazdığınız veriyi saklayın. (ipucu: event.target.value size yazdığınız değeri verebilir.) -->\n        <div class=\"mb-10\">\n          <input type=\"text\" @keyup=\"keyDownEvent\" />\n          <p>{{ value }}</p>\n        </div>\n        <!-- 3) 2.Uygulamayı düzenleyerek eğer keydown ENTER ise yazdığınız verinin value değerine aktarılmasını sağlayın -->\n        <!-- attribute => v-bind\n        event => v-on -->\n\n        <div>\n          <input type=\"text\" @keydown.enter=\"keyDownEvent2\" />\n          <p>{{ value2 }}</p>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/cozum-2/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1/odevler/cozum-3/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      value: 0,\n      result2: null,\n    };\n  },\n  computed: {\n    result() {\n      return this.value === 33 ? \"Tamamlandı\" : \"Henüz tamamlanmadı..\";\n    },\n  },\n  watch: {\n    value(v) {\n      if (v === 33) {\n        this.result2 = \"Tamamlandı\";\n      } else {\n        this.result2 = \"Henüz tamamlanmadı\";\n      }\n    },\n    result() {\n      setTimeout(() => {\n        this.value = 0;\n      }, 2000);\n    },\n  },\n});\napp.mount(\"#exercise\");\n\n// Vue 2\n// new Vue({\n//   el: \"#exercise\",\n//   data: {\n//     value: 0,\n//   },\n// });\n\n// Vue 3\n// const app = Vue.createApp({\n//   data() {\n//     return {};\n//   },\n// })\n// app.mount(\"#exercise\");\n"
  },
  {
    "path": "ders-1/odevler/cozum-3/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Reactivity</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 3 | Reactivity</header>\n    <div class=\"container\">\n      <div class=\"card\">\n        <div id=\"exercise\">\n          <!-- 1) value isimli property'nin değerine bakarak result için bir reactive kod yazınız. value 33'e eşit olmadığı durumlarda <p> elementinin içinde  \"Henüz Bitmedi!!\" 33 olduğunda ise \"Tamamlandı\" yazmalıdır.. Bunun için gördüğünüz reactivity türlerinden birini kullanınız. (Not : Butonlar yardımıyla value property'nin değerini değiştirebilirsiniz )) -->\n          <!-- 1) Write a reactive code for result by looking at the value of the property named value. If value is not equal to 33, inside the <p> element \"Not Finished Yet !!\" When it is 33, it should write \"Completed\". For this, use one of the reactivity types you see. (Note: You can change the value of value property with the help of buttons) -->\n          <div>\n            <p class=\"mb-5\">Şuanki Değer: {{ value }}</p>\n            <button @click=\"value+=5\">Add 5</button>\n            <button @click=\"value+=1\">Add 1</button>\n            <p class=\"mt-5\">{{ result }}</p>\n            <p class=\"mt-5\">{{ result2 }}</p>\n          </div>\n          <!-- 2) result property' değerini izleyerek 5 saniye sonra value'nun değerini sıfırlayınız. (ipucu: setTimeout(..., 5000) kullanılabilir.-->\n          <!-- 2) Reset the value of value information after 5 seconds by following the value of result property. (hint: setTimeout (..., 5000) can be used -->\n          <div class=\"mt-5\">\n            <input type=\"text\" />\n            <p class=\"mt-5\">{{ value }}</p>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/cozum-3/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1/odevler/css-class-app/app.js",
    "content": "Vue.createApp({\n  data() {\n    return {\n      activeColor: \"\",\n      color_palette: [\n        {\n          id: \"red\",\n          css_class: \"red-box\",\n        },\n        {\n          id: \"green\",\n          css_class: \"green-box\",\n        },\n        {\n          id: \"blue\",\n          css_class: \"blue-box\",\n        },\n      ],\n    };\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1/odevler/css-class-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>CSS Class App</title>\n    <link rel=\"stylesheet\" href=\"./style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n\n    <style>\n      .red-box {\n        background-color: brown !important;\n      }\n      .green-box {\n        background-color: green !important;\n      }\n      .blue-box {\n        background-color: blue !important;\n      }\n    </style>\n  </head>\n  <body>\n    <header>CSS Class App</header>\n    <div id=\"app\" class=\"container css--class--app\">\n      <div class=\"card text-center\">\n        <ul class=\"css--palette text-center\">\n          <li :class=\"{ [color.css_class] : true}\" v-for=\"color in color_palette\" :key=\"color.id\" @click=\"activeColor = color.css_class\"></li>\n        </ul>\n        <div class=\"result-box\" :class=\"{ [activeColor] : true }\"></div>\n      </div>\n    </div>\n\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/css-class-app/readme.txt",
    "content": "ÖDEV:\nYukarıda bulunan renk paletlerine tıklanıldığında .result-box elementinin rengini tıklanılan palete göre değiştirecek Vue uygulamasını yazınız.\nWhen clicking on the color palettes above, write the Vue application that will change the color of the .result-box element according to the clicked palette.\n\nİPUCU:\ndata içerisinde yer alan color_palette isimli Array türündeki bir property üzerinden, .css--palette elementinin içinde bulunan li elementlerini v-for ile döndürün.\n<li> elementine click eventi yardımıyla .result-box isimli elementin alacağı rengi class binding ile yapabilirsiniz.\n\"red-box\", \"green-box\", \"blue-box\" isimli css class'larını tanımlamanız gerekmektedir.\n\niterate the li elements in the .css - palette element with v-for over a property of type Array named color_palette in the data.\nWith the help of the click event on the <li> element, you can make the color of the element named .result-box with the class binding.\nYou should define css classes named \"red-box\", \"green-box\", \"blue-box\"\n\nSample Data:\ncolor_palette = [\n    {\n        id: \"red\",\n        css_class: \"red-box\",\n    },\n    {\n        id: \"green\",\n        css_class: \"green-box\",\n    },\n    {\n        id: \"blue\",\n        css_class: \"blue-box\",\n    }\n];"
  },
  {
    "path": "ders-1/odevler/css-class-app/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1/odevler/odev-1/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 1 | Template üzerine Veri Yazdırmak</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 1 | Template Üzerine Veri Yazdırmak</header>\n\n    <div id=\"exercise\" class=\"container\">\n      <div class=\"card\">\n        <!-- 1) Interpolation yani {{}} Syntax'ını kullanarak <p> elementinin içeriğini Name ve Age verileriyle doldurun-->\n        <p>VueJS Muazzam bir Framework - NAME (AGE)</p>\n        <!-- 2) Yaşınızı 5 ile çarpıp <p> içerisinde yazdırınız -->\n        <p class=\"mt-10\"></p>\n\n        <!-- 3) Fonksiyon çağırarak 0 ile 1 arasında bir sayı üretip <p> içerisinde yazdırınız (Math.random()) -->\n        <p class=\"mt-10\"></p>\n\n        <!-- 4) Google üzerinden bulacağınız herhangi bir fotoğrafı <img> elementinde gösterme işlemini yapınızı. Bunu yaparken \"src\" attribute' una bind etmeyi unutmayınız -->\n\n        <!-- 5) Name değişkeninin değerinin <input /> içine yazdığınız değer ile anlık olarak değiştirilmesini sağlayınız. (\"value\" attribute kullanarak) -->\n        <div class=\"mt-10\">\n          <input type=\"text\" />\n        </div>\n      </div>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/odev-1/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1/odevler/odev-2/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      value: \"\",\n    };\n  },\n});\napp.mount(\"#exercise\");\n"
  },
  {
    "path": "ders-1/odevler/odev-2/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 2 | Event</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 2 | Events</header>\n    <div class=\"container\" id=\"exercise\">\n      <div class=\"card text-center\">\n        <!-- 1) Butona tıklanıldığında bir alert kutusu çıkartınız -->\n        <div class=\"mb-10\">\n          <button>Alert Göster</button>\n        </div>\n        <!-- 2) \"keydown\" event'ini dinleyerek value değişkeni içerisinde yazdığınız veriyi saklayın. (ipucu: event.target.value size yazdığınız değeri verebilir.) -->\n        <div class=\"mb-10\">\n          <input type=\"text\" />\n          <p>{{ value }}</p>\n        </div>\n        <!-- 3) 2.Uygulamayı düzenleyerek eğer keydown ENTER ise yazdığınız verinin value değerine aktarılmasını sağlayın -->\n        <div>\n          <input type=\"text\" />\n          <p>{{ value }}</p>\n        </div>\n      </div>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/odev-2/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1/odevler/odev-3/app.js",
    "content": "new Vue({\n        el: '#exercise',\n        data: {\n            value: 0\n        }\n    });"
  },
  {
    "path": "ders-1/odevler/odev-3/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Reactivity</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 3 | Reactivity</header>\n    <div class=\"container\">\n      <div class=\"card\">\n        <div id=\"exercise\">\n          <!-- 1) value isimli property'nin değerine bakarak result için bir reactive kod yazınız. value 33'e eşit olmadığı durumlarda <p> elementinin içinde  \"Henüz Bitmedi!!\" 33 olduğunda ise \"Tamamlandı\" yazmalıdır.. Bunun için gördüğünüz reactivity türlerinden birini kullanınız. (Not : Butonlar yardımıyla value property'nin değerini değiştirebilirsiniz )) -->\n          <!-- 1) Write a reactive code for result by looking at the value of the property named value. If value is not equal to 33, inside the <p> element \"Not Finished Yet !!\" When it is 33, it should write \"Completed\". For this, use one of the reactivity types you see. (Note: You can change the value of value property with the help of buttons) -->\n          <div>\n            <p class=\"mb-5\">Şuanki Değer: {{ value }}</p>\n            <button @click=\"value+=5\">Add 5</button>\n            <button @click=\"value+=1\">Add 1</button>\n            <p class=\"mt-5\">{{ result }}</p>\n          </div>\n          <!-- 2) result property' değerini izleyerek 5 saniye sonra value'nun değerini sıfırlayınız. (ipucu: setTimeout(..., 5000) kullanılabilir.-->\n          <!-- 2) Reset the value of value information after 5 seconds by following the value of result property. (hint: setTimeout (..., 5000) can be used -->\n          <div class=\"mt-5\">\n            <input type=\"text\" />\n            <p class=\"mt-5\">{{ value }}</p>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1/odevler/odev-3/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/-boilerplate/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {};\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/-boilerplate/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>CSS ve Style Binding</title>\n    <link rel=\"stylesheet\" href=\"../style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container\"></div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/0-vue-vs-js/js/app.js",
    "content": "const todoText = document.querySelector(\"#todoText\");\nconst addBtn = document.querySelector(\"#addBtn\");\nconst todoList = document.querySelector(\"#todoList\");\n\naddBtn.addEventListener(\"click\", () => {\n  const listItem = document.createElement(\"li\");\n  listItem.textContent = todoText.value;\n  todoList.append(listItem);\n  todoText.value = \"\";\n});\n"
  },
  {
    "path": "ders-1-tekrar-dersi/0-vue-vs-js/js/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n  </head>\n  <body>\n    <input type=\"text\" id=\"todoText\" />\n    <button id=\"addBtn\">Ekle</button>\n    <ul id=\"todoList\"></ul>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/0-vue-vs-js/vue/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      todoText: null,\n      todoList: [],\n    };\n  },\n  methods: {\n    addTodo() {\n      this.todoList.push(this.todoText);\n      this.todoText = \"\";\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/0-vue-vs-js/vue/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vue3 Version</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <input type=\"text\" v-model=\"todoText\" />\n      <button @click=\"addTodo\">Ekle</button>\n      <ul>\n        <li v-for=\"item in todoList\" :key=\"item\">{{ item }}</li>\n      </ul>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/1-vue-instance-template-attribute-event/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      title: \"Bu Vue tarafından gelen bir bilgidir..\",\n      content: \"lorem ipsum dolor sit amet\",\n      hobbies: [1, 2, 3, 4, 5],\n      personal: {\n        name: \"Gokhan\",\n        lname: \"Kandemir\",\n        phone: \"xxxxx\",\n      },\n      details: `<a href=\"https://eduflow.kablosuzkedi.com\">Müfredat için tıklayınız</a>`,\n      url: \"https://eduflow.kablosuzkedi.com\",\n      coordX: 0,\n      coordY: 0,\n      fullName: \"Gokhan Kandemir\",\n    };\n  },\n  methods: {\n    updateTitle(title) {\n      this.title = title || \"Bu benim yeni mesajım...\";\n    },\n    updateCoords(e) {\n      //   console.log(\"e :>> \", e);\n      this.coordX = e.offsetX;\n      this.coordY = e.offsetY;\n      this.updateTitle(`${this.coordX},${this.coordY}`);\n    },\n    updateValue(customText, e) {\n      console.log(customText, e);\n      this.fullName = e.target.value;\n    },\n  },\n}).mount(\"#app\");\n\n// Vue2 Version..\n// new Vue({\n//     el : \"#app\",\n//     data : {}\n// })\n"
  },
  {
    "path": "ders-1-tekrar-dersi/1-vue-instance-template-attribute-event/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Template Instance</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <style>\n      .box {\n        width: 200px;\n        height: 200px;\n        border: 2px dashed #c5161c;\n        background-color: #ccc;\n        color: #fff;\n      }\n    </style>\n  </head>\n  <body>\n    <div id=\"app\">\n      <h1>Bu HTML üzerinden yazılan statik bir başlık..</h1>\n      <h1>{{ title }}</h1>\n      <p>{{ content }}</p>\n      <p>{{ hobbies[0] }}</p>\n      <p>{{ personal.name }} </p>\n      <div v-html=\"details\"></div>\n      <a v-bind:href=\"url\" v-bind:masa=\"masa\">URL Test</a>\n      <a :href=\"url\" :masa=\"masa\">URL Test</a>\n      <br /><br />\n      <button v-on:click=\"updateTitle('Bu da başlığı değiştirir..')\">\n        Tıkla ve Title Bilgisini Değiştir...\n      </button>\n      <button @click=\"updateTitle('Kardeşim bu benim parametremm..')\">\n        Tıkla ve Title Bilgisini Değiştir...\n      </button>\n      <br />\n      <br />\n      <div\n        class=\"box\"\n        @mousemove=\"updateCoords\"\n        @click=\"updateTitle('Div üzerinden gelen mesaj..')\"\n      >\n        {{ coordX }}, {{ coordY }}\n      </div>\n\n      <br /><br />\n\n      <input\n        type=\"text\"\n        :value=\"fullName\"\n        @input=\"fullName = $event.target.value\"\n      />\n      <input type=\"text\" v-model=\"fullName\" />\n      <!-- @input=\"updateValue('bu benim text', $event)\" -->\n      {{ fullName }}\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/2-vue-virtual-dom-life-cycle/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      counter: 0,\n      counter2: 0,\n      itemList: [],\n    };\n  },\n  methods: {\n    getResult() {\n      console.log(\"Counter1 Çalıştı..\");\n      return this.counter > 0\n        ? \"Pozitif\"\n        : this.counter < 0\n        ? \"Negatif\"\n        : \"Sıfır\";\n    },\n    getResult2() {\n      console.log(\"Counter2 Çalıştı..\");\n      return this.counter2 > 0\n        ? \"Pozitif\"\n        : this.counter2 < 0\n        ? \"Negatif\"\n        : \"Sıfır\";\n    },\n  },\n  beforeCreate() {\n    console.log(\"beforeCreate çalıştı\");\n  },\n  created() {\n    console.log(\"created çalıştı\");\n    setTimeout(() => {\n      this.itemList = [1, 2, 3, 4, 5, 6, 7];\n    }, 2000);\n  },\n  beforeMount() {\n    console.log(\"beforeMount çalıştı\");\n  },\n  mounted() {\n    console.log(\"mounted çalıştı\");\n  },\n  beforeUpdate() {\n    console.log(\"beforeUpdate çalıştı\");\n  },\n  updated() {\n    console.log(\"updated çalıştı\");\n  },\n  beforeUnmount() {\n    console.log(\"beforeUnmount çalıştı\");\n  },\n  unmounted() {\n    console.log(\"unmounted çalıştı\");\n  },\n});\n\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/2-vue-virtual-dom-life-cycle/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <style>\n      * {\n        margin: 0;\n        padding: 0;\n        font-family: \"Courier New\", Courier, monospace;\n        box-sizing: border-box;\n      }\n\n      body,\n      body #app {\n        display: flex;\n        align-items: flex-start;\n        justify-content: center;\n        padding-top: 20px;\n      }\n\n      .box {\n        border: 1px solid #ccc;\n        border-radius: 5px;\n        width: 100px;\n        padding: 10px;\n        display: flex;\n        flex-direction: column;\n        justify-content: center;\n        align-items: center;\n        margin-right: 10px;\n      }\n\n      .box h3 {\n        margin-bottom: 5px;\n      }\n\n      .box button:first-child {\n        margin-bottom: 15px;\n      }\n    </style>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"box\">\n        <h3>{{ counter }}</h3>\n        <button @click=\"counter++\">Artır</button>\n        <button @click=\"counter--\">Azalt</button>\n        <p>{{ getResult() }}</p>\n      </div>\n\n      <div class=\"box\">\n        <h3>{{ counter2 }}</h3>\n        <button @click=\"counter2++\">Artır</button>\n        <button @click=\"counter2--\">Azalt</button>\n        <p>{{ getResult2() }}</p>\n      </div>\n\n      <div class=\"box\">{{ itemList }}</div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/3-reactivity/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      counter: 0,\n      counter2: 0,\n      itemList: [],\n    };\n  },\n  methods: {\n    addItem() {\n      this.itemList.push(new Date().getTime());\n    },\n  },\n  computed: {\n    getResult() {\n      //   console.log(\"Counter1 Çalıştı..\");\n      return this.counter > 0\n        ? \"Pozitif\"\n        : this.counter < 0\n        ? \"Negatif\"\n        : \"Sıfır\";\n    },\n    getResult2() {\n      //   console.log(\"Counter2 Çalıştı..\");\n      return this.counter2 > 0\n        ? \"Pozitif\"\n        : this.counter2 < 0\n        ? \"Negatif\"\n        : \"Sıfır\";\n    },\n  },\n  watch: {\n    counter(newValue, oldValue) {\n      //   console.log(\"Counter Watcher Calisti..\", newValue, oldValue);\n    },\n    getResult(newValue, oldValue) {\n      console.log(`Watcher : Result ${oldValue} => ${newValue}`);\n    },\n    itemList: {\n      deep: true,\n      handler(itemList) {\n        console.log(\"itemList :>> \", itemList);\n      },\n    },\n    // itemList(itemList) {\n    //   console.log(\"itemList :>> \", itemList);\n    // },\n  },\n});\n\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/3-reactivity/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Reactivity</title>\n    <link rel=\"stylesheet\" href=\"../style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container-sm text-center\">\n        <h3 class=\"mb-2\">{{ counter }}</h3>\n        <button @click=\"counter++\" class=\"green\">+</button>\n        <button @click=\"counter--\" class=\"red\">-</button>\n        <p>{{ getResult }}</p>\n      </div>\n      <div class=\"container-sm text-center\">\n        <h3 class=\"mb-2\">{{ counter2 }}</h3>\n        <button @click=\"counter2++\" class=\"green\">+</button>\n        <button @click=\"counter2--\" class=\"red\">-</button>\n        <p>{{ getResult2 }}</p>\n      </div>\n\n      <div class=\"container-sm\">\n        <pre>{{ itemList }} </pre>\n        <button class=\"orange\" @click=\"addItem\">Add</button>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/4-css-style-binding/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      myClass: \"text-green bg-orange\",\n      counter: 0,\n    };\n  },\n  created() {\n    setInterval(() => {\n      this.counter++;\n    }, 1000);\n  },\n  computed: {\n    boxClass() {\n      return {\n        \"text-green\": this.counter === 0,\n        \"text-orange\": this.counter === 1,\n        \"text-default\": this.counter === 2,\n        \"text-blue\": this.counter === 3,\n        \"text-red\": this.counter === 4,\n      };\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/4-css-style-binding/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>CSS ve Style Binding</title>\n    <link rel=\"stylesheet\" href=\"../style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container\">\n        <h3 :class=\"boxClass\" class=\"mb-2\">CSS ve Style Binding</h3>\n        <p :style=\"{ color : '#c5161c', backgroundColor : 'black'}\">\n          Lorem ipsum dolor sit amet consectetur, adipisicing elit. Excepturi,\n          autem quae. Similique molestias, provident autem officia ex rem nemo\n          non voluptates corporis voluptatibus aut animi dicta tempore. Eos, cum\n          recusandae!\n        </p>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/5-conditions/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      showState: false,\n      counter: 0,\n    };\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/5-conditions/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Koşullar</title>\n    <link rel=\"stylesheet\" href=\"../style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container text-center\">\n        <h3 class=\"text-green\" v-if=\"showState\">Gösterilecek başlık...</h3>\n        <div class=\"text-red\" v-else\">Gizlenen başlık...</div>\n        <button @click=\"showState = !showState\">Göster / Gizle</button>\n      </div>\n\n      <div class=\"container text-center\">\n        <h3 class=\"text-green\" v-show=\"showState\">Gösterilecek başlık...</h3>\n        <p class=\"text-red\" v-show=\"!showState\">Gizlenen başlık...</p>\n        <button @click=\"showState = !showState\">Göster / Gizle</button>\n      </div>\n\n      <div class=\"container-sm text-center\">\n\n        <h3 class=\"text-red\" v-if=\"counter < 0\">Negatif.</h3>\n        <h3 class=\"text-green\" v-else-if=\"counter > 0\">Pozitif</h3>\n        <h3 class=\"text-default\" v-else>Sıfır</h3>\n\n        <button class=\"green mr-2\" @click=\"counter++\">Artır</button>\n        <button class=\"red\" @click=\"counter--\">Azalt</button>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/6-loops/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      memberList: [\n        { id: 1, name: \"Cihan Özen\" },\n        { id: 2, name: \"Ramazan Sancar\" },\n        { id: 3, name: \"Enes Taha Sarı\" },\n        { id: 4, name: \"Gökhan Kandemir\" },\n        { id: 5, name: \"Defne Kandemir\" },\n        { id: 6, name: \"Beek X (Berk)\" },\n        { id: 7, name: \"Asy\" },\n        { id: 8, name: \"Onur Şen\" },\n        { id: 9, name: \"Emirhan Çifci\" },\n        { id: 10, name: \"Tamer Karalürt\" },\n      ],\n    };\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/6-loops/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Döngüler</title>\n    <link rel=\"stylesheet\" href=\"../style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container\">\n        <ul>\n          <li v-for=\"member in memberList\" :key=\"member.id\">\n            {{ member.name }}\n          </li>\n        </ul>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/class-list-app/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      styles: {\n        backgroundColor: false,\n        border: false,\n        borderRadius: false,\n        color: false,\n        fontBold: false,\n        fontItalic: false,\n      },\n    };\n  },\n  computed: {\n    textAreaClass() {\n      return {\n        backgroundColor: this.styles.backgroundColor,\n        border: this.styles.border,\n        borderRadius: this.styles.borderRadius,\n        color: this.styles.color,\n        fontBold: this.styles.fontBold,\n        fontItalic: this.styles.fontItalic,\n      };\n    },\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/class-list-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Class List App</title>\n    <link rel=\"stylesheet\" href=\"./style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n\n    <style>\n      .backgroundColor {\n        background-color: #c5161c;\n      }\n      .border {\n        border: 2px solid #c5161c;\n      }\n      .borderRadius {\n        border-radius: 5px;\n      }\n      .color {\n        color: #c5161c;\n      }\n      .fontBold {\n        font-weight: bold;\n      }\n      .fontItalic {\n        font-style: italic;\n      }\n    </style>\n  </head>\n  <body>\n    <header>Class List App</header>\n    <div id=\"app\" class=\"container\">\n      <div class=\"class--list--app\">\n        <div class=\"card\">\n          <ul class=\"class-list\">\n            <li>\n              <label>\n                <input\n                  v-model=\"styles.backgroundColor\"\n                  class=\"mr-5\"\n                  type=\"checkbox\"\n                />\n                <span>Background Color</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input v-model=\"styles.border\" class=\"mr-5\" type=\"checkbox\" />\n                <span>Border</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input\n                  v-model=\"styles.borderRadius\"\n                  class=\"mr-5\"\n                  type=\"checkbox\"\n                />\n                <span>Border Radius</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input v-model=\"styles.color\" class=\"mr-5\" type=\"checkbox\" />\n                <span>Color</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input v-model=\"styles.fontBold\" class=\"mr-5\" type=\"checkbox\" />\n                <span>Font Bold</span>\n              </label>\n            </li>\n            <li>\n              <label>\n                <input\n                  v-model=\"styles.fontItalic\"\n                  class=\"mr-5\"\n                  type=\"checkbox\"\n                />\n                <span>Font Italic</span>\n              </label>\n            </li>\n          </ul>\n\n          <textarea :class=\"textAreaClass\" rows=\"5\"></textarea>\n        </div>\n      </div>\n\n      <pre>\n        {{ styles }}\n      </pre>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/class-list-app/readme.txt",
    "content": "ÖDEV\nYukarıda bulunan checkbox elementlerine tıklanıldığında, checkbox'ın sahip olduğu Class bilgisini textarea elementine verecek Vue uygulamasını yazınız.\nWhen the above checkbox elements are clicked, write the Vue application that will give the Class information of the checkbox to the textarea element.\n\nİPUCU\nBackground Color, Border, Color, Font Bold, Border Radius, Font Italic için birer CSS Class'ı oluşturarak, her bir checkbox için v-model ile kontrol yapabilirsiniz.\nBy creating a CSS Class for Background Color, Border, Color, Font Bold, Border Radius, Font Italic, you can control each checkbox with a v-model."
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/class-list-app/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/comment-like-dislike-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Comment Like/Dislike App</title>\n    <link rel=\"stylesheet\" href=\"./style.css\" />\n  </head>\n  <body>\n    <header>Comment Like/Dislike App</header>\n    <div class=\"container\">\n      <div class=\"comment--like--dislike--app\">\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n\n        <div class=\"card mb-10 comment--item\">\n          <p>\n            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sint deserunt, tempore accusamus iusto nobis dolore ratione itaque perferendis\n            delectus? Nostrum corporis, quod voluptates quis consequuntur eveniet beatae dolor aperiam ad.\n          </p>\n          <div class=\"action--button--container text-right mt-10\">\n            <button class=\"btn-sm btn-success\">Beğendim (10)</button>\n            <button class=\"btn-sm btn-danger\">Beğenmedim (5)</button>\n          </div>\n        </div>\n      </div>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/comment-like-dislike-app/readme.txt",
    "content": "ÖDEV\n1 - ) data üzerinde bulunan bir comments isimli bir Array üzerinden \".comment--item\" elementini v-for ile döndürünüz.\n1 - ) iterate the \".comment - item\" element with v-for over an Array named comments on the data.\n2 - ) Kullanıcı Beğendim / Beğenmedim butonuna tıkladığında, üzerinde yazan sayaçları arttırınız. Yani Beğendim (5) Beğenmedim (10) gibi.\n2 - ) When the user clicks on the Like / Dislike button, increase the counters written on it. So I Like (5) Like I Don't Like (10).\n\nİPUCU:\nBeğeni sayılarını comments içerisinde tutabilirsiniz.\nYou can keep the number of likes in the comments.\n\nNOT:\nBeğeni sayılarının sürekli artmasının bir önemi yoktur.\nIt doesn't matter that the number of likes is constantly increasing."
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/comment-like-dislike-app/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n  box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n  -ms-flex-pack: end;\n  justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n  -ms-flex-align: end;\n  align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: end;\n  -ms-flex-align: end;\n  align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n  appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n  flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [4];\n  grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: flex-start;\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n  align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n  align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [6];\n  grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr) [3];\n  grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: start;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-1/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 1 | Template üzerine Veri Yazdırmak</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 1 | Template Üzerine Veri Yazdırmak</header>\n\n    <div id=\"exercise\" class=\"container\">\n      <div class=\"card\">\n        <!-- 1) Interpolation yani {{}} Syntax'ını kullanarak <p> elementinin içeriğini Name ve Age verileriyle doldurun-->\n        <p>VueJS Muazzam bir Framework - {{ name }} ({{ age }})</p>\n\n        <!-- 2) Yaşınızı 5 ile çarpıp <p> içerisinde yazdırınız -->\n        <p class=\"mt-10\">{{ age * 5 }}</p>\n\n        <!-- 3) Fonksiyon çağırarak 0 ile 1 arasında bir sayı üretip <p> içerisinde yazdırınız (Math.random()) -->\n        <!-- <p class=\"mt-10\">{{ showText() }}</p> -->\n        <p class=\"mt-10\">{{ randomNumber() }}</p>\n\n        <!-- 4) Google üzerinden bulacağınız herhangi bir fotoğrafı <img> elementinde gösterme işlemini yapınız. Bunu yaparken \"src\" attribute' una bind etmeyi unutmayınız -->\n        <img v-bind:src=\"image_url\" :alt=\"seo_keyword\" />\n\n        <!-- 5) Name değişkeninin değerinin <input /> içine yazdığınız değer ile anlık olarak değiştirilmesini sağlayınız. (\"value\" attribute kullanarak) -->\n        <div class=\"mb-10\">\n          <!-- <input type=\"text\" :value=\"name\" @input=\"valueChanged\" /> -->\n          <input\n            type=\"text\"\n            :value=\"name\"\n            @input=\"name = $event.target.value\"\n          />\n        </div>\n      </div>\n    </div>\n\n    <script>\n      const app = Vue.createApp({\n        data() {\n          return {\n            name: \"Defne\",\n            age: 2.5,\n            image_url:\n              \"https://lh3.googleusercontent.com/proxy/sIuVvQueNt9Xr99WTOG2zFiKBaiXvnXli2A4-g5A2sgdpAtDMsVYWCQ1yMndMGrxyz4PoK9lgMkk325HM1Mx2-dX66Q7enxgxBZeILYWeKT3MUQkt8XzqLv2X-NfYGFOJi1bAEBXNVmjdAb_Sw\",\n            seo_keyword: \"vue-js-eğitim-kablosuzkedi\",\n          };\n        },\n        methods: {\n          showText() {\n            return \"Kodluyoruz Ailesine Selam Olsun!\";\n          },\n          randomNumber() {\n            // setTimeout(() => {\n            //   this.name = \"Gokhan\";\n            // }, 5000);\n            return Math.random();\n          },\n          valueChanged(event) {\n            console.log(\"Event =>\", event.target.value);\n            this.name = event.target.value;\n          },\n        },\n        computed: {},\n      });\n\n      app.mount(\"#exercise\");\n    </script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-1/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-2/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      value: \"\",\n      value2: \"\",\n    };\n  },\n  methods: {\n    showMeAlert() {\n      alert(\"Bu bir alert..\");\n    },\n    keyDownEvent(e) {\n      console.log(\"Event\", e);\n      this.value = e.target.value;\n    },\n    keyDownEvent2(e) {\n      console.log(\"Event\", e);\n      this.value2 = e.target.value;\n    },\n  },\n});\napp.mount(\"#exercise\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-2/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 2 | Event</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 2 | Events</header>\n    <div class=\"container\" id=\"exercise\">\n      <div class=\"card text-center\">\n        <!-- 1) Butona tıklanıldığında bir alert() kutusu çıkartınız -->\n        <div class=\"mb-10\">\n          <button @click=\"showMeAlert\">Alert Göster</button>\n        </div>\n\n        <!-- 2) \"keydown\" event'ini dinleyerek value değişkeni içerisinde yazdığınız veriyi saklayın. (ipucu: event.target.value size yazdığınız değeri verebilir.) -->\n        <div class=\"mb-10\">\n          <input type=\"text\" @keyup=\"keyDownEvent\" />\n          <p>{{ value }}</p>\n        </div>\n        <!-- 3) 2.Uygulamayı düzenleyerek eğer keydown ENTER ise yazdığınız verinin value değerine aktarılmasını sağlayın -->\n        <!-- attribute => v-bind\n        event => v-on -->\n\n        <div>\n          <input type=\"text\" @keydown.enter=\"keyDownEvent2\" />\n          <p>{{ value2 }}</p>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-2/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-3/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      value: 0,\n      result2: null,\n    };\n  },\n  computed: {\n    result() {\n      return this.value === 33 ? \"Tamamlandı\" : \"Henüz tamamlanmadı..\";\n    },\n  },\n  watch: {\n    value(v) {\n      if (v === 33) {\n        this.result2 = \"Tamamlandı\";\n      } else {\n        this.result2 = \"Henüz tamamlanmadı\";\n      }\n    },\n    result() {\n      setTimeout(() => {\n        this.value = 0;\n      }, 2000);\n    },\n  },\n});\napp.mount(\"#exercise\");\n\n// Vue 2\n// new Vue({\n//   el: \"#exercise\",\n//   data: {\n//     value: 0,\n//   },\n// });\n\n// Vue 3\n// const app = Vue.createApp({\n//   data() {\n//     return {};\n//   },\n// })\n// app.mount(\"#exercise\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-3/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Reactivity</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 3 | Reactivity</header>\n    <div class=\"container\">\n      <div class=\"card\">\n        <div id=\"exercise\">\n          <!-- 1) value isimli property'nin değerine bakarak result için bir reactive kod yazınız. value 33'e eşit olmadığı durumlarda <p> elementinin içinde  \"Henüz Bitmedi!!\" 33 olduğunda ise \"Tamamlandı\" yazmalıdır.. Bunun için gördüğünüz reactivity türlerinden birini kullanınız. (Not : Butonlar yardımıyla value property'nin değerini değiştirebilirsiniz )) -->\n          <!-- 1) Write a reactive code for result by looking at the value of the property named value. If value is not equal to 33, inside the <p> element \"Not Finished Yet !!\" When it is 33, it should write \"Completed\". For this, use one of the reactivity types you see. (Note: You can change the value of value property with the help of buttons) -->\n          <div>\n            <p class=\"mb-5\">Şuanki Değer: {{ value }}</p>\n            <button @click=\"value+=5\">Add 5</button>\n            <button @click=\"value+=1\">Add 1</button>\n            <p class=\"mt-5\">{{ result }}</p>\n            <p class=\"mt-5\">{{ result2 }}</p>\n          </div>\n          <!-- 2) result property' değerini izleyerek 5 saniye sonra value'nun değerini sıfırlayınız. (ipucu: setTimeout(..., 5000) kullanılabilir.-->\n          <!-- 2) Reset the value of value information after 5 seconds by following the value of result property. (hint: setTimeout (..., 5000) can be used -->\n          <div class=\"mt-5\">\n            <input type=\"text\" />\n            <p class=\"mt-5\">{{ value }}</p>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/cozum-3/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/css-class-app/app.js",
    "content": "Vue.createApp({\n  data() {\n    return {\n      activeColor: \"\",\n      color_palette: [\n        {\n          id: \"red\",\n          css_class: \"red-box\",\n        },\n        {\n          id: \"green\",\n          css_class: \"green-box\",\n        },\n        {\n          id: \"blue\",\n          css_class: \"blue-box\",\n        },\n      ],\n    };\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/css-class-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>CSS Class App</title>\n    <link rel=\"stylesheet\" href=\"./style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n\n    <style>\n      .red-box {\n        background-color: brown !important;\n      }\n      .green-box {\n        background-color: green !important;\n      }\n      .blue-box {\n        background-color: blue !important;\n      }\n    </style>\n  </head>\n  <body>\n    <header>CSS Class App</header>\n    <div id=\"app\" class=\"container css--class--app\">\n      <div class=\"card text-center\">\n        <ul class=\"css--palette text-center\">\n          <li :class=\"{ [color.css_class] : true}\" v-for=\"color in color_palette\" :key=\"color.id\" @click=\"activeColor = color.css_class\"></li>\n        </ul>\n        <div class=\"result-box\" :class=\"{ [activeColor] : true }\"></div>\n      </div>\n    </div>\n\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/css-class-app/readme.txt",
    "content": "ÖDEV:\nYukarıda bulunan renk paletlerine tıklanıldığında .result-box elementinin rengini tıklanılan palete göre değiştirecek Vue uygulamasını yazınız.\nWhen clicking on the color palettes above, write the Vue application that will change the color of the .result-box element according to the clicked palette.\n\nİPUCU:\ndata içerisinde yer alan color_palette isimli Array türündeki bir property üzerinden, .css--palette elementinin içinde bulunan li elementlerini v-for ile döndürün.\n<li> elementine click eventi yardımıyla .result-box isimli elementin alacağı rengi class binding ile yapabilirsiniz.\n\"red-box\", \"green-box\", \"blue-box\" isimli css class'larını tanımlamanız gerekmektedir.\n\niterate the li elements in the .css - palette element with v-for over a property of type Array named color_palette in the data.\nWith the help of the click event on the <li> element, you can make the color of the element named .result-box with the class binding.\nYou should define css classes named \"red-box\", \"green-box\", \"blue-box\"\n\nSample Data:\ncolor_palette = [\n    {\n        id: \"red\",\n        css_class: \"red-box\",\n    },\n    {\n        id: \"green\",\n        css_class: \"green-box\",\n    },\n    {\n        id: \"blue\",\n        css_class: \"blue-box\",\n    }\n];"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/css-class-app/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-1/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      name: \"kablosuzkedi\",\n      age: 33,\n      imageUrl:\n        \"http://kablosuzkedi.com/wp-content/uploads/2016/11/Ekran-Resmi-2016-11-12-01.39.36.png\",\n    };\n  },\n  methods: {\n    getRandom() {\n      return Math.round(Math.random());\n    },\n  },\n}).mount(\"#exercise\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-1/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 1 | Template üzerine Veri Yazdırmak</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 1 | Template Üzerine Veri Yazdırmak</header>\n\n    <div id=\"exercise\" class=\"container\">\n      <div class=\"card\">\n        <!-- 1) Interpolation yani {{}} Syntax'ını kullanarak <p> elementinin içeriğini Name ve Age verileriyle doldurun-->\n        <p>VueJS Muazzam bir Framework - {{ name }} ({{ age }})</p>\n        <!-- 2) Yaşınızı 5 ile çarpıp <p> içerisinde yazdırınız -->\n        <p class=\"mt-10\">{{ age * 5 }}</p>\n\n        <!-- 3) Fonksiyon çağırarak 0 ile 1 arasında bir sayı üretip <p> içerisinde yazdırınız (Math.random()) -->\n        <p class=\"mt-10\">{{ getRandom() }}</p>\n\n        <!-- 4) Google üzerinden bulacağınız herhangi bir fotoğrafı <img> elementinde gösterme işlemini yapınızı. Bunu yaparken \"src\" attribute' una bind etmeyi unutmayınız -->\n        <img width=\"300\" :src=\"imageUrl\" alt=\"\" />\n\n        <!-- 5) Name değişkeninin değerinin <input /> içine yazdığınız değer ile anlık olarak değiştirilmesini sağlayınız. (\"value\" attribute kullanarak) -->\n        <div class=\"mt-10\">\n          <input\n            type=\"text\"\n            :value=\"name\"\n            @input=\"name = $event.target.value\"\n          />\n        </div>\n      </div>\n    </div>\n\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-1/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-2/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {\n      value: \"\",\n    };\n  },\n  methods: {\n    showAlert() {\n      alert();\n    },\n    valueUpdated(e) {\n      console.log(e.target.value);\n      this.value = e.target.value;\n    },\n  },\n});\napp.mount(\"#exercise\");\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-2/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Ödev 2 | Event</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 2 | Events</header>\n    <div class=\"container\" id=\"exercise\">\n      <div class=\"card text-center\">\n        <!-- 1) Butona tıklanıldığında bir alert kutusu çıkartınız -->\n        <div class=\"mb-10\">\n          <button @click=\"showAlert\">Alert Göster</button>\n        </div>\n        <!-- 2) \"keydown\" event'ini dinleyerek value değişkeni içerisinde yazdığınız veriyi saklayın. (ipucu: event.target.value size yazdığınız değeri verebilir.) -->\n        <div class=\"mb-10\">\n          <!-- <input @keyup=\"valueUpdated\" type=\"text\" /> -->\n          <input @keyup=\"value = $event.target.value\" type=\"text\" />\n          <p>{{ value }}</p>\n        </div>\n        <!-- 3) 2.Uygulamayı düzenleyerek eğer keydown ENTER ise yazdığınız verinin value değerine aktarılmasını sağlayın -->\n        <div>\n          <input @keydown.enter=\"value = $event.target.value\" type=\"text\" />\n          <p>{{ value }}</p>\n        </div>\n      </div>\n    </div>\n\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-2/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-3/app.js",
    "content": "new Vue({\n        el: '#exercise',\n        data: {\n            value: 0\n        }\n    });"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-3/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\" />\n    <title>Reactivity</title>\n    <script src=\"https://unpkg.com/vue@next\"></script>\n    <link rel=\"stylesheet\" href=\"style.css\" />\n  </head>\n  <body>\n    <header>Ödev 3 | Reactivity</header>\n    <div class=\"container\">\n      <div class=\"card\">\n        <div id=\"exercise\">\n          <!-- 1) value isimli property'nin değerine bakarak result için bir reactive kod yazınız. value 33'e eşit olmadığı durumlarda <p> elementinin içinde  \"Henüz Bitmedi!!\" 33 olduğunda ise \"Tamamlandı\" yazmalıdır.. Bunun için gördüğünüz reactivity türlerinden birini kullanınız. (Not : Butonlar yardımıyla value property'nin değerini değiştirebilirsiniz )) -->\n          <!-- 1) Write a reactive code for result by looking at the value of the property named value. If value is not equal to 33, inside the <p> element \"Not Finished Yet !!\" When it is 33, it should write \"Completed\". For this, use one of the reactivity types you see. (Note: You can change the value of value property with the help of buttons) -->\n          <div>\n            <p class=\"mb-5\">Şuanki Değer: {{ value }}</p>\n            <button @click=\"value+=5\">Add 5</button>\n            <button @click=\"value+=1\">Add 1</button>\n            <p class=\"mt-5\">{{ result }}</p>\n          </div>\n          <!-- 2) result property' değerini izleyerek 5 saniye sonra value'nun değerini sıfırlayınız. (ipucu: setTimeout(..., 5000) kullanılabilir.-->\n          <!-- 2) Reset the value of value information after 5 seconds by following the value of result property. (hint: setTimeout (..., 5000) can be used -->\n          <div class=\"mt-5\">\n            <input type=\"text\" />\n            <p class=\"mt-5\">{{ value }}</p>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-1-tekrar-dersi/odevler/odev-3/style.css",
    "content": "* {\n  margin: 0;\n  padding: 0;\n  font-family: Arial, Helvetica, sans-serif;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n}\n\n.bg-success {\n  background-color: #6dc454 !important;\n  color: #fff;\n}\n\n.bg-danger {\n  background-color: #c64b4b !important;\n  color: #fff;\n}\n\n.bg-primary {\n  background-color: #316bc2 !important;\n  color: #fff;\n}\n\n.bg-dark {\n  background-color: #333 !important;\n  color: #fff;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-info {\n  color: #05a0f4;\n}\n\n.text-success {\n  color: #6dc454;\n}\n\n.text-danger {\n  color: #c64b4b;\n}\n\n.text-primary {\n  color: #316bc2;\n}\n\n.text-dark {\n  color: #333;\n}\n\n.text-muted {\n  color: #ccc;\n}\n\n.font-weight-bold {\n  font-weight: bold;\n}\n\n.font-italic {\n  font-style: italic;\n}\n\n.mt-20 {\n  margin-top: 20px;\n}\n\n.mb-20 {\n  margin-bottom: 20px;\n}\n\n.ml-20 {\n  margin-left: 20px;\n}\n\n.mr-20 {\n  margin-right: 20px;\n}\n\n.mt-10 {\n  margin-top: 10px;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.ml-10 {\n  margin-left: 10px;\n}\n\n.mr-10 {\n  margin-right: 10px;\n}\n\n.mt-5 {\n  margin-top: 5px;\n}\n\n.mb-5 {\n  margin-bottom: 5px;\n}\n\n.ml-5 {\n  margin-left: 5px;\n}\n\n.mr-5 {\n  margin-right: 5px;\n}\n\n.pt-10 {\n  padding-top: 10px;\n}\n\n.pb-10 {\n  padding-bottom: 10px;\n}\n\n.pl-10 {\n  padding-left: 10px;\n}\n\n.pr-10 {\n  padding-right: 10px;\n}\n\n.pt-5 {\n  padding-top: 5px;\n}\n\n.pb-5 {\n  padding-bottom: 5px;\n}\n\n.pl-5 {\n  padding-left: 5px;\n}\n\n.pr-5 {\n  padding-right: 5px;\n}\n\n.pt-20 {\n  padding-top: 20px;\n}\n\n.pb-20 {\n  padding-bottom: 20px;\n}\n\n.pl-20 {\n  padding-left: 20px;\n}\n\n.pr-20 {\n  padding-right: 20px;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.w-10 {\n  width: 10% !important;\n  max-width: 10% !important;\n  min-width: 10% !important;\n}\n\n.w-20 {\n  width: 20% !important;\n  max-width: 20% !important;\n  min-width: 20% !important;\n}\n\n.w-30 {\n  width: 30% !important;\n  max-width: 30% !important;\n  min-width: 30% !important;\n}\n\n.w-40 {\n  width: 40% !important;\n  max-width: 40% !important;\n  min-width: 40% !important;\n}\n\n.w-50 {\n  width: 50% !important;\n  max-width: 50% !important;\n  min-width: 50% !important;\n}\n\n.w-60 {\n  width: 60% !important;\n  max-width: 60% !important;\n  min-width: 60% !important;\n}\n\n.w-70 {\n  width: 70% !important;\n  max-width: 70% !important;\n  min-width: 70% !important;\n}\n\n.w-80 {\n  width: 80% !important;\n  max-width: 80% !important;\n  min-width: 80% !important;\n}\n\n.w-90 {\n  width: 90% !important;\n  max-width: 90% !important;\n  min-width: 90% !important;\n}\n\n.w-100 {\n  width: 100% !important;\n  max-width: 100% !important;\n  min-width: 100% !important;\n}\n\n.card {\n  background-color: #efefef;\n  min-width: 500px;\n  padding: 10px;\n  border-radius: 3px;\n  border-bottom: 1px solid #ccc;\n}\n\n.card-light {\n  background-color: #fffafa;\n  border: 1px solid #eee;\n  border-bottom: 1px solid #ccc;\n}\n\nbutton {\n  padding: 10px;\n  font-size: 15px;\n  outline: none;\n  border: none;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  background-color: #dad0d0;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background-color: #f0eded;\n}\n\nbutton:active {\n  background-color: white;\n}\n\nbutton.btn-primary {\n  background-color: #316bc2;\n  color: #fff;\n}\n\nbutton.btn-primary:hover {\n  background-color: #5386d3;\n  color: #fff;\n}\n\nbutton.btn-primary:active {\n  background-color: #7ba3de;\n  color: #fff;\n}\n\nbutton.btn-warning {\n  background-color: #f5e20c;\n  color: #000;\n}\n\nbutton.btn-warning:hover {\n  background-color: #f9ee6e;\n  color: #000;\n}\n\nbutton.btn-warning:active {\n  background-color: #fbf49f;\n  color: #000;\n}\n\nbutton.btn-info {\n  background-color: #05a0f4;\n  color: #fff;\n}\n\nbutton.btn-info:hover {\n  background-color: #31b4fb;\n  color: #fff;\n}\n\nbutton.btn-info:active {\n  background-color: #63c6fc;\n  color: #fff;\n}\n\nbutton.btn-success {\n  background-color: #6dc454;\n  color: #fff;\n}\n\nbutton.btn-success:hover {\n  background-color: #8dd17a;\n  color: #fff;\n}\n\nbutton.btn-success:active {\n  background-color: #aedea0;\n  color: #fff;\n}\n\nbutton.btn-danger {\n  background-color: #c64b4b;\n  color: #fff;\n}\n\nbutton.btn-danger:hover {\n  background-color: #d27272;\n  color: #fff;\n}\n\nbutton.btn-danger:active {\n  background-color: #df9898;\n  color: #fff;\n}\n\n.btn-sm {\n  padding: 7px;\n  font-size: 12px;\n}\n\n.form-group {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  margin-bottom: 10px;\n}\n\np {\n  font-size: 14px;\n}\n\nlabel {\n  font-size: 15px;\n  display: inline-block;\n  margin-bottom: 5px;\n}\n\nselect {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ninput {\n  outline: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\ntextarea {\n  outline: none;\n  resize: none;\n  padding: 5px 10px;\n  border: 1px solid #324354;\n}\n\nheader {\n  height: 50px;\n  margin-bottom: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  background-color: #324354;\n  color: #fff;\n  font-size: 20px;\n  border-bottom: 2px solid #222b34;\n}\n\n.container {\n  width: 100%;\n  height: auto;\n  padding: 10px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n}\n\nul.list {\n  margin-top: 10px;\n  list-style-type: none;\n}\n\nul.list li {\n  padding: 5px 10px;\n  background-color: #efefef;\n  margin-bottom: 5px;\n  border: 1px solid #ccc;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .game--area {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n}\n\n.pokemon--wars--app--container .game--area h2 {\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  width: 100%;\n  padding: 10px;\n  margin-bottom: 20px;\n}\n\n.pokemon--wars--app--container .selection--container img {\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n  margin-right: 30px;\n}\n\n.pokemon--wars--app--container .selection--container img:last-child {\n  margin-right: none;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.pikachu:hover {\n  border-radius: 10px;\n  background-color: #f8c953c8;\n  -webkit-transition: all 0.5s;\n  transition: all 0.5s;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur.selected-pokemon {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.bulbasaur:hover {\n  border-radius: 10px;\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander.selected-pokemon {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.charmander:hover {\n  border-radius: 10px;\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle.selected-pokemon {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .selection--container img.squirtle:hover {\n  border-radius: 10px;\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .fight--area {\n  width: 750px;\n}\n\n.pokemon--wars--app--container .health--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.pokemon--wars--app--container .name--health--bar {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.pokemon--wars--app--container .name--health--bar img {\n  width: 70px;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .name--health--bar img.pikachu {\n  background-color: #f8c953c8;\n  border: 2px solid #f8c953;\n}\n\n.pokemon--wars--app--container .name--health--bar img.bulbasaur {\n  background-color: #6ddba8c8;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container .name--health--bar img.charmander {\n  background-color: #f7973fc8;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container .name--health--bar img.squirtle {\n  background-color: #78eeffc8;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container .player--name {\n  font-size: 18px;\n  font-weight: bold;\n  color: #324354;\n}\n\n.pokemon--wars--app--container .vs--container {\n  font-size: 35px;\n  color: #f7983f;\n  font-weight: bold;\n  font-style: italic;\n}\n\n.pokemon--wars--app--container progress {\n  height: 50px;\n  width: 280px;\n}\n\n.pokemon--wars--app--container progress[value] {\n  -webkit-appearance: none;\n  -moz-appearance: none;\n       appearance: none;\n  width: 250px;\n  height: 35px;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-bar {\n  background-color: #f7983f27;\n  border: 2px solid #f7983f;\n}\n\n.pokemon--wars--app--container progress.pikachu[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-bar {\n  background-color: #6ddba827;\n  border: 2px solid #6ddba8;\n}\n\n.pokemon--wars--app--container progress.bulbasaur[value]::-webkit-progress-value {\n  background-color: #6ddba8c8;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-bar {\n  background-color: #f7973f27;\n  border: 2px solid #f7973f;\n}\n\n.pokemon--wars--app--container progress.charmander[value]::-webkit-progress-value {\n  background-color: #f7973fc8;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-bar {\n  background-color: #78eeff27;\n  border: 2px solid #78eeff;\n}\n\n.pokemon--wars--app--container progress.squirtle[value]::-webkit-progress-value {\n  background-color: #78eeffc8;\n}\n\n.pokemon--wars--app--container .attack--button--container {\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container {\n  width: 400px;\n  margin: 0 auto;\n  margin-top: 50px;\n}\n\n.pokemon--wars--app--container .logger--container img {\n  width: 40px;\n}\n\n.pokemon--wars--app--container .logger--container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  border-radius: 5px;\n}\n\n.pokemon--wars--app--container .game--finished--container {\n  margin-top: 100px;\n  font-size: 50px;\n}\n\n.css--class--app .css--palette {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.css--class--app .css--palette li {\n  width: 50px;\n  height: 50px;\n  background-color: #ccc;\n  border-radius: 50%;\n  margin-left: 5px;\n  border: 1px solid #bbb;\n}\n\n.css--class--app .result-box {\n  width: 100%;\n  height: 100px;\n  background-color: #18bf71;\n  margin-top: 15px;\n  border-radius: 5px;\n  border-bottom: 1px solid #ccc;\n  -webkit-transition: background-color 0.5s;\n  transition: background-color 0.5s;\n}\n\n.bookmark--app--container {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n  grid-gap: 10px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bookmark--app--container .bookmark-item {\n  width: 400px;\n  background-color: #efefef;\n  border-bottom: 1px solid #ccc;\n  border-radius: 5px;\n  padding: 10px;\n}\n\n.bookmark--app--container .bookmark-item .header {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.course--planner-app--container .user--action--container .form-group {\n  width: 80%;\n  margin-right: 5px;\n}\n\n.bet--coupon--app .competition-list {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n}\n\n.bet--coupon--app .my-coupon {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  min-width: 400px !important;\n}\n\n.bet--coupon--app .my-coupon .card--header {\n  background-color: #05a0f4 !important;\n}\n\n.bet--coupon--app .card--header {\n  background-color: #324354 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.bet--coupon--app .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.bet--coupon--app .competition-item {\n  margin-bottom: 5px;\n  padding: 10px 0;\n  border-bottom: 1px solid #efefef;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.bet--coupon--app .competition-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .competition-item .info--container {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n}\n\n.bet--coupon--app .competition-item .rates {\n  width: 150px;\n  text-align: right;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.bet--coupon--app .coupon-item {\n  border-bottom: 1px solid #efefef;\n  margin-bottom: 5px;\n  padding: 10px 0;\n}\n\n.bet--coupon--app .coupon-item:last-child {\n  border-bottom: none;\n}\n\n.bet--coupon--app .coupon--total--container {\n  max-width: 300px;\n}\n\n.bet--coupon--app .coupon--total--container .my-coupon {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container {\n  min-width: 300px !important;\n}\n\n.bet--coupon--app .coupon--total--container .multiply--container button:not(:last-child) {\n  margin-right: 5px;\n  margin-bottom: 5px;\n}\n\n.bet--coupon--app .multiply--buttons {\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\n.contact--card--app {\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[4];\n      grid-template-columns: repeat(4, 1fr);\n  grid-gap: 20px;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.contact--card--app .contact-item {\n  width: 180px;\n  min-height: 282px;\n  border-radius: 5px;\n  background-color: #fff !important;\n}\n\n.contact--card--app .contact-item .invitation--header {\n  width: 180px;\n  height: 62px;\n  background: url(\"https://static-exp1.licdn.com/sc/h/cpemy7gsm8bzfb5nnbbnswfdm\");\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n}\n\n.contact--card--app .contact-item .contact--info--container {\n  padding: 10px;\n  margin-top: 45px;\n}\n\n.contact--card--app .contact-item .contact--info--container p {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .contact--info--container a {\n  font-size: 15px !important;\n}\n\n.contact--card--app .contact-item .action--button--container {\n  margin-top: 10px;\n}\n\n.contact--card--app .contact-item .contact--image {\n  border-radius: 50%;\n  width: 100px;\n  height: 100px;\n}\n\n.comment--like--dislike--app {\n  width: 750px;\n}\n\n.chat--app--container .card {\n  padding: 0;\n  border-radius: 5px;\n  border: 1px solid #efefef;\n  border-bottom: 1px solid #ccc;\n  max-width: 400px !important;\n}\n\n.chat--app--container .card .card--header {\n  background-color: #316bc2 !important;\n  color: #fff;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body {\n  background-color: #fff !important;\n  padding: 10px;\n}\n\n.chat--app--container .card .card--body .active-user-item {\n  margin-bottom: 20px;\n}\n\n.chat--app--container .card .card--body .active-user-item:last-child {\n  margin-bottom: 0;\n}\n\n.chat--app--container .card .card--body .active-user-item .badge {\n  background-color: #efefef;\n  color: #333;\n  text-transform: uppercase;\n  padding: 10px;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n.chat--app--container .card .messages {\n  list-style-type: none;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  padding: 10px;\n  height: calc(100vh - 200px);\n  overflow-y: scroll;\n}\n\n.chat--app--container .card .messages li {\n  max-width: 300px;\n  padding: 5px 10px;\n  margin-bottom: 15px;\n  border-bottom: 1px solid #ccc;\n  border-radius: 10px;\n  background-color: #fffafa;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n      -ms-flex-direction: column;\n          flex-direction: column;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.chat--app--container .card .messages li small {\n  margin-top: 10px;\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  font-size: 12px;\n  color: #ccc;\n  font-style: italic;\n}\n\n.chat--app--container .card .messages li.current-user {\n  -ms-flex-item-align: end;\n      align-self: flex-end;\n  background-color: #05a0f4;\n  color: #fff;\n}\n\n.chat--app--container .card .text-container {\n  margin-top: 30px;\n}\n\n.chat--app--container .card .text-container input {\n  border: none;\n  padding: 10px;\n  height: 37px;\n  width: calc(500px - 70px);\n  border-bottom-left-radius: 5px;\n}\n\n.chat--app--container .card .text-container button {\n  border-radius: 0 !important;\n  margin-bottom: 0;\n  border: none;\n  border-bottom-right-radius: 5px !important;\n}\n\n.class--list--app .class-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.class--list--app .class-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.class--list--app textarea {\n  width: 100%;\n  margin-top: 20px;\n}\n\n.rate--calculator--app .rate-list {\n  list-style-type: none !important;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[6];\n      grid-template-columns: repeat(6, 1fr);\n}\n\n.rate--calculator--app .rate-list li {\n  margin-bottom: 5px;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.rate--calculator--app input#money {\n  margin-top: 15px;\n}\n\n.rate--calculator--app .rates-container {\n  margin-top: 20px;\n  list-style-type: none;\n  display: -ms-grid;\n  display: grid;\n  -ms-grid-columns: (1fr)[3];\n      grid-template-columns: repeat(3, 1fr);\n}\n\n.rate--calculator--app .rates-container li {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: start;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  margin-bottom: 5px;\n}\n\n.rate--calculator--app .rates-container li:last-child {\n  margin-bottom: 0;\n}\n\n.rate--calculator--app .rates-container li strong {\n  margin-right: 5px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-1-tekrar-dersi/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/.vscode/extensions.json",
    "content": "{\n  \"recommendations\": [\"johnsoncodehk.volar\"]\n}\n"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/README.md",
    "content": "# Vue 3 + Vite\n\nThis template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.\n\n## Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)\n"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vite App</title>\n  </head>\n  <body>\n    <div id=\"app\"></div>\n    <script type=\"module\" src=\"/src/main.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/package.json",
    "content": "{\n  \"name\": \"0-script-setup\",\n  \"version\": \"0.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"serve\": \"vite preview\"\n  },\n  \"dependencies\": {\n    \"vue\": \"^3.2.6\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^1.6.1\",\n    \"@vue/compiler-sfc\": \"^3.2.6\",\n    \"vite\": \"^2.5.4\"\n  }\n}"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/src/App.vue",
    "content": "<template>\n  <h3>{{ title }} </h3>\n  <input type=\"text\" v-model=\"title\" />\n  <button @click=\"inc\">{{ counter }}</button>\n  <hr />\n  <oddOrEven :counter=\"counter\" @odd-event=\"alertMe\" />\n\n  <hr />\n  <h1>User App</h1>\n  <input type=\"text\" v-model=\"state.personal.name\" />\n  <input type=\"text\" v-model=\"state.personal.lname\" />\n  {{ state.personal }}\n</template>\n<script setup>\nimport { ref, reactive, watch } from \"vue\";\n//! beforeCreate() created() ve data()\nimport oddOrEven from \"./components/oddOrEven.vue\";\nimport Utils from \"./composables/Utils.js\";\nconst { title, counter, inc, alertMe } = Utils();\n\n//! UserApp\nconst state = reactive({\n  personal: {\n    name: \"Felakettin\",\n    lname: null,\n  },\n  itemList: [],\n});\n// const itemList = ref([]);\nwatch(\n  () => JSON.parse(JSON.stringify(state.personal)),\n  (newPersonal, oldPersonal) => {\n    console.log(oldPersonal);\n    console.log(newPersonal);\n  }\n);\n\nconsole.log(\"state :>> \", state.personal.name);\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/src/components/oddOrEven.vue",
    "content": "<template>\n  <h1>aaa</h1>\n  <h3>{{ result }}</h3>\n  {{ counter }}\n</template>\n<script setup>\nimport { computed, watch } from \"vue\";\nconst props = defineProps({ counter: Number });\nconst emit = defineEmits([\"odd-event\"]);\n// console.log(props.counter);\nconst result = computed(() => (props.counter % 2 === 0 ? \"Çift\" : \"Tek\"));\n\nwatch(result, (result) => {\n  if (result === \"Tek\") emit(\"odd-event\", true);\n});\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/src/composables/Utils.js",
    "content": "import { ref, onMounted } from \"vue\";\nexport default function () {\n  const title = ref(\"Başlık\");\n  const counter = ref(0);\n  const inc = () => {\n    counter.value++;\n  };\n  const alertMe = (info) => {\n    console.log(info);\n  };\n\n  onMounted(() => {\n    console.log(\"Mounted esnasında yapılabilecekler burada...\");\n  });\n\n  return { title, counter, inc, alertMe };\n}\n"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/src/main.js",
    "content": "import { createApp } from 'vue'\nimport App from './App.vue'\n\ncreateApp(App).mount('#app')\n"
  },
  {
    "path": "ders-10-composition-api/0-script-setup/vite.config.js",
    "content": "import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n  plugins: [vue()]\n})\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/.vscode/extensions.json",
    "content": "{\n  \"recommendations\": [\"johnsoncodehk.volar\"]\n}\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/README.md",
    "content": "# Vue 3 + Vite\n\nThis template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.\n\n## Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vite App</title>\n  </head>\n  <body>\n    <div id=\"app\"></div>\n    <script type=\"module\" src=\"/src/main.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/package.json",
    "content": "{\n  \"name\": \"1-item-list-app\",\n  \"version\": \"0.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"serve\": \"vite preview\"\n  },\n  \"dependencies\": {\n    \"vue\": \"^3.2.6\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^1.6.1\",\n    \"@vue/compiler-sfc\": \"^3.2.6\",\n    \"autoprefixer\": \"^10.3.4\",\n    \"postcss\": \"^8.3.6\",\n    \"tailwindcss\": \"^2.2.15\",\n    \"vite\": \"^2.5.4\"\n  }\n}\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/postcss.config.js",
    "content": "module.exports = {\n  plugins: {\n    tailwindcss: {},\n    autoprefixer: {},\n  },\n}\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/App.vue",
    "content": "<template>\n  <div class=\"w-screen h-screen bg-gray-800 flex flex-row text-white items-start justify-center\">\n    <app-sidebar :invoices=\"invoiceList\" :editInvoice=\"editInvoice\" />\n    <invoice-content :saveInvoice=\"saveInvoice\" :activeInvoice=\"state.activeInvoice\" />\n  </div>\n</template>\n<script setup>\nimport { ref, reactive } from \"vue\";\nimport appSidebar from \"./components/appSidebar.vue\";\nimport invoiceContent from \"./components/invoiceContent.vue\";\nconst invoiceList = ref([\n  {\n    id: new Date().getTime(),\n    contact: {\n      contact_name: \"Demo 1\",\n      email: \"demo@demo.com\",\n      city: \"Marmaris\",\n      country: \"Demo Country\",\n      zipcode: \"DemoZipCode\",\n    },\n    items: [\n      {\n        id: new Date().getTime(),\n        name: \"Demo Ürün\",\n        qty: 1,\n        unit_price: 10.0,\n        total_price: 10.0,\n      },\n    ],\n  },\n]);\nconst state = reactive({ activeInvoice: null });\nconst saveInvoice = (invoice) => {\n  console.log(\"invoice :>> \", invoice);\n  invoiceList.value.push(invoice);\n};\nconst editInvoice = (invoice) => {\n  console.log(invoice);\n  state.activeInvoice = invoice;\n  // setTimeout(() => {\n  //   state.activeInvoice = null;\n  // }, 2000);\n  console.log(\"state.activeInvoice :>> \", state.activeInvoice);\n};\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/assets/index.css",
    "content": "@tailwind base;\n@tailwind components;\n@tailwind utilities;\n\n@layer components {\n  .input {\n    @apply bg-gray-800 outline-none px-2 py-1 text-sm rounded-md text-gray-400 focus:bg-gray-700;\n  }\n  .delete-button {\n    @apply outline-none hover:text-gray-100 text-gray-400;\n  }\n\n  .add-item-button {\n    @apply outline-none flex bg-gray-800 w-full px-2 py-2 rounded-full items-center justify-center text-purple-600 hover:bg-gray-700 active:bg-gray-900;\n  }\n\n  .purple-button {\n    @apply outline-none bg-indigo-600 p-2 rounded-md hover:bg-indigo-500 active:bg-indigo-700;\n  }\n\n  .danger-button {\n    @apply outline-none bg-red-600 p-2 rounded-md hover:bg-red-500 active:bg-red-700;\n  }\n\n  .table-body-item {\n    @apply flex items-center mb-1 border-b border-gray-800 p-1;\n  }\n}\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/components/appSidebar.vue",
    "content": "<template>\n  <aside class=\"bg-gray-700 w-[300px] h-screen\">\n    <h3 class=\"text-2xl font-bold mt-2 p-2\">Fatura Listesi</h3>\n    <div v-for=\"invoice in invoices\" :key=\"invoice.id\" class=\"odd:bg-gray-600 flex justify-between items-center p-2\">\n      <span>#{{ invoice.id.toString().slice(0, 4) }}</span>\n      <span>{{ invoice.contact.contact_name }}</span>\n      <span>\n        <button class=\"danger-button mr-1\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M16 9v10H8V9h8m-1.5-6h-5l-1 1H5v2h14V4h-3.5l-1-1zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7z\" />\n          </svg>\n        </button>\n        <button @click=\"editInvoice(invoice)\" class=\"purple-button\">\n          <svg class=\"fill-current\" xmlns=\"http://www.w3.org/2000/svg\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path\n              d=\"M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4zm0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7z\"\n            />\n          </svg>\n        </button>\n      </span>\n    </div>\n  </aside>\n</template>\n<script setup>\ndefineProps({ invoices: Array, editInvoice: Function });\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/components/contactSection.vue",
    "content": "<template>\n  <div>\n    <heading title=\"Fatura Bilgileri\" />\n    <label for=\"client_name\" class=\"flex flex-col text-gray-400 mb-2\">\n      <small class=\"mb-1\">Müşteri Adı</small>\n      <input v-model=\"contact.contact_name\" autocomplete=\"off\" id=\"client_name\" class=\"input\" type=\"text\" />\n    </label>\n    <label for=\"client_email\" class=\"flex flex-col text-gray-400 mb-2\">\n      <small class=\"mb-1\">E-posta</small>\n      <input v-model=\"contact.email\" autocomplete=\"off\" id=\"client_email\" class=\"input\" type=\"email\" />\n    </label>\n\n    <div class=\"grid grid-cols-3 gap-5\">\n      <label for=\"city\" class=\"flex flex-col text-gray-400 mb-2\">\n        <small class=\"mb-1\">Şehir</small>\n        <input v-model=\"contact.city\" autocomplete=\"off\" id=\"city\" class=\"input\" type=\"text\" />\n      </label>\n      <label for=\"zip_code\" class=\"flex flex-col text-gray-400 mb-2\">\n        <small class=\"mb-1\">Posta Kodu</small>\n        <input v-model=\"contact.zipcode\" autocomplete=\"off\" id=\"zip_code\" class=\"input\" type=\"text\" />\n      </label>\n      <label for=\"country\" class=\"flex flex-col text-gray-400 mb-2\">\n        <small class=\"mb-1\">Ülke</small>\n        <input v-model=\"contact.country\" autocomplete=\"off\" id=\"country\" class=\"input\" type=\"text\" />\n      </label>\n    </div>\n  </div>\n</template>\n<script setup>\ndefineProps({ contact: Object });\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/components/invoiceContent.vue",
    "content": "<template>\n  <section class=\"bg-gray-900 w-1/3 mx-auto mt-10 p-2 px-5 rounded-md shadow-2xl\">\n    <!-- FAtura Bilgileri -->\n    <contact-section :contact=\"state.contact\" />\n    <div class=\"mt-5\">\n      <heading title=\"Fatura Kalemleri\" />\n      <invoice-items :items=\"state.items\" :AddInvoiceItem=\"AddInvoiceItem\" />\n    </div>\n    <!-- Summary -->\n    <invoice-summary :items=\"state.items\" />\n    <hr class=\"bg-gradient-to-r h-[1px] border-none from-gray-700 mt-5\" />\n    <div class=\"actionbar text-right my-5\">\n      <button @click=\"onSubmit\" class=\"purple-button\">Kaydet</button>\n    </div>\n  </section>\n</template>\n<script setup>\nimport invoiceItems from \"./invoiceItems.vue\";\nimport invoiceSummary from \"./invoiceSummary.vue\";\nimport contactSection from \"./contactSection.vue\";\nimport { reactive, provide, watch } from \"vue\";\nconst props = defineProps({ saveInvoice: Function, activeInvoice: [Object, null] });\nconst state = reactive({\n  id: null,\n  created_at: null,\n  contact: {\n    contact_name: null,\n    email: null,\n    city: null,\n    country: null,\n    zipcode: null,\n  },\n  items: [],\n});\nconst AddInvoiceItem = () => {\n  state.items.push({\n    id: new Date().getTime(),\n    name: null,\n    qty: null,\n    unit_price: 0.0,\n    total_price: 0.0,\n  });\n};\nconst DeleteInvoiceItem = (invoiceItem) => {\n  state.items = state.items.filter((i) => i.id !== invoiceItem.id);\n};\nprovide(\"DeleteInvoiceItem\", DeleteInvoiceItem);\n\nconst onSubmit = () => {\n  props.saveInvoice({ ...state, created_at: new Date(), id: new Date().getTime() });\n\n  state.contact = {\n    contact_name: null,\n    email: null,\n    city: null,\n    country: null,\n    zipcode: null,\n  };\n  state.items = [];\n};\n\nconsole.log(\"props.activeInvoice :>> \", props.activeInvoice);\nwatch(\n  () => props.activeInvoice,\n  (activeInvoice) => {\n    if (activeInvoice) {\n      state.contact = {\n        ...activeInvoice.contact,\n      };\n      state.items = [...activeInvoice.items];\n    }\n  }\n);\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/components/invoiceItem.vue",
    "content": "<template>\n  <div class=\"table-body-item group\">\n    <input v-model=\"item.name\" autocomplete=\"off\" type=\"text\" class=\"input w-[200px] mr-2\" />\n    <input v-model=\"item.qty\" autocomplete=\"off\" type=\"text\" class=\"input w-[50px] mr-2\" />\n    <input v-model=\"item.unit_price\" autocomplete=\"off\" type=\"text\" class=\"input w-[100px] mr-2\" />\n    <span class=\"p-1 text-center text-gray-400\">${{ totalPrice }}</span>\n    <div class=\"text-right flex-grow\">\n      <button @click=\"DeleteInvoiceItem(item)\" class=\"delete-button\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n          <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n          <path d=\"M16 9v10H8V9h8m-1.5-6h-5l-1 1H5v2h14V4h-3.5l-1-1zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7z\" />\n        </svg>\n      </button>\n    </div>\n  </div>\n</template>\n<script setup>\nimport { computed, watch, inject } from \"vue\";\nconst props = defineProps({ item: Object });\nconst totalPrice = computed(() => props.item.qty * props.item.unit_price);\nwatch(totalPrice, (totalPrice) => {\n  props.item.total_price = totalPrice;\n});\nconst DeleteInvoiceItem = inject(\"DeleteInvoiceItem\");\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/components/invoiceItems.vue",
    "content": "<template>\n  <div>\n    <div class=\"table-header flex\">\n      <span class=\"text-left p-1 w-[200px] mr-2\">Ürün Adı</span>\n      <span class=\"text-left p-1 w-[50px] mr-2\">Adet</span>\n      <span class=\"text-left p-1 w-[100px] mr-2\">Fiyat</span>\n      <span class=\"p-1 w-[100px]\">Toplam</span>\n    </div>\n    <div class=\"table-body\">\n      <invoice-item v-for=\"item in items\" :key=\"item.id\" :item=\"item\" />\n      <button @click=\"AddInvoiceItem\" class=\"mt-4 add-item-button\">\n        <svg class=\"fill-current\" xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n          <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n          <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n        </svg>\n        <span class=\"text-gray-400\">Ekle</span>\n      </button>\n    </div>\n  </div>\n</template>\n<script setup>\nimport invoiceItem from \"./invoiceItem.vue\";\ndefineProps({ items: Array, AddInvoiceItem: Function });\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/components/invoiceSummary.vue",
    "content": "<template>\n  <div class=\"summary mt-5 flex justify-end items-end\">\n    <div class=\"text-right mr-2\">\n      <div class=\"text-gray-500\">Ara Toplam :</div>\n      <div class=\"text-gray-400\">KDV Toplam :</div>\n      <div class=\"text-gray-300\">Genel Toplam :</div>\n    </div>\n    <div class=\"text-right\">\n      <div class=\"text-gray-500\">{{ subTotal }}</div>\n      <div class=\"text-gray-400\">{{ taxTotal }}</div>\n      <div class=\"text-gray-300\">{{ total }}</div>\n    </div>\n  </div>\n</template>\n<script setup>\nimport { computed } from \"vue\";\nconst props = defineProps({ items: Array });\nconst subTotal = computed(() => props.items.reduce((t, i) => t + i.total_price, 0));\nconst taxTotal = computed(() => subTotal.value * 0.18);\nconst total = computed(() => subTotal.value + taxTotal.value);\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/components/ui/appHeading.vue",
    "content": "<template>\n  <h3 class=\"text-gray-400 text-xl\">{{ title }}</h3>\n  <hr class=\"bg-gradient-to-r h-[1px] border-none from-gray-700 mb-2\" />\n</template>\n<script setup>\ndefineProps({ title: String });\n</script>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport appHeading from \"./components/ui/appHeading.vue\";\nimport \"./assets/index.css\";\nconst app = createApp(App);\napp.component(\"heading\", appHeading);\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/src/theme.vue",
    "content": "<template>\n  <div class=\"w-screen h-screen bg-gray-800 flex flex-row text-white items-start justify-center\">\n    <aside class=\"bg-gray-700 w-[300px] h-screen\">\n      <h3 class=\"text-2xl font-bold mt-2 p-2\">Fatura Listesi</h3>\n      <div v-for=\"i in 5\" :key=\"i\" class=\"odd:bg-gray-600 flex justify-between items-center p-2\">\n        <span>#45fg4</span>\n        <span>Kablosuzkedi</span>\n        <span>\n          <button class=\"danger-button mr-1\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M16 9v10H8V9h8m-1.5-6h-5l-1 1H5v2h14V4h-3.5l-1-1zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7z\" />\n            </svg>\n          </button>\n          <button class=\"purple-button\">\n            <svg class=\"fill-current\" xmlns=\"http://www.w3.org/2000/svg\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path\n                d=\"M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4zm0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7z\"\n              />\n            </svg>\n          </button>\n        </span>\n      </div>\n    </aside>\n    <section class=\"bg-gray-900 w-1/3 mx-auto mt-10 p-2 px-5 rounded-md shadow-2xl\">\n      <!-- FAtura Bilgileri -->\n      <h3 class=\"text-gray-400 text-xl\">Fatura Bilgileri</h3>\n      <hr class=\"bg-gradient-to-r h-[1px] border-none from-gray-700 mb-2\" />\n      <div>\n        <label for=\"client_name\" class=\"flex flex-col text-gray-400 mb-2\">\n          <small class=\"mb-1\">Müşteri Adı</small>\n          <input autocomplete=\"off\" id=\"client_name\" class=\"input\" type=\"text\" />\n        </label>\n        <label for=\"client_email\" class=\"flex flex-col text-gray-400 mb-2\">\n          <small class=\"mb-1\">E-posta</small>\n          <input autocomplete=\"off\" id=\"client_email\" class=\"input\" type=\"email\" />\n        </label>\n\n        <div class=\"grid grid-cols-3 gap-5\">\n          <label for=\"city\" class=\"flex flex-col text-gray-400 mb-2\">\n            <small class=\"mb-1\">Şehir</small>\n            <input autocomplete=\"off\" id=\"city\" class=\"input\" type=\"text\" />\n          </label>\n          <label for=\"zip_code\" class=\"flex flex-col text-gray-400 mb-2\">\n            <small class=\"mb-1\">Posta Kodu</small>\n            <input autocomplete=\"off\" id=\"zip_code\" class=\"input\" type=\"text\" />\n          </label>\n          <label for=\"country\" class=\"flex flex-col text-gray-400 mb-2\">\n            <small class=\"mb-1\">Ülke</small>\n            <input autocomplete=\"off\" id=\"country\" class=\"input\" type=\"text\" />\n          </label>\n        </div>\n      </div>\n\n      <div class=\"mt-5\">\n        <h3 class=\"text-gray-400 text-xl\">Fatura Kalemleri</h3>\n        <hr class=\"bg-gradient-to-r h-[1px] border-none from-gray-700 mb-2\" />\n        <div class=\"table-header flex\">\n          <span class=\"text-left p-1 w-[200px] mr-2\">Ürün Adı</span>\n          <span class=\"text-left p-1 w-[50px] mr-2\">Adet</span>\n          <span class=\"text-left p-1 w-[100px] mr-2\">Fiyat</span>\n          <span class=\"p-1 w-[100px]\">Toplam</span>\n        </div>\n        <div class=\"table-body\">\n          <div v-for=\"i in 5\" :key=\"i\" class=\"table-body-item group\">\n            <input autocomplete=\"off\" type=\"text\" class=\"input w-[200px] mr-2\" />\n            <input autocomplete=\"off\" type=\"text\" class=\"input w-[50px] mr-2\" />\n            <input autocomplete=\"off\" type=\"text\" class=\"input w-[100px] mr-2\" />\n            <span class=\"p-1 text-center text-gray-400\">$1500</span>\n            <div class=\"text-right flex-grow\">\n              <button class=\"delete-button\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M16 9v10H8V9h8m-1.5-6h-5l-1 1H5v2h14V4h-3.5l-1-1zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7z\" />\n                </svg>\n              </button>\n            </div>\n          </div>\n          <button class=\"mt-4 add-item-button\">\n            <svg class=\"fill-current\" xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n            </svg>\n            <span class=\"text-gray-400\">Ekle</span>\n          </button>\n        </div>\n      </div>\n      <!-- Summary -->\n      <div class=\"summary mt-5 flex justify-end items-end\">\n        <div class=\"text-right mr-2\">\n          <div class=\"text-gray-500\">Ara Toplam :</div>\n          <div class=\"text-gray-400\">KDV Toplam :</div>\n          <div class=\"text-gray-300\">Genel Toplam :</div>\n        </div>\n        <div class=\"text-right\">\n          <div class=\"text-gray-500\">100,00</div>\n          <div class=\"text-gray-400\">18,00</div>\n          <div class=\"text-gray-300\">118,00</div>\n        </div>\n      </div>\n\n      <hr class=\"bg-gradient-to-r h-[1px] border-none from-gray-700 mt-5\" />\n      <div class=\"actionbar text-right my-5\">\n        <button class=\"purple-button\">Kaydet</button>\n      </div>\n    </section>\n  </div>\n</template>\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/tailwind.config.js",
    "content": "module.exports = {\n  mode: \"jit\",\n  purge: [\"./src/**/*.vue\"],\n  darkMode: false, // or 'media' or 'class'\n  theme: {\n    extend: {},\n  },\n  variants: {\n    extend: {},\n  },\n  plugins: [],\n};\n"
  },
  {
    "path": "ders-10-composition-api/1-item-list-app/vite.config.js",
    "content": "import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n  plugins: [vue()]\n})\n"
  },
  {
    "path": "ders-11/namespaced-components/.vscode/extensions.json",
    "content": "{\n  \"recommendations\": [\"johnsoncodehk.volar\"]\n}\n"
  },
  {
    "path": "ders-11/namespaced-components/README.md",
    "content": "# Vue 3 + Vite\n\nThis template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.\n\n## Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)\n"
  },
  {
    "path": "ders-11/namespaced-components/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vite App</title>\n  </head>\n  <body>\n    <div id=\"app\"></div>\n    <script type=\"module\" src=\"/src/main.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-11/namespaced-components/package.json",
    "content": "{\n  \"name\": \"namespaced-components\",\n  \"version\": \"0.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"serve\": \"vite preview\"\n  },\n  \"dependencies\": {\n    \"vue\": \"^3.2.16\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^1.9.2\",\n    \"vite\": \"^2.6.0\"\n  }\n}"
  },
  {
    "path": "ders-11/namespaced-components/src/App.vue",
    "content": "<script setup>\n// import Input from \"./components/Forms/Input.vue\";\n// import Select from \"./components/Forms/Select.vue\";\n// import Label from \"./components/Forms/Label.vue\";\nimport * as Form from \"./components/form-components\";\n</script>\n\n<template>\n  <!-- <Label>\n    Başlık\n    <Input />\n  </Label>\n  <Label>\n    Kategori\n    <Select />\n  </Label> -->\n  <Form.Label>\n    Başlık\n    <Form.Input />\n  </Form.Label>\n  <Form.Label>\n    Kategori\n    <Form.Select />\n  </Form.Label>\n</template>\n"
  },
  {
    "path": "ders-11/namespaced-components/src/components/Forms/Input.vue",
    "content": "<template>\n  <slot />\n  <input type=\"text\" />\n</template>\n"
  },
  {
    "path": "ders-11/namespaced-components/src/components/Forms/Label.vue",
    "content": "<template>\n  <slot />\n</template>\n"
  },
  {
    "path": "ders-11/namespaced-components/src/components/Forms/Select.vue",
    "content": "<template>\n  <slot />\n  <select>\n    <option value=\"1\">Opt 1</option>\n    <option value=\"2\">Opt 2</option>\n    <option value=\"3\">Opt 3</option>\n    <option value=\"4\">Opt 4</option>\n  </select>\n</template>\n"
  },
  {
    "path": "ders-11/namespaced-components/src/components/form-components.js",
    "content": "export { default as Input } from \"./Forms/Input.vue\";\nexport { default as Select } from \"./Forms/Select.vue\";\nexport { default as Label } from \"./Forms/Label.vue\";\n"
  },
  {
    "path": "ders-11/namespaced-components/src/main.js",
    "content": "import { createApp } from 'vue'\nimport App from './App.vue'\n\ncreateApp(App).mount('#app')\n"
  },
  {
    "path": "ders-11/namespaced-components/vite.config.js",
    "content": "import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n  plugins: [vue()]\n})\n"
  },
  {
    "path": "ders-11/suspense-example/.vscode/extensions.json",
    "content": "{\n  \"recommendations\": [\"johnsoncodehk.volar\"]\n}\n"
  },
  {
    "path": "ders-11/suspense-example/README.md",
    "content": "# Vue 3 + Vite\n\nThis template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.\n\n## Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)\n"
  },
  {
    "path": "ders-11/suspense-example/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vite App</title>\n  </head>\n  <body>\n    <div id=\"app\"></div>\n    <script type=\"module\" src=\"/src/main.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-11/suspense-example/package.json",
    "content": "{\n  \"name\": \"suspense-example\",\n  \"version\": \"0.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"serve\": \"vite preview\"\n  },\n  \"dependencies\": {\n    \"vue\": \"^3.2.16\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^1.9.2\",\n    \"vite\": \"^2.6.0\"\n  }\n}"
  },
  {
    "path": "ders-11/suspense-example/src/App.vue",
    "content": "<script setup>\nimport { onErrorCaptured, ref, defineAsyncComponent } from \"@vue/runtime-core\";\n// import Todos from \"./components/Todos.vue\";\n// import Users from \"./components/Users.vue\";\nconst err = ref(null);\nconst Todos = defineAsyncComponent(() => import(\"./components/Todos.vue\"));\nconst Users = defineAsyncComponent(() => import(\"./components/Users.vue\"));\nonErrorCaptured((e) => {\n  err.value = e;\n  return true;\n});\n</script>\n\n<template>\n  <span v-if=\"err\" class=\"error\"> {{ err }}</span>\n  <suspense v-else>\n    <template #default>\n      <div>\n        <Users />\n        <hr />\n        <Todos />\n      </div>\n    </template>\n    <template #fallback>\n      <div>Loading...</div>\n    </template>\n  </suspense>\n</template>\n\n<style scoped>\n.error {\n  color: red;\n  font-size: 20px;\n}\n</style>\n"
  },
  {
    "path": "ders-11/suspense-example/src/components/Todos.vue",
    "content": "<script setup>\nimport { ref } from \"vue\";\n\nconst todoList = ref([]);\n// const isLoad = ref(false);\nfetch(\"https://jsonplaceholder.typicode.com/todos\")\n  .then((response) => response.json())\n  .then((json) => {\n    todoList.value = json;\n    // isLoad.value = true;\n  });\n</script>\n\n<template>\n  <h3>Todos</h3>\n  <ul>\n    <li v-for=\"todo in todoList\" :key=\"todo.id\">\n      {{ todo.title }}\n    </li>\n  </ul>\n  <!-- <span v-else>Loading..</span> -->\n</template>\n"
  },
  {
    "path": "ders-11/suspense-example/src/components/Users.vue",
    "content": "<script setup>\nimport { ref } from \"vue\";\n\nconst userList = ref([]);\n// const isLoad = ref(false);\n\nfetch(\"https://jsonplaceholder.typicode.com/users\")\n  .then((response) => response.json())\n  .then((json) => {\n    userList.value = json;\n    // isLoad.value = true;\n  });\n</script>\n\n<template>\n  <h3>Users</h3>\n  <ul>\n    <li v-for=\"user in userList\" :key=\"user.id\">\n      {{ user.name }}\n    </li>\n  </ul>\n  <!-- <span v-else>Loading...</span> -->\n</template>\n"
  },
  {
    "path": "ders-11/suspense-example/src/main.js",
    "content": "import { createApp } from 'vue'\nimport App from './App.vue'\n\ncreateApp(App).mount('#app')\n"
  },
  {
    "path": "ders-11/suspense-example/vite.config.js",
    "content": "import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n  plugins: [vue()]\n})\n"
  },
  {
    "path": "ders-11/teleport-example/.vscode/extensions.json",
    "content": "{\n  \"recommendations\": [\"johnsoncodehk.volar\"]\n}\n"
  },
  {
    "path": "ders-11/teleport-example/README.md",
    "content": "# Vue 3 + Vite\n\nThis template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.\n\n## Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)\n"
  },
  {
    "path": "ders-11/teleport-example/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vite App</title>\n  </head>\n  <body>\n    <div id=\"app\"></div>\n    <div id=\"modal-area\"></div>\n    <script type=\"module\" src=\"/src/main.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-11/teleport-example/package.json",
    "content": "{\n  \"name\": \"teleport-example\",\n  \"version\": \"0.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"serve\": \"vite preview\"\n  },\n  \"dependencies\": {\n    \"vue\": \"^3.2.16\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^1.9.2\",\n    \"vite\": \"^2.6.0\"\n  }\n}"
  },
  {
    "path": "ders-11/teleport-example/src/App.vue",
    "content": "<script setup>\n// This starter template is using Vue 3 <script setup> SFCs\n// Check out https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup\nimport HelloWorld from \"./components/HelloWorld.vue\";\n</script>\n\n<template>\n  <teleport to=\"#modal-area\">\n    <h3>Teleport</h3>\n  </teleport>\n\n  <teleport to=\"#modal-area\">\n    <img alt=\"Vue logo\" src=\"./assets/logo.png\" />\n  </teleport>\n</template>\n\n<style>\n#app {\n  font-family: Avenir, Helvetica, Arial, sans-serif;\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n  text-align: center;\n  color: #2c3e50;\n  margin-top: 60px;\n}\n</style>\n"
  },
  {
    "path": "ders-11/teleport-example/src/components/HelloWorld.vue",
    "content": "<script setup>\nimport { ref } from 'vue'\n\ndefineProps({\n  msg: String\n})\n\nconst count = ref(0)\n</script>\n\n<template>\n  <h1>{{ msg }}</h1>\n\n  <p>\n    Recommended IDE setup:\n    <a href=\"https://code.visualstudio.com/\" target=\"_blank\">VSCode</a>\n    +\n    <a href=\"https://github.com/johnsoncodehk/volar\" target=\"_blank\">Volar</a>\n  </p>\n\n  <p>\n    <a href=\"https://vitejs.dev/guide/features.html\" target=\"_blank\">\n      Vite Documentation\n    </a>\n    |\n    <a href=\"https://v3.vuejs.org/\" target=\"_blank\">Vue 3 Documentation</a>\n  </p>\n\n  <button type=\"button\" @click=\"count++\">count is: {{ count }}</button>\n  <p>\n    Edit\n    <code>components/HelloWorld.vue</code> to test hot module replacement.\n  </p>\n</template>\n\n<style scoped>\na {\n  color: #42b983;\n}\n</style>\n"
  },
  {
    "path": "ders-11/teleport-example/src/main.js",
    "content": "import { createApp } from 'vue'\nimport App from './App.vue'\n\ncreateApp(App).mount('#app')\n"
  },
  {
    "path": "ders-11/teleport-example/vite.config.js",
    "content": "import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n  plugins: [vue()]\n})\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/.eslintignore",
    "content": "/composables/*.js"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/.prettierrc",
    "content": "{\n    \"printWidth\": 250\n}"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/README.md",
    "content": "# ders-6-socialmark-uygulamasi\n\n## Project setup\n```\nyarn install\n```\n\n### Compiles and hot-reloads for development\n```\nyarn serve\n```\n\n### Compiles and minifies for production\n```\nyarn build\n```\n\n### Lints and fixes files\n```\nyarn lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/db.json",
    "content": "{\n  \"users\": [\n    {\n      \"username\": \"gkandemir\",\n      \"fullname\": \"Gökhan Kandemir\",\n      \"password\": \"79a0af24ff17bb7a8a4a1176de203d9f566ee17d\",\n      \"id\": 1\n    },\n    {\n      \"username\": \"prototurk\",\n      \"fullname\": \"Tayfun Erbilen\",\n      \"password\": \"79a0af24ff17bb7a8a4a1176de203d9f566ee17d\",\n      \"id\": 2\n    },\n    {\n      \"username\": \"kablosuzbeyin\",\n      \"fullname\": \"Ramazan Sancar\",\n      \"password\": \"79a0af24ff17bb7a8a4a1176de203d9f566ee17d\",\n      \"id\": 3\n    },\n    {\n      \"username\": \"felo\",\n      \"fullname\": \"felakettin\",\n      \"password\": \"8fd84c94c8fe7e2b09a30501fd2b1c8b2aaefdd7\",\n      \"id\": 4\n    }\n  ],\n  \"user_likes\": [\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 1,\n      \"id\": 1\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 6,\n      \"id\": 4\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 16,\n      \"id\": 5\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 9,\n      \"id\": 6\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 3,\n      \"id\": 7\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 20,\n      \"id\": 8\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 19,\n      \"id\": 9\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 13,\n      \"id\": 10\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 11,\n      \"id\": 11\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 12,\n      \"id\": 12\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 10,\n      \"id\": 13\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 18,\n      \"id\": 14\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 5,\n      \"id\": 15\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 4,\n      \"id\": 16\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 17,\n      \"id\": 17\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 15,\n      \"id\": 18\n    }\n  ],\n  \"user_bookmarks\": [\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 6,\n      \"id\": 4\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 16,\n      \"id\": 5\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 8,\n      \"id\": 6\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 7,\n      \"id\": 7\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 2,\n      \"id\": 8\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 19,\n      \"id\": 9\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 13,\n      \"id\": 10\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 11,\n      \"id\": 11\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 12,\n      \"id\": 12\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 14,\n      \"id\": 13\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 17,\n      \"id\": 14\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 5,\n      \"id\": 15\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 4,\n      \"id\": 16\n    },\n    {\n      \"userId\": 4,\n      \"bookmarkId\": 3,\n      \"id\": 17\n    }\n  ],\n  \"bookmarks\": [\n    {\n      \"title\": \"Vue Docs\",\n      \"url\": \"https://v3.vuejs.org\",\n      \"categoryId\": 1,\n      \"description\": \"Dünyanın en güzel framework'ü\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T18:57:24.821Z\",\n      \"id\": 1\n    },\n    {\n      \"title\": \"Frontend Masters\",\n      \"url\": \"http://...\",\n      \"categoryId\": 3,\n      \"description\": \"Çok güzel bir kaynak..\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T19:00:35.404Z\",\n      \"id\": 2\n    },\n    {\n      \"title\": \"AWS\",\n      \"url\": \"https:///aws\",\n      \"categoryId\": 5,\n      \"description\": \"çok güzel\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T19:01:12.447Z\",\n      \"id\": 3\n    },\n    {\n      \"title\": \"Güzel Müzikler\",\n      \"url\": \"https://...\",\n      \"categoryId\": 6,\n      \"description\": \"çok güzel müzikler ama gerçekten çok güzel..\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T19:11:23.114Z\",\n      \"id\": 4\n    },\n    {\n      \"title\": \"Prototurk\",\n      \"url\": \"https://prototurk.com\",\n      \"categoryId\": 4,\n      \"description\": \"Türkiyenin StackOverflow'u olacak bir sayfa.\",\n      \"userId\": 2,\n      \"created_at\": \"2021-08-26T19:43:24.698Z\",\n      \"id\": 5\n    },\n    {\n      \"title\": \"Marvel Filmleri\",\n      \"url\": \"httpa://...\",\n      \"categoryId\": 6,\n      \"description\": \"bu serinin tamamını kesinlikle izle.\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T20:03:34.015Z\",\n      \"id\": 6\n    },\n    {\n      \"title\": \"Kablosuz Beyin\",\n      \"url\": \"https://kablosuzbeyin.com\",\n      \"categoryId\": 6,\n      \"description\": \"Kablosuz Beyin etkinlikler için..\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T20:04:14.248Z\",\n      \"id\": 7\n    },\n    {\n      \"title\": \"Yeni Yer İmi\",\n      \"url\": \"http://....\",\n      \"categoryId\": 2,\n      \"description\": \"aaaaa\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:31:14.532Z\",\n      \"id\": 8\n    },\n    {\n      \"title\": \"tttt\",\n      \"url\": \"aaaaa\",\n      \"categoryId\": 4,\n      \"description\": \"ssssss\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:35:59.811Z\",\n      \"id\": 9\n    },\n    {\n      \"title\": \"TestS\",\n      \"url\": \"http://...\",\n      \"categoryId\": 1,\n      \"description\": \"aaaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:37:57.630Z\",\n      \"id\": 10\n    },\n    {\n      \"title\": \"denem\",\n      \"url\": \"http\",\n      \"categoryId\": 2,\n      \"description\": \"asdadasdad\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:41:07.474Z\",\n      \"id\": 11\n    },\n    {\n      \"title\": \"New Test\",\n      \"url\": \"http://\",\n      \"categoryId\": 2,\n      \"description\": \"aaaaaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:45:30.984Z\",\n      \"id\": 12\n    },\n    {\n      \"title\": \"Deneme\",\n      \"url\": \"http://\",\n      \"categoryId\": 1,\n      \"description\": \"aaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:45:53.053Z\",\n      \"id\": 13\n    },\n    {\n      \"title\": \"yen\",\n      \"url\": \"aaa\",\n      \"categoryId\": 1,\n      \"description\": \"sdfsdf\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:46:51.308Z\",\n      \"id\": 14\n    },\n    {\n      \"title\": \"deneme\",\n      \"url\": \"aaaaa\",\n      \"categoryId\": 3,\n      \"description\": \"asdasd\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:51:28.380Z\",\n      \"id\": 15\n    },\n    {\n      \"title\": \"Can Sarıgöl Oyun\",\n      \"url\": \"178....\",\n      \"categoryId\": 1,\n      \"description\": \"aaaaaaaaaaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:52:14.559Z\",\n      \"id\": 16\n    },\n    {\n      \"title\": \"aaa\",\n      \"url\": \"fdghfggh\",\n      \"categoryId\": 3,\n      \"description\": \"fghfghfh\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:52:35.170Z\",\n      \"id\": 17\n    },\n    {\n      \"title\": \"Vue3 Bootcamp\",\n      \"url\": \"aaaa\",\n      \"categoryId\": 5,\n      \"description\": \"sdfsdfdsf\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:54:42.357Z\",\n      \"id\": 18\n    },\n    {\n      \"title\": \"Test\",\n      \"url\": \"aaaa\",\n      \"categoryId\": 3,\n      \"description\": \"aaaaa\",\n      \"userId\": 1,\n      \"created_at\": \"2021-10-09T17:17:29.437Z\",\n      \"id\": 19\n    },\n    {\n      \"title\": \"Bu bir deneme\",\n      \"url\": \"deneme mi\",\n      \"categoryId\": 3,\n      \"description\": \"sadfdsfdsfsfsfsfs\",\n      \"userId\": 4,\n      \"created_at\": \"2021-10-09T18:10:09.889Z\",\n      \"id\": 20\n    }\n  ],\n  \"categories\": [\n    {\n      \"name\": \"Vue.js\",\n      \"id\": 1\n    },\n    {\n      \"name\": \"React.js\",\n      \"id\": 2\n    },\n    {\n      \"name\": \"Frontend\",\n      \"id\": 3\n    },\n    {\n      \"name\": \"Backend\",\n      \"id\": 4\n    },\n    {\n      \"name\": \"Cloud\",\n      \"id\": 5\n    },\n    {\n      \"name\": \"Sosyal Yaşam\",\n      \"id\": 6\n    }\n  ]\n}"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/package.json",
    "content": "{\n  \"name\": \"ders-6-socialmark-uygulamasi\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"axios\": \"^0.21.1\",\n    \"core-js\": \"^3.6.5\",\n    \"crypto-js\": \"^4.1.1\",\n    \"secure-ls\": \"^1.2.6\",\n    \"socket.io-client\": \"^4.2.0\",\n    \"vue\": \"^3.0.0\",\n    \"vue-router\": \"4\",\n    \"vuex\": \"^4.0.2\",\n    \"vuex-persistedstate\": \"^4.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\" />\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\">\n    <noscript>\n      <strong\n        >We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to\n        continue.</strong\n      >\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/App.vue",
    "content": "<template>\n  <router-view></router-view>\n</template>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/assets/style.css",
    "content": "/*! tailwindcss v2.2.7 | MIT License | https://tailwindcss.com */\n\n/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\nhtml {\n  -moz-tab-size: 4;\n  -o-tab-size: 4;\n     tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n  line-height: 1.15;\n  /* 1 */\n  -webkit-text-size-adjust: 100%;\n  /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n  margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n  font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n  height: 0;\n  /* 1 */\n  color: inherit;\n  /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n  -webkit-text-decoration: underline dotted;\n          text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n  font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n  font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace;\n  /* 1 */\n  font-size: 1em;\n  /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n  font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n  font-size: 75%;\n  line-height: 0;\n  position: relative;\n  vertical-align: baseline;\n}\n\nsub {\n  bottom: -0.25em;\n}\n\nsup {\n  top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n  text-indent: 0;\n  /* 1 */\n  border-color: inherit;\n  /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  font-family: inherit;\n  /* 1 */\n  font-size: 100%;\n  /* 1 */\n  line-height: 1.15;\n  /* 1 */\n  margin: 0;\n  /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect {\n  /* 1 */\n  text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n  -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n::-moz-focus-inner {\n  border-style: none;\n  padding: 0;\n}\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n:-moz-focusring {\n  outline: 1px dotted ButtonText;\n}\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n:-moz-ui-invalid {\n  box-shadow: none;\n}\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n  padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n  vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n  height: auto;\n}\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n  -webkit-appearance: textfield;\n  /* 1 */\n  outline-offset: -2px;\n  /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n  -webkit-appearance: none;\n}\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n::-webkit-file-upload-button {\n  -webkit-appearance: button;\n  /* 1 */\n  font: inherit;\n  /* 2 */\n}\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n  display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n  margin: 0;\n}\n\nbutton {\n  background-color: transparent;\n  background-image: none;\n}\n\nfieldset {\n  margin: 0;\n  padding: 0;\n}\n\nol,\nul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n *    sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n *    to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n  /* 1 */\n  line-height: 1.5;\n  /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n  font-family: inherit;\n  line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n *    We used to set this in the html element and inherit from\n *    the parent element for everything else. This caused issues\n *    in shadow-dom-enhanced elements like <details> where the content\n *    is wrapped by a div with box-sizing set to `content-box`.\n *\n *    https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n *    By default, the way the browser specifies that an element should have no\n *    border is by setting it's border-style to `none` in the user-agent\n *    stylesheet.\n *\n *    In order to easily add borders to elements by just setting the `border-width`\n *    property, we change the default border-style for all elements to `solid`, and\n *    use border-width to hide them instead. This way our `border` utilities only\n *    need to set the `border-width` property instead of the entire `border`\n *    shorthand, making our border utilities much more straightforward to compose.\n *\n *    https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n  /* 1 */\n  border-width: 0;\n  /* 2 */\n  border-style: solid;\n  /* 2 */\n  border-color: currentColor;\n  /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n  border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n  border-style: solid;\n}\n\ntextarea {\n  resize: vertical;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\nbutton,\n[role=\"button\"] {\n  cursor: pointer;\n}\n\ntable {\n  border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n  font-size: inherit;\n  font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n  color: inherit;\n  text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  padding: 0;\n  line-height: inherit;\n  color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * 1. Make replaced elements `display: block` by default as that's\n *    the behavior you want almost all of the time. Inspired by\n *    CSS Remedy, with `svg` added as well.\n *\n *    https://github.com/mozdevs/cssremedy/issues/14\n * \n * 2. Add `vertical-align: middle` to align replaced elements more\n *    sensibly by default when overriding `display` by adding a\n *    utility like `inline`.\n *\n *    This can trigger a poorly considered linting error in some\n *    tools but is included by design.\n * \n *    https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n  display: block;\n  /* 1 */\n  vertical-align: middle;\n  /* 2 */\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their intrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n  max-width: 100%;\n  height: auto;\n}\n\n/**\n * Ensure the default browser behavior of the `hidden` attribute.\n */\n\n[hidden] {\n  display: none;\n}\n\n*, ::before, ::after {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-ring-offset-shadow: 0 0 #0000;\n  --tw-ring-shadow: 0 0 #0000;\n  --tw-shadow: 0 0 #0000;\n}\n\n.like-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.like-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.like-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(199, 210, 254, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(55, 48, 163, var(--tw-text-opacity));\n}\n\n.bookmark-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.bookmark-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(252, 165, 165, var(--tw-bg-opacity));\n}\n\n.bookmark-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(153, 27, 27, var(--tw-text-opacity));\n}\n\n.details-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.details-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.group:focus-within .details-btn {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.sidebar {\n  display: flex;\n  height: 100vh;\n  width: 15rem;\n  flex-shrink: 0;\n  flex-direction: column;\n  border-right-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.details-container {\n  visibility: hidden;\n  position: absolute;\n  right: 0px;\n  top: 100%;\n  z-index: 10 !important;\n  height: 10rem;\n  width: 15rem;\n  overflow-y: scroll;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  text-align: left;\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.group:focus-within .details-container {\n  visibility: visible;\n}\n\n.group:hover .details-container {\n  visibility: visible;\n}\n\n.header-container {\n  display: flex;\n  height: 4rem;\n  width: 100%;\n  align-items: center;\n  justify-content: center;\n  border-bottom-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.navbar-item {\n  border-radius: 0.5rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(107, 114, 128, var(--tw-border-opacity));\n  padding: 0.5rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.navbar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.menu-item {\n  display: flex;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.menu-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.sidebar-item {\n  display: flex;\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n  --tw-text-opacity: 1;\n  color: rgba(107, 114, 128, var(--tw-text-opacity));\n}\n\n.sidebar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.login_register_container {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  margin: auto;\n  display: flex;\n  width: 91.666667%;\n  transform: translate(-50%, -50%);\n  flex-direction: column;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n@media (min-width: 640px) {\n  .login_register_container {\n    width: 50%;\n  }\n}\n\n@media (min-width: 768px) {\n  .login_register_container {\n    width: 33.333333%;\n  }\n}\n\n@media (min-width: 1024px) {\n  .login_register_container {\n    width: 25%;\n  }\n}\n\n.input {\n  border-radius: 0.125rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n  outline: 2px solid transparent;\n  outline-offset: 2px;\n}\n\n.input:focus {\n  --tw-border-opacity: 1;\n  border-color: rgba(0, 0, 0, var(--tw-border-opacity));\n}\n\n.default-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.default-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.secondary-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(107, 114, 128, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.secondary-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(75, 85, 99, var(--tw-bg-opacity));\n}\n\n.invisible {\n  visibility: hidden;\n}\n\n.absolute {\n  position: absolute;\n}\n\n.relative {\n  position: relative;\n}\n\n.top-full {\n  top: 100%;\n}\n\n.right-0 {\n  right: 0px;\n}\n\n.\\!z-10 {\n  z-index: 10 !important;\n}\n\n.mx-auto {\n  margin-left: auto;\n  margin-right: auto;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-auto {\n  margin-left: auto;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.flex {\n  display: flex;\n}\n\n.grid {\n  display: grid;\n}\n\n.hidden {\n  display: none;\n}\n\n.h-16 {\n  height: 4rem;\n}\n\n.h-8 {\n  height: 2rem;\n}\n\n.h-\\[100vh\\] {\n  height: 100vh;\n}\n\n.h-10 {\n  height: 2.5rem;\n}\n\n.h-40 {\n  height: 10rem;\n}\n\n.w-full {\n  width: 100%;\n}\n\n.w-8 {\n  width: 2rem;\n}\n\n.w-56 {\n  width: 14rem;\n}\n\n.w-60 {\n  width: 15rem;\n}\n\n.w-1\\/4 {\n  width: 25%;\n}\n\n.w-10 {\n  width: 2.5rem;\n}\n\n.flex-shrink-0 {\n  flex-shrink: 0;\n}\n\n.grid-cols-8 {\n  grid-template-columns: repeat(8, minmax(0, 1fr));\n}\n\n.flex-row {\n  flex-direction: row;\n}\n\n.flex-col {\n  flex-direction: column;\n}\n\n.items-center {\n  align-items: center;\n}\n\n.justify-end {\n  justify-content: flex-end;\n}\n\n.justify-center {\n  justify-content: center;\n}\n\n.justify-between {\n  justify-content: space-between;\n}\n\n.gap-4 {\n  gap: 1rem;\n}\n\n.gap-x-3 {\n  -moz-column-gap: 0.75rem;\n       column-gap: 0.75rem;\n}\n\n.gap-x-1 {\n  -moz-column-gap: 0.25rem;\n       column-gap: 0.25rem;\n}\n\n.overflow-x-hidden {\n  overflow-x: hidden;\n}\n\n.overflow-y-scroll {\n  overflow-y: scroll;\n}\n\n.rounded-sm {\n  border-radius: 0.125rem;\n}\n\n.rounded-md {\n  border-radius: 0.375rem;\n}\n\n.border-\\[1px\\] {\n  border-width: 1px;\n}\n\n.border-b-\\[1px\\] {\n  border-bottom-width: 1px;\n}\n\n.border-r-\\[1px\\] {\n  border-right-width: 1px;\n}\n\n.border-gray-200 {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n}\n\n.border-gray-300 {\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n}\n\n.bg-gray-100 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.bg-white {\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bg-gray-700 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n}\n\n.bg-red-200 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n}\n\n.fill-current {\n  fill: currentColor;\n}\n\n.p-2 {\n  padding: 0.5rem;\n}\n\n.p-3 {\n  padding: 0.75rem;\n}\n\n.p-1 {\n  padding: 0.25rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-xl {\n  font-size: 1.25rem;\n  line-height: 1.75rem;\n}\n\n.text-sm {\n  font-size: 0.875rem;\n  line-height: 1.25rem;\n}\n\n.text-2xl {\n  font-size: 1.5rem;\n  line-height: 2rem;\n}\n\n.text-xs {\n  font-size: 0.75rem;\n  line-height: 1rem;\n}\n\n.font-bold {\n  font-weight: 700;\n}\n\n.text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.text-gray-600 {\n  --tw-text-opacity: 1;\n  color: rgba(75, 85, 99, var(--tw-text-opacity));\n}\n\n.text-gray-400 {\n  --tw-text-opacity: 1;\n  color: rgba(156, 163, 175, var(--tw-text-opacity));\n}\n\n.text-red-900 {\n  --tw-text-opacity: 1;\n  color: rgba(127, 29, 29, var(--tw-text-opacity));\n}\n\n.shadow-md {\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-sm {\n  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-lg {\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.transition-colors {\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.duration-500 {\n  transition-duration: 500ms;\n}\n\n.hover\\:bg-black:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-gray-200:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-indigo-300:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.hover\\:text-black:hover {\n  --tw-text-opacity: 1;\n  color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.group:focus-within .group-focus-within\\:visible {\n  visibility: visible;\n}\n\n.group:focus-within .group-focus-within\\:bg-gray-300 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.group:hover .group-hover\\:visible {\n  visibility: visible;\n}\n\n.group:hover .group-hover\\:text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:text-gray-700 {\n  --tw-text-opacity: 1;\n  color: rgba(55, 65, 81, var(--tw-text-opacity));\n}\n\n@media (min-width: 640px) {\n  .sm\\:grid-cols-2 {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 768px) {\n  .md\\:grid-cols-4 {\n    grid-template-columns: repeat(4, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1024px) {\n  .lg\\:grid-cols-5 {\n    grid-template-columns: repeat(5, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1280px) {\n  .xl\\:grid-cols-6 {\n    grid-template-columns: repeat(6, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1536px) {\n  .\\32xl\\:grid-cols-8 {\n    grid-template-columns: repeat(8, minmax(0, 1fr));\n  }\n}\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/components/Account/sideBar.vue",
    "content": "<template>\n  <aside class=\"flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px]\">\n    <a class=\"sidebar-item\" href=\"#\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n        <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n      </svg>\n      Beğeniler\n    </a>\n    <a class=\"sidebar-item\" href=\"#\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n      </svg>\n      Favoriler\n    </a>\n    <a class=\"sidebar-item\" href=\"#\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-2\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path\n          d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\"\n        />\n      </svg>\n      Hesabım\n    </a>\n  </aside>\n</template>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/components/Home/Sidebar.vue",
    "content": "<template>\n  <aside class=\"sidebar\">\n    <a v-for=\"category in categoryList\" :key=\"category.id\" class=\"sidebar-item\" href=\"#\" @click.prevent=\"$emit('category-changed', category.id)\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path\n          d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\"\n        />\n      </svg>\n      {{ category.name }}\n    </a>\n    <a class=\"sidebar-item\" href=\"#\" @click.prevent=\"$emit('category-changed', null)\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path\n          d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\"\n        />\n      </svg>\n      Tümünü Göster\n    </a>\n  </aside>\n</template>\n\n<script setup>\nimport { ref, inject, defineEmits } from \"vue\";\ndefineEmits([\"category-changed\"]);\nconst categoryList = ref([]);\nconst appAxios = inject(\"appAxios\");\nappAxios.get(\"/categories\").then(category_response => {\n  categoryList.value = category_response?.data || [];\n});\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/components/Shared/appBookmarkList/BookmarkListItem copy.vue",
    "content": "<template>\n  <div class=\"bg-white flex flex-col gap-x-3 rounded-md shadow-sm\">\n    <div class=\"p-3\">\n      <a :href=\"item.url\" target=\"_blank\" class=\"hover:text-black font-bold text-l mb-1 text-gray-600 text-center\">{{ item.title || \"-\" }}</a>\n      <div class=\"flex items-center justify-center mt-2 gap-x-1\">\n        <button\n          @click=\"likeItem\"\n          class=\"like-btn group\"\n          :class=\"{\n            'like-item-active': alreadyLiked\n          }\"\n        >\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n            <path\n              d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\"\n            />\n          </svg>\n        </button>\n        <button\n          @click=\"bookmarkItem\"\n          class=\"bookmark-btn group\"\n          :class=\"{\n            'bookmark-item-active': alreadyBookmarked\n          }\"\n        >\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" enable-background=\"new 0 0 24 24\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\">\n            <rect fill=\"none\" />\n            <path d=\"M17,11v6.97l-5-2.14l-5,2.14V5h6V3H7C5.9,3,5,3.9,5,5v16l7-3l7,3V11H17z M21,7h-2v2h-2V7h-2V5h2V3h2v2h2V7z\" />\n          </svg>\n        </button>\n        <div class=\"relative group\">\n          <button class=\"details-btn !-z-[1] group\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-gray-700\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zM6 12h2v2H6zm0-3h2v2H6zm0-3h2v2H6zm4 6h5v2h-5zm0-3h8v2h-8zm0-3h8v2h-8z\" />\n            </svg>\n            <p class=\"details-container\">\n              {{ item.description }}\n            </p>\n          </button>\n        </div>\n      </div>\n      <div class=\"text-xs text-gray-400 mt-2 flex justify-between\">\n        <a href=\"#\" class=\"hover:text-black\"> {{ userName }} </a>\n        <span>14 Mart</span>\n      </div>\n    </div>\n    <div class=\"bg-red-200 p-1 mt-auto text-red-900 text-center text-sm\">{{ categoryName }}</div>\n  </div>\n</template>\n<script>\nimport { mapGetters } from \"vuex\";\nexport default {\n  props: {\n    item: {\n      type: Object,\n      required: true,\n      default: () => {}\n    }\n  },\n  methods: {\n    likeItem() {\n      this.$appAxios({\n        url: this.alreadyLiked ? `/user_likes/${this.likedItem.id}` : \"/user_likes\",\n        method: this.alreadyLiked ? \"DELETE\" : \"POST\",\n        data: {\n          userId: this._getCurrentUser.id,\n          bookmarkId: this.item.id\n        }\n      }).then(user_like_response => {\n        let bookmarks = [...this._userLikes];\n        if (this.alreadyLiked) {\n          bookmarks = bookmarks.filter(b => b.id !== this.likedItem.id);\n        } else {\n          bookmarks = [...bookmarks, user_like_response.data];\n        }\n        this.$store.commit(\"setLikes\", bookmarks);\n      });\n    },\n    bookmarkItem() {\n      this.$appAxios({\n        url: this.alreadyBookmarked ? `/user_bookmarks/${this.bookmarkedItem.id}` : \"/user_bookmarks\",\n        method: this.alreadyBookmarked ? \"DELETE\" : \"POST\",\n        data: {\n          userId: this._getCurrentUser.id,\n          bookmarkId: this.item.id\n        }\n      }).then(user_bookmark_response => {\n        let bookmarks = [...this._userBookmarks];\n        if (this.alreadyBookmarked) {\n          bookmarks = bookmarks.filter(b => b.id !== this.bookmarkedItem.id);\n        } else {\n          bookmarks = [...bookmarks, user_bookmark_response.data];\n        }\n        this.$store.commit(\"setBookmarks\", bookmarks);\n      });\n    }\n  },\n  computed: {\n    categoryName() {\n      return this.item?.category?.name || \"-\";\n    },\n    userName() {\n      return this.item?.user?.fullname || \"-\";\n    },\n    alreadyLiked() {\n      return Boolean(this.likedItem);\n    },\n    alreadyBookmarked() {\n      return Boolean(this.bookmarkedItem);\n    },\n    bookmarkedItem() {\n      return this._userBookmarks?.find(b => b.bookmarkId === this.item.id);\n    },\n    likedItem() {\n      return this._userLikes?.find(b => b.bookmarkId === this.item.id);\n    },\n    ...mapGetters([\"_getCurrentUser\", \"_userLikes\", \"_userBookmarks\"])\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/components/Shared/appBookmarkList/BookmarkListItem.vue",
    "content": "<script setup>\n/* eslint-disable no-unused-vars */\nimport { defineProps } from \"vue\";\nimport BookmarkListItem from \"@/composables/BookmarkListItem\";\nconst props = defineProps({\n  item: {\n    type: Object,\n    required: true,\n    default: () => {}\n  }\n});\nconst { likeItem, bookmarkItem, categoryName, userName, alreadyBookmarked, alreadyLiked, bookmarkedItem, likedItem, _getCurrentUser, _userBookmarks, _userLikes } = BookmarkListItem(props.item);\n</script>\n\n<template>\n  <div class=\"bg-white flex flex-col gap-x-3 rounded-md shadow-sm\">\n    <div class=\"p-3\">\n      <a :href=\"props.item.url\" target=\"_blank\" class=\"hover:text-black font-bold text-l mb-1 text-gray-600 text-center\">{{ props.item.title || \"-\" }}</a>\n      <div class=\"flex items-center justify-center mt-2 gap-x-1\">\n        <button\n          @click=\"likeItem\"\n          class=\"like-btn group\"\n          :class=\"{\n            'like-item-active': alreadyLiked\n          }\"\n        >\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n            <path\n              d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\"\n            />\n          </svg>\n        </button>\n        <button\n          @click=\"bookmarkItem\"\n          class=\"bookmark-btn group\"\n          :class=\"{\n            'bookmark-item-active': alreadyBookmarked\n          }\"\n        >\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" enable-background=\"new 0 0 24 24\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\">\n            <rect fill=\"none\" />\n            <path d=\"M17,11v6.97l-5-2.14l-5,2.14V5h6V3H7C5.9,3,5,3.9,5,5v16l7-3l7,3V11H17z M21,7h-2v2h-2V7h-2V5h2V3h2v2h2V7z\" />\n          </svg>\n        </button>\n        <div class=\"relative group\">\n          <button class=\"details-btn !-z-[1] group\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-gray-700\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zM6 12h2v2H6zm0-3h2v2H6zm0-3h2v2H6zm4 6h5v2h-5zm0-3h8v2h-8zm0-3h8v2h-8z\" />\n            </svg>\n            <p class=\"details-container\">\n              {{ props.item.description }}\n            </p>\n          </button>\n        </div>\n      </div>\n      <div class=\"text-xs text-gray-400 mt-2 flex justify-between\">\n        <a href=\"#\" class=\"hover:text-black\"> {{ userName }} </a>\n        <span>14 Mart</span>\n      </div>\n    </div>\n    <div class=\"bg-red-200 p-1 mt-auto text-red-900 text-center text-sm\">{{ categoryName }}</div>\n  </div>\n</template>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/components/Shared/appBookmarkList/index.vue",
    "content": "<template>\n  <div class=\"w-full\">\n    <div class=\"p-2 grid 2xl:grid-cols-8 xl:grid-cols-6 lg:grid-cols-5 md:grid-cols-4 sm:grid-cols-2 gap-4\">\n      <BookmarkListItem v-for=\"item in props.items\" :key=\"item.id\" :item=\"item\" />\n    </div>\n  </div>\n</template>\n<script setup>\nimport BookmarkListItem from \"./BookmarkListItem\";\nimport { defineProps } from \"vue\";\nconst props = defineProps({\n  items: {\n    type: Array,\n    required: true,\n    default: () => []\n  }\n});\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/components/Shared/appHeader.vue",
    "content": "<template>\n  <div class=\"header-container\">\n    <nav class=\"flex w-full px-2\">\n      <div class=\"flex text-xl\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n          <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n          <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n        </svg>\n        BookLike\n      </div>\n\n      <div v-if=\"_isAuthenticated\" class=\"ml-auto flex items-center\">\n        <router-link :to=\"{ name: 'NewBookmarkPage' }\" class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n          </svg>\n          New\n        </router-link>\n        <div class=\"relative group\">\n          <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n            </svg>\n          </button>\n          <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n            <router-link class=\"mb-2 menu-item\" :to=\"{ name: 'Settings' }\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path\n                  d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\"\n                />\n              </svg>\n              Account\n            </router-link>\n\n            <router-link class=\"mb-2 menu-item\" :to=\"{ name: 'Favorites' }\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n              </svg>\n              Favorites\n            </router-link>\n\n            <router-link class=\"mb-2 menu-item\" :to=\"{ name: 'Likes' }\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n                <path\n                  d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\"\n                />\n              </svg>\n              Likes\n            </router-link>\n            <a @click=\"onLogout\" href=\"#\" class=\"menu-item\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                <g>\n                  <path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" />\n                </g>\n              </svg>\n              Logout</a\n            >\n          </nav>\n        </div>\n      </div>\n    </nav>\n  </div>\n</template>\n\n<script setup>\nimport { computed } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useRouter } from \"vue-router\";\nconst store = useStore();\nconst router = useRouter();\n\nconst onLogout = () => {\n  store.commit(\"logoutUser\");\n  router.push({ name: \"LoginPage\" });\n};\n\nconst _isAuthenticated = computed(() => store.getters._isAuthenticated);\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/composables/BookmarkListItem.js",
    "content": "import { inject, computed } from \"vue\";\nimport { useStore } from \"vuex\";\nexport default function(item) {\n  const store = useStore();\n  const appAxios = inject(\"appAxios\");\n\n  const likeItem = () => {\n    appAxios({\n      url: alreadyLiked.value ? `/user_likes/${likedItem.value.id}` : \"/user_likes\",\n      method: alreadyLiked.value ? \"DELETE\" : \"POST\",\n      data: {\n        userId: _getCurrentUser.value.id,\n        bookmarkId: item.id\n      }\n    }).then(user_like_response => {\n      let bookmarks = [..._userLikes.value];\n      if (alreadyLiked.value) {\n        bookmarks = bookmarks.filter(b => b.id !== likedItem.value.id);\n      } else {\n        bookmarks = [...bookmarks, user_like_response.data];\n      }\n      store.commit(\"setLikes\", bookmarks);\n    });\n  };\n  const bookmarkItem = () => {\n    appAxios({\n      url: alreadyBookmarked.value ? `/user_bookmarks/${bookmarkedItem.value.id}` : \"/user_bookmarks\",\n      method: alreadyBookmarked.value ? \"DELETE\" : \"POST\",\n      data: {\n        userId: _getCurrentUser.value.id,\n        bookmarkId: item.id\n      }\n    }).then(user_bookmark_response => {\n      let bookmarks = [..._userBookmarks.value];\n      if (alreadyBookmarked.value) {\n        bookmarks = bookmarks.filter(b => b.id !== bookmarkedItem.value.id);\n      } else {\n        bookmarks = [...bookmarks, user_bookmark_response.data];\n      }\n      store.commit(\"setBookmarks\", bookmarks);\n    });\n  };\n  const categoryName = computed(() => item?.category?.name || \"-\");\n  const userName = computed(() => item?.user?.fullname || \"-\");\n  const alreadyLiked = computed(() => Boolean(likedItem.value));\n  const alreadyBookmarked = computed(() => Boolean(bookmarkedItem.value));\n\n  const bookmarkedItem = computed(() => _userBookmarks.value?.find(b => b.bookmarkId === item.id));\n  const likedItem = computed(() => _userLikes.value?.find(b => b.bookmarkId === item.id));\n  const _getCurrentUser = computed(() => store.getters._getCurrentUser);\n  const _userLikes = computed(() => store.getters._userLikes);\n  const _userBookmarks = computed(() => store.getters._userBookmarks);\n\n  return { likeItem, bookmarkItem, categoryName, userName, alreadyBookmarked, alreadyLiked, bookmarkedItem, likedItem, _getCurrentUser, _userBookmarks, _userLikes };\n}\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./store\";\nimport { appAxios } from \"@/utils/appAxios\";\nimport \"@/assets/style.css\";\n\nimport appHeader from \"@/components/Shared/appHeader\";\nimport appBookmarkList from \"@/components/Shared/appBookmarkList\";\n\nimport io from \"socket.io-client\";\nconst socket = io(\"http://localhost:2018\");\n\nconst app = createApp(App);\napp.component(\"AppHeader\", appHeader);\napp.component(\"appBookmarkList\", appBookmarkList);\napp.use(router);\napp.use(store);\napp.config.globalProperties.$log = console.log;\napp.config.globalProperties.$appAxios = appAxios;\n// app.config.globalProperties.$socket = socket;\napp.provide(\"socket\", socket);\napp.provide(\"appAxios\", appAxios);\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/router/index.js",
    "content": "import { createRouter, createWebHashHistory } from \"vue-router\";\nimport store from \"../store\";\nconst routes = [\n  {\n    name: \"HomePage\",\n    path: \"/\",\n    component: () => import(\"@/views/Home\")\n  },\n  {\n    name: \"LoginPage\",\n    path: \"/login\",\n    component: () => import(\"@/views/Login\")\n  },\n  {\n    name: \"RegisterPage\",\n    path: \"/register\",\n    component: () => import(\"@/views/Register\")\n  },\n  {\n    name: \"NewBookmarkPage\",\n    path: \"/new\",\n    component: () => import(\"@/views/NewBookmark\")\n  },\n  {\n    name: \"Favorites\",\n    path: \"/favorites\",\n    meta: {\n      componentName: \"appBookmarkList\"\n    },\n    component: () => import(\"@/views/Account\")\n  },\n  {\n    name: \"Likes\",\n    path: \"/likes\",\n    meta: {\n      componentName: \"appBookmarkList\"\n    },\n    component: () => import(\"@/views/Account\")\n  },\n  {\n    name: \"Settings\",\n    path: \"/settings\",\n    meta: {\n      componentName: \"userSettings\"\n    },\n    component: () => import(\"@/views/Account\")\n  }\n];\n\nconst router = createRouter({\n  routes,\n  history: createWebHashHistory()\n});\n\nrouter.beforeEach((to, _, next) => {\n  const authRequiredRoutes = [\"HomePage\"];\n  const authNotRequiredRoutes = [\"LoginPage\", \"RegisterPage\"];\n  const _isAuthenticated = store.getters._isAuthenticated;\n\n  if (authNotRequiredRoutes.indexOf(to.name) > -1 && _isAuthenticated) next(false);\n\n  if (authRequiredRoutes.indexOf(to.name) > -1) {\n    if (_isAuthenticated) next();\n    else next({ name: \"LoginPage\" });\n  } else {\n    next();\n  }\n});\n\nexport default router;\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/store/index.js",
    "content": "import { createStore } from \"vuex\";\nimport createPersistedState from \"vuex-persistedstate\";\n\nimport SecureLS from \"secure-ls\";\nvar ls = new SecureLS({ isCompression: false });\n\nexport default createStore({\n  state: {\n    user: null,\n    saltKey: \"booklike123!456?\"\n  },\n  mutations: {\n    setUser(state, user) {\n      console.log(\"user :>> \", user);\n      state.user = user;\n    },\n    logoutUser(state) {\n      state.user = null;\n    },\n    setLikes(state, bookmarkIds) {\n      state.user.likes = bookmarkIds;\n    },\n    setBookmarks(state, bookmarkIds) {\n      state.user.bookmarks = bookmarkIds;\n    }\n  },\n  getters: {\n    _isAuthenticated: state => state.user !== null,\n    _getCurrentUser(state) {\n      const user = state.user;\n      //   if(user !== null && user.hasOwnProperty(\"password\")){\n      //       delete user.password;\n      //   }\n      delete user?.password;\n      return user;\n    },\n    _userLikes: state => state.user?.likes || [],\n    _userBookmarks: state => state.user?.bookmarks || [],\n    _currentUserId: state => state?.user?.id,\n    _saltKey: state => state.saltKey\n  },\n  plugins: [\n    createPersistedState({\n      storage: {\n        getItem: key => ls.get(key),\n        setItem: (key, value) => ls.set(key, value),\n        removeItem: key => ls.remove(key)\n      }\n    })\n  ]\n});\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/utils/appAxios.js",
    "content": "import axios from \"axios\";\nexport const appAxios = axios.create({\n  baseURL: \"http://localhost:3000\"\n});\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/views/Account.vue",
    "content": "<template>\n  <AppHeader />\n  <div class=\"flex flex-row\">\n    <side-bar />\n    <!-- <component :is=\"$route.meta.componentName\" :items=\"bookmarkList\" /> -->\n    <!-- {{ $log($route) }} -->\n    <!-- <app-bookmark-list v-if=\"bookmarkList.length > 0\" :items=\"bookmarkList\" />\n    <div v-else>Bookmark bulunmamaktadır..</div> -->\n  </div>\n</template>\n\n<script setup>\nimport sideBar from \"@/components/Account/sideBar\";\nimport { ref, inject } from \"vue\";\nconst appAxios = inject(\"appAxios\");\nconst bookmarkList = ref([]);\nappAxios.get(\"/bookmarks?_expand=category&_expand=user\").then(bookmark_list_response => {\n  bookmarkList.value = bookmark_list_response?.data || [];\n});\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/views/Favorites.vue",
    "content": ""
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/views/Home.vue",
    "content": "<template>\n  <AppHeader />\n  <div class=\"flex flex-row\">\n    <Sidebar @category-changed=\"updateBookmarkList\" />\n    <app-bookmark-list v-if=\"bookmarkList.length > 0\" :items=\"bookmarkList\" />\n    <div v-else>Bookmark bulunmamaktadır..</div>\n  </div>\n</template>\n<script setup>\nimport Sidebar from \"@/components/Home/Sidebar\";\nimport { ref, onMounted, inject } from \"vue\";\nimport { useStore } from \"vuex\";\nconst appAxios = inject(\"appAxios\");\nconst socket = inject(\"socket\");\nconst bookmarkList = ref([]);\nconst store = useStore();\n\nonMounted(() => {\n  socket.on(\"NEW_BOOKMARK_ADDED\", bookmark => {\n    bookmarkList.value.push(bookmark);\n  });\n});\n\nconst fetchData = () => {\n  appAxios.get(\"/bookmarks?_expand=category&_expand=user\").then(bookmark_list_response => {\n    bookmarkList.value = bookmark_list_response?.data || [];\n  });\n  //! Bookmark olarak eklediklerimizi çekmek için user_bookmarks üzerinden çekelim..\n  appAxios.get(\"/user_bookmarks/?_expand=bookmark&_expand=user\").then(user_bookmark_response => {\n    store.commit(\"setBookmarks\", user_bookmark_response?.data);\n  });\n\n  //! Like olarak eklediklerimizi çekmek için user_likes üzerinden çekelim..\n  appAxios.get(\"/user_likes/?_expand=bookmark&_expand=user\").then(user_likes_response => {\n    store.commit(\"setLikes\", user_likes_response?.data);\n  });\n};\nconst updateBookmarkList = categoryId => {\n  const url = categoryId ? `/bookmarks?_expand=category&_expand=user&categoryId=${categoryId}` : `/bookmarks?_expand=category&_expand=user`;\n  appAxios.get(url).then(bookmark_list_response => {\n    bookmarkList.value = bookmark_list_response?.data || [];\n  });\n};\n\nfetchData();\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/views/Login.vue",
    "content": "<template>\n  <div class=\"login_register_container\">\n    <h3 class=\"text-2xl text-center mb-3\">Giriş Yap</h3>\n    <input v-model=\"userData.username\" type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n    <input v-model=\"userData.password\" type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n    <button @click=\"onSubmit\" class=\"default-button\">Giriş yap</button>\n    <span class=\"text-center mt-3 text-sm\">\n      Üye değilim,\n      <router-link :to=\"{ name: 'RegisterPage' }\" class=\"text-red-900 hover:text-black\">\n        Üye olmak istiyorum!\n      </router-link>\n    </span>\n  </div>\n</template>\n<script setup>\nimport { ref, inject } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useRouter } from \"vue-router\";\nimport CryptoJS from \"crypto-js\";\nconst appAxios = inject(\"appAxios\");\nconst store = useStore();\nconst router = useRouter();\n\nconst userData = ref({\n  username: null,\n  password: null\n});\n\nconst onSubmit = () => {\n  const password = CryptoJS.HmacSHA1(userData.value.password, store.getters._saltKey).toString();\n  appAxios\n    .get(`/users?username=${userData.value.username}&password=${password}`)\n    .then(login_response => {\n      if (login_response?.data?.length > 0) {\n        store.commit(\"setUser\", login_response?.data[0]);\n        router.push({ name: \"HomePage\" });\n      } else {\n        alert(\"Böyle bir kullanıcı bulunamadı...\");\n      }\n    })\n    .catch(e => console.log(e));\n  // .finally(() => this.loader = false)\n};\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/views/NewBookmark.vue",
    "content": "<template>\n  <div class=\"login_register_container\">\n    <h3 class=\"text-2xl text-center mb-3\">Yeni Ekle</h3>\n    <input ref=\"title\" v-model=\"userData.title\" type=\"text\" placeholder=\"Başlık\" class=\"input mb-3\" />\n    <input v-model=\"userData.url\" type=\"text\" placeholder=\"URL\" class=\"input mb-3\" />\n    <select v-model=\"userData.categoryId\" class=\"input mb-3\">\n      <option disabled value=\"\" selected>Kategori</option>\n      <option v-for=\"category in categoryList\" :key=\"category.id\" :value=\"category.id\">{{ category.name }} </option>\n    </select>\n    <textarea v-model=\"userData.description\" placeholder=\"Açıklama\" class=\"input mb-3\" cols=\"30\" rows=\"10\"></textarea>\n    <div class=\"flex items-center justify-end gap-x-1\">\n      <button @click=\"$router.push({ name: 'HomePage' })\" class=\"secondary-button\">İptal</button>\n      <button @click=\"onSave\" class=\"default-button\">Kaydet</button>\n    </div>\n  </div>\n</template>\n<script setup>\nimport { ref, inject, computed, onMounted } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useRouter } from \"vue-router\";\nconst appAxios = inject(\"appAxios\");\nconst socket = inject(\"socket\");\nconst store = useStore();\nconst router = useRouter();\nconst categoryList = ref([]);\nconst userData = ref({\n  title: null,\n  url: null,\n  categoryId: null,\n  description: null\n});\nonMounted(() => {\n  appAxios.get(\"/categories\").then(category_response => {\n    categoryList.value = category_response?.data || [];\n  });\n});\n\nconst onSave = () => {\n  const saveData = {\n    ...userData.value,\n    userId: _getCurrentUser?.value.id,\n    created_at: new Date()\n  };\n  appAxios.post(\"/bookmarks\", saveData).then(save_bookmark_response => {\n    Object.keys(userData.value)?.forEach(field => (userData.value[field] = null));\n    const socketData = {\n      ...save_bookmark_response.data,\n      user: _getCurrentUser.value,\n      category: categoryList.value?.find(c => c.id === saveData.categoryId)\n    };\n    socket.emit(\"NEW_BOOKMARK_EVENT\", socketData);\n    router.push({ name: \"HomePage\" });\n  });\n};\nconst _getCurrentUser = computed(() => store.getters._getCurrentUser);\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/client/src/views/Register.vue",
    "content": "<template>\n  <div class=\"login_register_container\">\n    <h3 class=\"text-2xl text-center mb-3\">Kayıt Ol</h3>\n    <input v-model=\"userData.fullname\" type=\"text\" placeholder=\"Tam Ad\" class=\"input mb-3\" />\n    <input v-model=\"userData.username\" type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n    <input v-model=\"userData.password\" type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n    <button class=\"default-button\" @click=\"onSave\">Kayıt ol</button>\n    <span class=\"text-center mt-3 text-sm\">\n      Zaten Üyeyim,\n      <router-link :to=\"{ name: 'LoginPage' }\" class=\"text-red-900 hover:text-black\">\n        Giriş yap!\n      </router-link>\n    </span>\n  </div>\n</template>\n<script setup>\nimport { ref, inject } from \"vue\";\nimport { useStore } from \"vuex\";\nimport { useRouter } from \"vue-router\";\nimport CryptoJS from \"crypto-js\";\nconst appAxios = inject(\"appAxios\");\nconst store = useStore();\nconst router = useRouter();\n\nconst userData = ref({\n  username: null,\n  fullname: null,\n  password: null\n});\n\nconst onSave = () => {\n  const password = CryptoJS.HmacSHA1(userData.value.password, store.getters._saltKey).toString();\n  appAxios.post(\"/users\", { ...userData.value, password }).then(() => {\n    router.push({ name: \"HomePage\" });\n  });\n};\n</script>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/server/app.js",
    "content": "const socketio = require(\"socket.io\");\nconst express = require(\"express\");\nconst http = require(\"http\");\nconst app = express();\n\nconst PORT = process.env.PORT || 2018;\n\nconst server = http.createServer(app);\n\nconst io = socketio(server, {\n  cors: {\n    origin: \"*\",\n    methods: [\"GET\", \"POST\", \"OPTIONS\"]\n  }\n});\n\nserver.listen(PORT, () => {\n  io.on(\"connection\", socket => {\n    console.log(\"HOPPAAAAAAAA\");\n    console.log(socket.id);\n    //! Karşılama Mesajı Gönder...\n    // io.in(roomID).emit()\n    socket.emit(\"WELCOME_MESSAGE\", `Oooooo ${socket.id} kardeşim ojgeldin be yaa...`);\n    socket.on(\"NEW_BOOKMARK_EVENT\", bookmark => {\n      console.log(\"bookmark :>> \", bookmark);\n      // io.emit(\"NEW_BOOKMARK_ADDED\", bookmark);\n      //! Gonderen hariç herkese bookmark bilgisini gonder..\n      socket.broadcast.emit(\"NEW_BOOKMARK_ADDED\", bookmark);\n    });\n  });\n});\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/server/package.json",
    "content": "{\n  \"name\": \"server\",\n  \"version\": \"1.0.0\",\n  \"description\": \"\",\n  \"main\": \"index.js\",\n  \"scripts\": {\n    \"start\": \"nodemon app.js\",\n    \"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n  },\n  \"keywords\": [],\n  \"author\": \"\",\n  \"license\": \"ISC\",\n  \"dependencies\": {\n    \"cors\": \"^2.8.5\",\n    \"express\": \"^4.17.1\",\n    \"socket.io\": \"^4.2.0\"\n  },\n  \"devDependencies\": {\n    \"nodemon\": \"^2.0.12\"\n  }\n}"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/.prettierrc",
    "content": "{\n    \"printWidth\": 500\n}"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/account.html",
    "content": "<!DOCTYPE html>\n<html lang=\"tr\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\" id=\"app\">\n    <!-- ! HEADER -->\n    <div class=\"bg-white border-gray-200 border-b-[1px] h-16 w-full flex items-center justify-center\">\n      <nav class=\"flex w-full px-2\">\n        <div class=\"flex text-xl\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n          </svg>\n          SocialMark\n        </div>\n        <div class=\"hidden\">\n          <a class=\"mr-3 navbar-item\" href=\"#\">Home</a>\n          <a class=\"mr-3 navbar-item\" href=\"#\">My Posts</a>\n          <a class=\"navbar-item\" href=\"#\">Favorites</a>\n        </div>\n\n        <div class=\"ml-auto flex items-center\">\n          <button class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n            </svg>\n            New\n          </button>\n          <div class=\"relative group\">\n            <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n              </svg>\n            </button>\n            <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n                </svg>\n                Account\n              </a>\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n                </svg>\n                Favorites</a\n              >\n              <a href=\"#\" class=\"menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                  <g><path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" /></g>\n                </svg>\n                Logout</a\n              >\n            </nav>\n          </div>\n        </div>\n      </nav>\n    </div>\n    <div class=\"flex flex-row\">\n      <!-- ! HEADER -->\n      <aside class=\"flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px]\">\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n          </svg>\n          Beğeniler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n          </svg>\n          Favoriler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-2\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n          </svg>\n          Hesabım\n        </a>\n      </aside>\n      <!-- ! HEADER -->\n\n      <!--!Bookmark Items -->\n      <div class=\"account_container mx-auto flex flex-col w-1/4\">\n        <h3 class=\"text-2xl text-center mb-3\">Hesabım</h3>\n        <input type=\"text\" placeholder=\"Tam Ad\" class=\"input mb-3\" />\n        <input type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n        <input type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n        <button class=\"default-button\">Kaydet</button>\n      </div>\n    </div>\n    <script src=\"assets/app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/assets/app.js",
    "content": "const app = Vue.createApp({}).mount(\"#app\");\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/assets/style.css",
    "content": "/*! tailwindcss v2.2.7 | MIT License | https://tailwindcss.com */\n\n/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\nhtml {\n  -moz-tab-size: 4;\n  -o-tab-size: 4;\n     tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n  line-height: 1.15;\n  /* 1 */\n  -webkit-text-size-adjust: 100%;\n  /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n  margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n  font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n  height: 0;\n  /* 1 */\n  color: inherit;\n  /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n  -webkit-text-decoration: underline dotted;\n          text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n  font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n  font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace;\n  /* 1 */\n  font-size: 1em;\n  /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n  font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n  font-size: 75%;\n  line-height: 0;\n  position: relative;\n  vertical-align: baseline;\n}\n\nsub {\n  bottom: -0.25em;\n}\n\nsup {\n  top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n  text-indent: 0;\n  /* 1 */\n  border-color: inherit;\n  /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  font-family: inherit;\n  /* 1 */\n  font-size: 100%;\n  /* 1 */\n  line-height: 1.15;\n  /* 1 */\n  margin: 0;\n  /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect {\n  /* 1 */\n  text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n  -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n::-moz-focus-inner {\n  border-style: none;\n  padding: 0;\n}\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n:-moz-focusring {\n  outline: 1px dotted ButtonText;\n}\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n:-moz-ui-invalid {\n  box-shadow: none;\n}\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n  padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n  vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n  height: auto;\n}\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n  -webkit-appearance: textfield;\n  /* 1 */\n  outline-offset: -2px;\n  /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n  -webkit-appearance: none;\n}\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n::-webkit-file-upload-button {\n  -webkit-appearance: button;\n  /* 1 */\n  font: inherit;\n  /* 2 */\n}\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n  display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n  margin: 0;\n}\n\nbutton {\n  background-color: transparent;\n  background-image: none;\n}\n\nfieldset {\n  margin: 0;\n  padding: 0;\n}\n\nol,\nul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n *    sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n *    to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n  /* 1 */\n  line-height: 1.5;\n  /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n  font-family: inherit;\n  line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n *    We used to set this in the html element and inherit from\n *    the parent element for everything else. This caused issues\n *    in shadow-dom-enhanced elements like <details> where the content\n *    is wrapped by a div with box-sizing set to `content-box`.\n *\n *    https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n *    By default, the way the browser specifies that an element should have no\n *    border is by setting it's border-style to `none` in the user-agent\n *    stylesheet.\n *\n *    In order to easily add borders to elements by just setting the `border-width`\n *    property, we change the default border-style for all elements to `solid`, and\n *    use border-width to hide them instead. This way our `border` utilities only\n *    need to set the `border-width` property instead of the entire `border`\n *    shorthand, making our border utilities much more straightforward to compose.\n *\n *    https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n  /* 1 */\n  border-width: 0;\n  /* 2 */\n  border-style: solid;\n  /* 2 */\n  border-color: currentColor;\n  /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n  border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n  border-style: solid;\n}\n\ntextarea {\n  resize: vertical;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\nbutton,\n[role=\"button\"] {\n  cursor: pointer;\n}\n\ntable {\n  border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n  font-size: inherit;\n  font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n  color: inherit;\n  text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  padding: 0;\n  line-height: inherit;\n  color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * 1. Make replaced elements `display: block` by default as that's\n *    the behavior you want almost all of the time. Inspired by\n *    CSS Remedy, with `svg` added as well.\n *\n *    https://github.com/mozdevs/cssremedy/issues/14\n * \n * 2. Add `vertical-align: middle` to align replaced elements more\n *    sensibly by default when overriding `display` by adding a\n *    utility like `inline`.\n *\n *    This can trigger a poorly considered linting error in some\n *    tools but is included by design.\n * \n *    https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n  display: block;\n  /* 1 */\n  vertical-align: middle;\n  /* 2 */\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their intrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n  max-width: 100%;\n  height: auto;\n}\n\n/**\n * Ensure the default browser behavior of the `hidden` attribute.\n */\n\n[hidden] {\n  display: none;\n}\n\n*, ::before, ::after {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-ring-offset-shadow: 0 0 #0000;\n  --tw-ring-shadow: 0 0 #0000;\n  --tw-shadow: 0 0 #0000;\n}\n\n.like-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.like-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.like-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(199, 210, 254, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(55, 48, 163, var(--tw-text-opacity));\n}\n\n.bookmark-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.bookmark-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(252, 165, 165, var(--tw-bg-opacity));\n}\n\n.bookmark-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(153, 27, 27, var(--tw-text-opacity));\n}\n\n.details-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.details-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.group:focus-within .details-btn {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.sidebar {\n  display: flex;\n  height: 100vh;\n  width: 15rem;\n  flex-shrink: 0;\n  flex-direction: column;\n  border-right-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.details-container {\n  visibility: hidden;\n  position: absolute;\n  right: 0px;\n  top: 100%;\n  z-index: 10 !important;\n  height: 10rem;\n  width: 15rem;\n  overflow-y: scroll;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  text-align: left;\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.group:focus-within .details-container {\n  visibility: visible;\n}\n\n.group:hover .details-container {\n  visibility: visible;\n}\n\n.header-container {\n  display: flex;\n  height: 4rem;\n  width: 100%;\n  align-items: center;\n  justify-content: center;\n  border-bottom-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.navbar-item {\n  border-radius: 0.5rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(107, 114, 128, var(--tw-border-opacity));\n  padding: 0.5rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.navbar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.menu-item {\n  display: flex;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.menu-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.sidebar-item {\n  display: flex;\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n  --tw-text-opacity: 1;\n  color: rgba(107, 114, 128, var(--tw-text-opacity));\n}\n\n.sidebar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.login_register_container {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  margin: auto;\n  display: flex;\n  width: 91.666667%;\n  transform: translate(-50%, -50%);\n  flex-direction: column;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n@media (min-width: 640px) {\n  .login_register_container {\n    width: 50%;\n  }\n}\n\n@media (min-width: 768px) {\n  .login_register_container {\n    width: 33.333333%;\n  }\n}\n\n@media (min-width: 1024px) {\n  .login_register_container {\n    width: 25%;\n  }\n}\n\n.input {\n  border-radius: 0.125rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n  outline: 2px solid transparent;\n  outline-offset: 2px;\n}\n\n.input:focus {\n  --tw-border-opacity: 1;\n  border-color: rgba(0, 0, 0, var(--tw-border-opacity));\n}\n\n.default-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.default-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.secondary-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(107, 114, 128, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.secondary-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(75, 85, 99, var(--tw-bg-opacity));\n}\n\n.invisible {\n  visibility: hidden;\n}\n\n.absolute {\n  position: absolute;\n}\n\n.relative {\n  position: relative;\n}\n\n.top-full {\n  top: 100%;\n}\n\n.right-0 {\n  right: 0px;\n}\n\n.\\!z-10 {\n  z-index: 10 !important;\n}\n\n.mx-auto {\n  margin-left: auto;\n  margin-right: auto;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-auto {\n  margin-left: auto;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.flex {\n  display: flex;\n}\n\n.grid {\n  display: grid;\n}\n\n.hidden {\n  display: none;\n}\n\n.h-16 {\n  height: 4rem;\n}\n\n.h-8 {\n  height: 2rem;\n}\n\n.h-\\[100vh\\] {\n  height: 100vh;\n}\n\n.h-10 {\n  height: 2.5rem;\n}\n\n.h-40 {\n  height: 10rem;\n}\n\n.w-full {\n  width: 100%;\n}\n\n.w-8 {\n  width: 2rem;\n}\n\n.w-56 {\n  width: 14rem;\n}\n\n.w-60 {\n  width: 15rem;\n}\n\n.w-1\\/4 {\n  width: 25%;\n}\n\n.w-10 {\n  width: 2.5rem;\n}\n\n.flex-shrink-0 {\n  flex-shrink: 0;\n}\n\n.grid-cols-8 {\n  grid-template-columns: repeat(8, minmax(0, 1fr));\n}\n\n.flex-row {\n  flex-direction: row;\n}\n\n.flex-col {\n  flex-direction: column;\n}\n\n.items-center {\n  align-items: center;\n}\n\n.justify-end {\n  justify-content: flex-end;\n}\n\n.justify-center {\n  justify-content: center;\n}\n\n.justify-between {\n  justify-content: space-between;\n}\n\n.gap-4 {\n  gap: 1rem;\n}\n\n.gap-x-3 {\n  -moz-column-gap: 0.75rem;\n       column-gap: 0.75rem;\n}\n\n.gap-x-1 {\n  -moz-column-gap: 0.25rem;\n       column-gap: 0.25rem;\n}\n\n.overflow-x-hidden {\n  overflow-x: hidden;\n}\n\n.overflow-y-scroll {\n  overflow-y: scroll;\n}\n\n.rounded-sm {\n  border-radius: 0.125rem;\n}\n\n.rounded-md {\n  border-radius: 0.375rem;\n}\n\n.border-\\[1px\\] {\n  border-width: 1px;\n}\n\n.border-b-\\[1px\\] {\n  border-bottom-width: 1px;\n}\n\n.border-r-\\[1px\\] {\n  border-right-width: 1px;\n}\n\n.border-gray-200 {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n}\n\n.border-gray-300 {\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n}\n\n.bg-gray-100 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.bg-white {\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bg-gray-700 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n}\n\n.bg-red-200 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n}\n\n.fill-current {\n  fill: currentColor;\n}\n\n.p-2 {\n  padding: 0.5rem;\n}\n\n.p-3 {\n  padding: 0.75rem;\n}\n\n.p-1 {\n  padding: 0.25rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-xl {\n  font-size: 1.25rem;\n  line-height: 1.75rem;\n}\n\n.text-sm {\n  font-size: 0.875rem;\n  line-height: 1.25rem;\n}\n\n.text-2xl {\n  font-size: 1.5rem;\n  line-height: 2rem;\n}\n\n.text-xs {\n  font-size: 0.75rem;\n  line-height: 1rem;\n}\n\n.font-bold {\n  font-weight: 700;\n}\n\n.text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.text-gray-600 {\n  --tw-text-opacity: 1;\n  color: rgba(75, 85, 99, var(--tw-text-opacity));\n}\n\n.text-gray-400 {\n  --tw-text-opacity: 1;\n  color: rgba(156, 163, 175, var(--tw-text-opacity));\n}\n\n.text-red-900 {\n  --tw-text-opacity: 1;\n  color: rgba(127, 29, 29, var(--tw-text-opacity));\n}\n\n.shadow-md {\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-sm {\n  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-lg {\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.transition-colors {\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.duration-500 {\n  transition-duration: 500ms;\n}\n\n.hover\\:bg-black:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-gray-200:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-indigo-300:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.hover\\:text-black:hover {\n  --tw-text-opacity: 1;\n  color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.group:focus-within .group-focus-within\\:visible {\n  visibility: visible;\n}\n\n.group:focus-within .group-focus-within\\:bg-gray-300 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.group:hover .group-hover\\:visible {\n  visibility: visible;\n}\n\n.group:hover .group-hover\\:text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:text-gray-700 {\n  --tw-text-opacity: 1;\n  color: rgba(55, 65, 81, var(--tw-text-opacity));\n}\n\n@media (min-width: 640px) {\n  .sm\\:grid-cols-2 {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 768px) {\n  .md\\:grid-cols-4 {\n    grid-template-columns: repeat(4, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1024px) {\n  .lg\\:grid-cols-5 {\n    grid-template-columns: repeat(5, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1280px) {\n  .xl\\:grid-cols-6 {\n    grid-template-columns: repeat(6, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1536px) {\n  .\\32xl\\:grid-cols-8 {\n    grid-template-columns: repeat(8, minmax(0, 1fr));\n  }\n}\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/assets/tailwind.css",
    "content": "@tailwind base;\n@tailwind components;\n@tailwind utilities;\n\n@layer base {\n  .translate {\n    transform: translate(-50%, -50%);\n  }\n}\n\n@layer components {\n  .like-btn {\n    @apply flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-indigo-300 justify-center items-center;\n  }\n  .bookmark-btn {\n    @apply flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-black justify-center items-center;\n  }\n  .bookmark-item-active {\n    @apply text-red-700;\n  }\n  .details-btn {\n    @apply flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-gray-200 group-focus-within:bg-gray-300 justify-center items-center;\n  }\n\n  .sidebar {\n    @apply flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px];\n  }\n\n  .details-container {\n    @apply absolute !z-10 w-60 h-40 group-focus-within:visible right-0 top-full overflow-y-scroll group-hover:visible bg-white invisible rounded-md shadow-lg p-3 text-left border-gray-300 border-[1px];\n  }\n\n  .header-container {\n    @apply bg-white border-gray-200 border-b-[1px] h-16 w-full flex items-center justify-center;\n  }\n\n  .navbar-item {\n    @apply rounded-lg shadow-md border-[1px] p-2 border-gray-500 hover:bg-black hover:text-white transition-colors;\n  }\n  .menu-item {\n    @apply p-2 flex hover:bg-black hover:text-white rounded-md;\n  }\n\n  .sidebar-item {\n    @apply flex bg-white p-2 text-gray-500 px-2 py-3 hover:bg-black hover:text-white;\n  }\n\n  .login_register_container {\n    @apply bg-white rounded-md border-[1px] border-gray-300 w-1/4 md:w-1/2 m-auto absolute top-1/2 left-1/2 translate p-3 flex flex-col shadow-md;\n  }\n\n  .input {\n    @apply px-3 py-2 border rounded-sm border-gray-300 outline-none focus:border-black;\n  }\n\n  .default-button {\n    @apply bg-gray-700 p-2 text-white rounded-md hover:bg-black;\n  }\n\n  .secondary-button {\n    @apply bg-gray-500 p-2 text-white rounded-md hover:bg-gray-600;\n  }\n\n  .primary-button {\n    @apply bg-indigo-500 p-2 text-white rounded-md hover:bg-black;\n  }\n\n  .danger-button {\n    @apply bg-red-500 p-2 text-white rounded-md hover:bg-black;\n  }\n}\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/favorites.html",
    "content": "<!DOCTYPE html>\n<html lang=\"tr\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\" id=\"app\">\n    <!-- ! HEADER -->\n    <div class=\"bg-white border-gray-200 border-b-[1px] h-16 w-full flex items-center justify-center\">\n      <nav class=\"flex w-full px-2\">\n        <div class=\"flex text-xl\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n          </svg>\n          SocialMark\n        </div>\n        <div class=\"hidden\">\n          <a class=\"mr-3 navbar-item\" href=\"#\">Home</a>\n          <a class=\"mr-3 navbar-item\" href=\"#\">My Posts</a>\n          <a class=\"navbar-item\" href=\"#\">Favorites</a>\n        </div>\n\n        <div class=\"ml-auto flex items-center\">\n          <button class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n            </svg>\n            New\n          </button>\n          <div class=\"relative group\">\n            <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n              </svg>\n            </button>\n            <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n                </svg>\n                Account\n              </a>\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n                </svg>\n                Favorites</a\n              >\n              <a href=\"#\" class=\"menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                  <g><path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" /></g>\n                </svg>\n                Logout</a\n              >\n            </nav>\n          </div>\n        </div>\n      </nav>\n    </div>\n    <!-- ! HEADER -->\n    <div class=\"flex flex-row\">\n      <aside class=\"flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px]\">\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n          </svg>\n          Beğeniler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n          </svg>\n          Favoriler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-2\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n          </svg>\n          Hesabım\n        </a>\n      </aside>\n\n      <!--!Bookmark Items -->\n      <div>\n        <div class=\"p-2 grid grid-cols-8 gap-4\">\n          <div v-for=\"i in 10\" :key=\"i\" class=\"bg-white flex flex-col gap-x-3 rounded-md shadow-sm\">\n            <div class=\"p-3\">\n              <a href=\"#\" class=\"hover:text-black font-bold text-l mb-1 text-gray-600 text-center\">Vue3 Dokümantasyon</a>\n              <div class=\"flex items-center justify-center mt-2 gap-x-1\">\n                <button class=\"flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-indigo-300 group justify-center items-center\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                    <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n                    <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n                  </svg>\n                </button>\n                <button class=\"flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-black group justify-center items-center\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" enable-background=\"new 0 0 24 24\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\">\n                    <rect fill=\"none\" />\n                    <path d=\"M17,11v6.97l-5-2.14l-5,2.14V5h6V3H7C5.9,3,5,3.9,5,5v16l7-3l7,3V11H17z M21,7h-2v2h-2V7h-2V5h2V3h2v2h2V7z\" />\n                  </svg>\n                </button>\n                <div class=\"relative group\">\n                  <button class=\"!-z-[1] flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-gray-200 group-focus-within:bg-gray-300 group justify-center items-center\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-gray-700\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                      <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                      <path d=\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zM6 12h2v2H6zm0-3h2v2H6zm0-3h2v2H6zm4 6h5v2h-5zm0-3h8v2h-8zm0-3h8v2h-8z\" />\n                    </svg>\n                    <p class=\"absolute !z-10 w-60 h-40 group-focus-within:visible right-0 top-full overflow-y-scroll group-hover:visible bg-white invisible rounded-md shadow-lg p-3 text-left border-gray-300 border-[1px]\">Lorem, ipsum dolor sit amet consectetur adipisicing elit. Similique nemo consequatur a accusamus assumenda laborum consequuntur explicabo dolor, odit eligendi voluptate illum itaque accusantium, cumque tenetur cupiditate illo libero dolores!</p>\n                  </button>\n                </div>\n              </div>\n              <div class=\"text-xs text-gray-400 mt-2 flex justify-between\">\n                <a href=\"#\" class=\"hover:text-black\"> Gökhan Kandemir </a>\n                <span>14 Mart</span>\n              </div>\n            </div>\n            <div class=\"bg-red-200 p-1 text-red-900 text-center text-sm\">Vue.js</div>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"assets/app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"tr\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>SocialMark</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\" id=\"app\">\n    <!-- ! HEADER -->\n    <div class=\"header-container\">\n      <nav class=\"flex w-full px-2\">\n        <div class=\"flex text-xl\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n          </svg>\n          SocialMark\n        </div>\n        <div class=\"hidden\">\n          <a class=\"mr-3 navbar-item\" href=\"#\">Home</a>\n          <a class=\"mr-3 navbar-item\" href=\"#\">My Posts</a>\n          <a class=\"navbar-item\" href=\"#\">Favorites</a>\n        </div>\n\n        <div class=\"ml-auto flex items-center\">\n          <button class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n            </svg>\n            New\n          </button>\n          <div class=\"relative group\">\n            <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n              </svg>\n            </button>\n            <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n                </svg>\n                Account\n              </a>\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n                </svg>\n                Favorites</a\n              >\n              <a href=\"#\" class=\"menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                  <g><path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" /></g>\n                </svg>\n                Logout</a\n              >\n            </nav>\n          </div>\n        </div>\n      </nav>\n    </div>\n    <!-- ! HEADER -->\n    <div class=\"flex flex-row\">\n      <aside class=\"sidebar\">\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Vue.js\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Frontend\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Backend\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Web\n        </a>\n      </aside>\n\n      <!--!Bookmark Items -->\n      <div>\n        <div class=\"p-2 grid grid-cols-8 gap-4\">\n          <div v-for=\"i in 10\" :key=\"i\" class=\"bg-white flex flex-col gap-x-3 rounded-md shadow-sm\">\n            <div class=\"p-3\">\n              <a href=\"#\" class=\"hover:text-black font-bold text-l mb-1 text-gray-600 text-center\">Vue3 Dokümantasyon</a>\n              <div class=\"flex items-center justify-center mt-2 gap-x-1\">\n                <button class=\"like-btn group\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                    <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n                    <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n                  </svg>\n                </button>\n                <button class=\"bookmark-btn group bookmark-item-active\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" enable-background=\"new 0 0 24 24\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\">\n                    <rect fill=\"none\" />\n                    <path d=\"M17,11v6.97l-5-2.14l-5,2.14V5h6V3H7C5.9,3,5,3.9,5,5v16l7-3l7,3V11H17z M21,7h-2v2h-2V7h-2V5h2V3h2v2h2V7z\" />\n                  </svg>\n                </button>\n                <div class=\"relative group\">\n                  <button class=\"details-btn !-z-[1] group\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-gray-700\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                      <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                      <path d=\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zM6 12h2v2H6zm0-3h2v2H6zm0-3h2v2H6zm4 6h5v2h-5zm0-3h8v2h-8zm0-3h8v2h-8z\" />\n                    </svg>\n                    <p class=\"details-container\">Lorem, ipsum dolor sit amet consectetur adipisicing elit. Similique nemo consequatur a accusamus assumenda laborum consequuntur explicabo dolor, odit eligendi voluptate illum itaque accusantium, cumque tenetur cupiditate illo libero dolores!</p>\n                  </button>\n                </div>\n              </div>\n              <div class=\"text-xs text-gray-400 mt-2 flex justify-between\">\n                <a href=\"#\" class=\"hover:text-black\"> Gökhan Kandemir </a>\n                <span>14 Mart</span>\n              </div>\n            </div>\n            <div class=\"bg-red-200 p-1 text-red-900 text-center text-sm\">Vue.js</div>\n          </div>\n        </div>\n      </div>\n      <!--!Bookmark Items -->\n    </div>\n    <script src=\"assets/app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/login.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Login</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n  </head>\n  <body class=\"bg-gray-100\">\n    <div class=\"login_register_container\">\n      <h3 class=\"text-2xl text-center mb-3\">Login</h3>\n      <input type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n      <input type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n      <button class=\"default-button\">Giriş yap</button>\n      <span class=\"text-center mt-3 text-sm\">\n        Üye değilim,\n        <a href=\"#\" class=\"text-red-900 hover:text-black\">Üye olmak istiyorum!</a>\n      </span>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/new-bookmark.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Yeni Yer İşareti</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n  </head>\n  <body class=\"bg-gray-100\">\n    <div class=\"login_register_container\">\n      <h3 class=\"text-2xl text-center mb-3\">Yeni Ekle</h3>\n      <input type=\"text\" placeholder=\"Başlık\" class=\"input mb-3\" />\n      <input type=\"text\" placeholder=\"URL\" class=\"input mb-3\" />\n      <select class=\"input mb-3\">\n        <option disabled value=\"\" selected>Kategori</option>\n        <option value=\"\">Vue</option>\n        <option value=\"\">React</option>\n        <option value=\"\">Sosyal</option>\n      </select>\n      <textarea placeholder=\"Açıklama\" class=\"input mb-3\" cols=\"30\" rows=\"10\"></textarea>\n      <div class=\"flex items-center justify-end gap-x-1\">\n        <button class=\"secondary-button\">İptal</button>\n        <button class=\"default-button\">Kaydet</button>\n      </div>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-12-socialmark-composition-api/tema/register.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Register</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n  </head>\n  <body class=\"bg-gray-100\">\n    <div class=\"login_register_container\">\n      <h3 class=\"text-2xl text-center mb-3\">Register</h3>\n      <input type=\"text\" placeholder=\"Tam Ad\" class=\"input mb-3\" />\n      <input type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n      <input type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n      <button class=\"default-button\">Kayıt ol</button>\n      <span class=\"text-center mt-3 text-sm\">\n        Zaten Üyeyim,\n        <a href=\"#\" class=\"text-red-900 hover:text-black\">Giriş yap!</a>\n      </span>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-2/-boilerplate/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {};\n  },\n}).mount(\"#app\");\n"
  },
  {
    "path": "ders-2/-boilerplate/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>CSS ve Style Binding</title>\n    <link rel=\"stylesheet\" href=\"../style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <div class=\"container\"></div>\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-2/.prettierrc",
    "content": "{\n    \"printWidth\": 150\n}"
  },
  {
    "path": "ders-2/0-component/app.js",
    "content": "const app = Vue.createApp({\n  data() {\n    return {};\n  },\n});\n\napp.component(\"counter-item\", {\n  data() {\n    return {\n      counter: 0,\n    };\n  },\n  template: `\n      <div class=\"container-sm\">\n        <h3 class=\"mb-2\">{{ counter }} </h3>\n        <button @click=\"counter--\" class=\"red sm\">-</button>\n        <button @click=\"counter++\" class=\"green sm\">+</button>\n      </div>\n  `,\n});\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-2/0-component/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>CSS ve Style Binding</title>\n    <link rel=\"stylesheet\" href=\"../style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body>\n    <div id=\"app\">\n      <counter-item></counter-item>\n      <counter-item></counter-item>\n      <counter-item></counter-item>\n      <counter-item></counter-item>\n      <counter-item></counter-item>\n      <counter-item></counter-item>\n      <counter-item />\n      <counterItem />\n    </div>\n    <script src=\"app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-2/1-vue-cli/README.md",
    "content": "# 1-vue-cli\n\n## Project setup\n```\nnpm install\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n\n### Lints and fixes files\n```\nnpm run lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-2/1-vue-cli/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-2/1-vue-cli/package.json",
    "content": "{\n  \"name\": \"1-vue-cli\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-2/1-vue-cli/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-2/1-vue-cli/src/App.vue",
    "content": "<template>\n  <app-header />\n  <div class=\"container\">\n    <h3>Bu benim ilk Vue CLI Uygulamam</h3>\n    <p>Bugün component ve Vue CLI konularını görüyoruz..</p>\n  </div>\n  <!-- <CounterItem></CounterItem> -->\n  <counter-item />\n  <counterItem />\n  <!-- <benim-guzel-sayacim></benim-guzel-sayacim> -->\n</template>\n<script>\nimport CounterItem from \"@/components/CounterItem\";\nexport default {\n  components: {\n    CounterItem,\n    // \"benim-guzel-sayacim\": CounterItem,\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-2/1-vue-cli/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n  -ms-flex-pack: start;\n  justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n  -ms-flex-pack: justify;\n  justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n  -ms-flex-pack: end;\n  justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n  -ms-flex-align: end;\n  align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: start;\n  -ms-flex-align: start;\n  align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  -webkit-box-align: center;\n  -ms-flex-align: center;\n  align-items: center;\n  -ms-flex-wrap: wrap;\n  flex-wrap: wrap;\n  flex-direction: column;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n  box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n  box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n  box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n  box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(\n    linear,\n    left top,\n    right top,\n    from(#59bacc),\n    to(#ffbc49)\n  );\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */\n"
  },
  {
    "path": "ders-2/1-vue-cli/src/components/CounterItem.vue",
    "content": "<template>\n  <div class=\"container-sm\">\n    <h3 class=\"mb-2\">{{ counter }}</h3>\n    <button @click=\"counter--\" class=\"red sm\">-</button>\n    <button @click=\"counter++\" class=\"green sm\">+</button>\n  </div>\n</template>\n<script>\nexport default {\n  data() {\n    return {\n      counter: 0,\n    };\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-2/1-vue-cli/src/components/appHeader.vue",
    "content": "<template>\n  <header>\n    kablosuzkedi bootcamp Vue!\n  </header>\n</template>\n\n<style>\nheader {\n  background-color: rebeccapurple;\n  color: #fff;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  width: 100%;\n  height: 50px;\n  border-bottom: 2px solid rgb(5, 5, 5);\n  position: absolute;\n  top: 0;\n  left: 0;\n}\n</style>\n"
  },
  {
    "path": "ders-2/1-vue-cli/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport \"@/assets/style.css\";\nimport appHeader from \"@/components/appHeader\";\n\nconst app = createApp(App);\n\napp.component(\"app-header\", appHeader);\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-2/2-todo-app/README.md",
    "content": "# 2-todo-app\n\n## Project setup\n```\nnpm install\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n\n### Lints and fixes files\n```\nnpm run lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-2/2-todo-app/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-2/2-todo-app/package.json",
    "content": "{\n  \"name\": \"2-todo-app\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-2/2-todo-app/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-2/2-todo-app/src/App.vue",
    "content": "<template>\n  <div class=\"container\">\n    <h3 class=\"text-center\">ToDo App</h3>\n    <hr class=\"my-2\" />\n    <AddSection :addNewTodo=\"addNewTodo\" @add-todo=\"addNewTodo\" />\n    <ListSection />\n    <!-- <TodoList @delete-todo-item=\"deleteItem\" :myData=\"todoList\" />\n    <ResultBar :itemCount=\"todoList.length\" /> -->\n  </div>\n</template>\n<script>\nimport AddSection from \"@/components/AddSection\";\nimport ListSection from \"@/components/ListSection\";\n// import TodoList from \"@/components/TodoList\";\n// import ResultBar from \"@/components/ResultBar\";\nexport default {\n  components: {\n    AddSection,\n    ListSection\n    // TodoList,\n    // ResultBar\n  },\n  created() {\n    // setTimeout(() => {\n    //   this.todoList = [\n    //     { id: 1, text: \"Bootcamp #2\" },\n    //     { id: 2, text: \"Bootcamp #2.1\" },\n    //     { id: 3, text: \"Bootcamp #2.2\" },\n    //     { id: 4, text: \"Bootcamp #2.3\" },\n    //     { id: 5, text: \"Bootcamp #2.4\" },\n    //     { id: 6, text: \"Bootcamp #2.5\" }\n    //   ];\n    // }, 2000);\n  },\n  data() {\n    return {\n      provideData: {\n        todoList: [\n          { id: 1, text: \"Bootcamp #2\" },\n          { id: 2, text: \"Bootcamp #2.1\" },\n          { id: 3, text: \"Bootcamp #2.2\" },\n          { id: 4, text: \"Bootcamp #2.3\" },\n          { id: 5, text: \"Bootcamp #2.4\" },\n          { id: 6, text: \"Bootcamp #2.5\" }\n        ]\n      }\n    };\n  },\n  provide() {\n    return {\n      provideData: this.provideData,\n      deleteItem: this.deleteItem\n    };\n  },\n  methods: {\n    testEvent(data) {\n      alert(data);\n    },\n    deleteItem(todoItem) {\n      console.log(todoItem);\n      // const matchedIndex = this.todoList.findIndex((i) => i === todoItem);\n      // if (matchedIndex > -1) {\n      //   this.todoList.splice(this.todoList[matchedIndex], 1);\n      // }\n      this.provideData.todoList = this.provideData.todoList.filter(t => t !== todoItem);\n    },\n    addNewTodo(todo) {\n      this.provideData.todoList.push({\n        id: new Date().getTime(),\n        text: todo\n      });\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-2/2-todo-app/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-2/2-todo-app/src/components/AddSection.vue",
    "content": "<template>\n  <label for=\"todoText\"></label>\n  <input v-model=\"todoText\" @keydown.enter=\"addNewTodo(todoText)\" type=\"text\" id=\"todoText\" placeholder=\"Bir şeyler yazınız...\" />\n</template>\n\n<script>\nexport default {\n  props: {\n    addNewTodo: {\n      type: Function,\n      required: true\n    }\n  },\n  data() {\n    return {\n      todoText: null\n    };\n  },\n  methods: {\n    // addNewTodo() {\n    //   this.$emit(\"add-todo\", this.todoText);\n    //   this.todoText = null;\n    // }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-2/2-todo-app/src/components/ListSection.vue",
    "content": "<template>\n  <TodoList />\n  <ResultBar :itemCount=\"provideData.todoList.length\" />\n</template>\n<script>\nimport TodoList from \"@/components/TodoList\";\nimport ResultBar from \"@/components/ResultBar\";\nexport default {\n  inject: [\"provideData\"],\n  props: {\n    todoList: {\n      type: Array,\n      required: true\n    }\n  },\n  components: {\n    TodoList,\n    ResultBar\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-2/2-todo-app/src/components/ResultBar.vue",
    "content": "<template>\n  <!-- <small class=\"mt-2 d-flex justify-content-end green\"> {{ todoList.length }} adet todo vardır</small> -->\n  <small class=\"mt-2 d-flex justify-content-end green\"> {{ itemCount }} adet todo vardır</small>\n</template>\n<script>\nexport default {\n  props: [\"itemCount\"]\n};\n</script>\n"
  },
  {
    "path": "ders-2/2-todo-app/src/components/TodoList.vue",
    "content": "<template>\n  <ul>\n    <TodoListItem v-for=\"todoItem in provideData.todoList\" :key=\"todoItem.id\" :item=\"todoItem\" />\n  </ul>\n</template>\n<script>\nimport TodoListItem from \"@/components/TodoListItem\";\nexport default {\n  // props: [\"myData\"],\n  inject: [\"provideData\"],\n  //   data(){\n  //       return {\n  //           myData : \"\"\n  //       }\n  //   },\n  //   props: {\n  //     myData: {\n  //       type: String,\n  //       required: false,\n  //       default: \"\"\n  //     }\n  //   },\n  components: {\n    TodoListItem\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-2/2-todo-app/src/components/TodoListItem.vue",
    "content": "<template>\n  <li class=\"d-flex justify-content-between align-items-center\">\n    <span>{{ item.text }}</span>\n    <button @click=\"deleteItem(item)\" class=\"sm red\">Sil</button>\n  </li>\n</template>\n<script>\nexport default {\n  props: [\"item\"],\n  inject: [\"deleteItem\"]\n};\n</script>\n"
  },
  {
    "path": "ders-2/2-todo-app/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport \"@/assets/style.css\";\n\ncreateApp(App).mount(\"#app\");\n"
  },
  {
    "path": "ders-2/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-3/0-components-communications/README.md",
    "content": "# 0-components-communications\n\n## Project setup\n```\nnpm install\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n\n### Lints and fixes files\n```\nnpm run lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-3/0-components-communications/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-3/0-components-communications/package.json",
    "content": "{\n  \"name\": \"0-components-communications\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-3/0-components-communications/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-3/0-components-communications/src/App.vue",
    "content": "<template>\n  <div class=\"container\">\n    <UserSection />\n  </div>\n</template>\n\n<script>\nimport UserSection from \"@/components/UserSection\";\nexport default {\n  components: {\n    UserSection\n  },\n  data() {\n    return {\n      provideData: {\n        userList: [\"Tayfun\", \"Gökhan\", \"Defne\", \"Handan\", \"Aslı\"]\n      }\n    };\n  },\n  methods: {\n    newItem(item) {\n      this.provideData.userList.push(item);\n    }\n  },\n  provide() {\n    return {\n      userList: this.provideData.userList,\n      newItem: this.newItem\n    };\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/0-components-communications/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-3/0-components-communications/src/components/AddSection.vue",
    "content": "<template>\n  <button @click=\"newItem(new Date().getTime())\">Set Data</button>\n</template>\n<script>\nexport default {\n  inject: [\"newItem\"]\n};\n</script>\n"
  },
  {
    "path": "ders-3/0-components-communications/src/components/ListSection.vue",
    "content": "<template>\n  <ul>\n    <li v-for=\"user in userList\" :key=\"user\">{{ user }}</li>\n  </ul>\n</template>\n<script>\nexport default {\n  // props: [\"userList\"],\n  inject: [\"userList\"]\n};\n</script>\n"
  },
  {
    "path": "ders-3/0-components-communications/src/components/UserSection.vue",
    "content": "<template>\n  <ListSection />\n  <AddSection />\n</template>\n<script>\nimport ListSection from \"@/components/ListSection\";\nimport AddSection from \"@/components/AddSection\";\nexport default {\n  // props: [\"userList\"],\n  // emits: [\"new-item\"],\n  components: {\n    ListSection,\n    AddSection\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/0-components-communications/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport \"@/assets/style.css\";\ncreateApp(App).mount(\"#app\");\n"
  },
  {
    "path": "ders-3/1-component-slots/README.md",
    "content": "# 1-component-slots\n\n## Project setup\n```\nnpm install\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n\n### Lints and fixes files\n```\nnpm run lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-3/1-component-slots/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-3/1-component-slots/package.json",
    "content": "{\n  \"name\": \"1-component-slots\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-3/1-component-slots/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-3/1-component-slots/src/App.vue",
    "content": "<template>\n  <!-- <Modal :onSave=\"onSave\" :title=\"'Modal Title'\" :content=\"content\" /> -->\n  <Modal>\n    <template #title>\n      <h3>Slot ile Gelen Title Bilgisi</h3>\n    </template>\n\n    <template v-slot:content>\n      <p class=\"text-green\">\n        Lorem ipsum dolor sit amet consectetur adipisicing elit. Porro veritatis iusto nobis odit aliquid cupiditate, in beatae eum tempora rem id\n        ipsum aliquam, accusamus rerum numquam? Tempora optio itaque dicta!\n      </p>\n    </template>\n    <!-- <template #content>\n      <p class=\"text-green\">\n        Lorem ipsum dolor sit amet consectetur adipisicing elit. Porro veritatis iusto nobis odit aliquid cupiditate, in beatae eum tempora rem id\n        ipsum aliquam, accusamus rerum numquam? Tempora optio itaque dicta!\n      </p>\n    </template> -->\n\n    <template #default>\n      Bu default olarak gösterilecek..\n    </template>\n  </Modal>\n</template>\n\n<script>\nimport Modal from \"@/components/Modal\";\nexport default {\n  components: {\n    Modal\n  },\n  data() {\n    return {\n      content: `<h3 class=\"text-red\">title</h3>`\n    };\n  },\n  methods: {\n    onSave() {\n      alert(\"Saved!!\");\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/1-component-slots/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-3/1-component-slots/src/components/Modal.vue",
    "content": "<template>\n  <div class=\"container\">\n    <div class=\"header\">\n      <slot name=\"title\" />\n    </div>\n    <hr />\n    <div class=\"content my-2\">\n      <slot name=\"content\" />\n    </div>\n    <slot />\n    <hr />\n    <div class=\"footer text-right\">\n      <button class=\"mr-2\">Kapat</button>\n      <button @click=\"onSave\" class=\"ml-2 green\">Kaydet</button>\n    </div>\n  </div>\n</template>\n<script>\nexport default {\n  props: [\"title\", \"content\", \"onSave\"]\n};\n</script>\n"
  },
  {
    "path": "ders-3/1-component-slots/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport \"@/assets/style.css\";\ncreateApp(App).mount(\"#app\");\n"
  },
  {
    "path": "ders-3/2-dynamic-components/README.md",
    "content": "# 2-dynamic-components\n\n## Project setup\n```\nnpm install\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n\n### Lints and fixes files\n```\nnpm run lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-3/2-dynamic-components/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-3/2-dynamic-components/package.json",
    "content": "{\n  \"name\": \"2-dynamic-components\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-3/2-dynamic-components/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-3/2-dynamic-components/src/App.vue",
    "content": "<template>\n  <div class=\"container\">\n    <div class=\"d-flex justify-content-between align-items-center\">\n      <button class=\"red\" @click=\"activeComponent = 'Red'\">Red</button>\n      <button class=\"green\" @click=\"activeComponent = 'Green'\">Green</button>\n      <button class=\"blue\" @click=\"activeComponent = 'Blue'\">Blue</button>\n    </div>\n    <!-- <Red msg=\"Red Component\" v-if=\"activeComponent == 'Red'\" class=\"mb-2\" />\n    <Green v-if=\"activeComponent == 'Green'\" class=\"mb-2\" />\n    <Blue v-if=\"activeComponent == 'Blue'\" class=\"mb-2\" /> -->\n    {{ activeComponent }}\n    <keep-alive>\n      <component :is=\"activeComponent\" msg=\"Red Component 2\">\n        <h3 class=\"bg-green text-white\">Green Component</h3>\n      </component>\n    </keep-alive>\n  </div>\n</template>\n<script>\nimport Red from \"@/components/Red\";\nimport Green from \"@/components/Green\";\nimport Blue from \"@/components/Blue\";\nexport default {\n  components: {\n    Red,\n    Green,\n    Blue\n  },\n  data() {\n    return {\n      activeComponent: \"Red\"\n    };\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/2-dynamic-components/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-3/2-dynamic-components/src/components/Blue.vue",
    "content": "<template>\n  <h3 class=\"bg-blue text-white\">Blue Component</h3>\n  <input type=\"text\" />\n</template>\n<script>\nexport default {\n  mounted() {\n    console.log(\"BLUE mounted\");\n  },\n  activated() {\n    console.log(\"BLUE activated\");\n  },\n  deactivated() {\n    console.log(\"BLUE deactivated\");\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/2-dynamic-components/src/components/Green.vue",
    "content": "<template>\n  <slot />\n</template>\n<script>\nexport default {\n  mounted() {\n    console.log(\"GREEN mounted\");\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/2-dynamic-components/src/components/Red.vue",
    "content": "<template>\n  <h3 class=\"bg-red text-white\">{{ msg }}</h3>\n</template>\n<script>\nexport default {\n  props: [\"msg\"],\n  mounted() {\n    console.log(\"RED mounted\");\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/2-dynamic-components/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport \"@/assets/style.css\";\ncreateApp(App).mount(\"#app\");\n"
  },
  {
    "path": "ders-3/3-http-requests/README.md",
    "content": "# 3-http-requests\n\n## Project setup\n```\nnpm install\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n\n### Lints and fixes files\n```\nnpm run lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-3/3-http-requests/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-3/3-http-requests/db.json",
    "content": "{\n  \"items\": []\n}"
  },
  {
    "path": "ders-3/3-http-requests/package.json",
    "content": "{\n  \"name\": \"3-http-requests\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"axios\": \"^0.21.1\",\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-3/3-http-requests/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-3/3-http-requests/src/App.vue",
    "content": "<template>\n  <div class=\"container\">\n    <h3>Alışveriş Listesi</h3>\n    <hr />\n    <div class=\"my-2\">\n      <input type=\"text\" placeholder=\"ne alacaksın?\" @keydown.enter=\"onSave\" />\n    </div>\n    <ul v-if=\"itemsList.length > 0\">\n      <li v-for=\"item in itemsList\" :key=\"item.id\" class=\"d-flex justify-content-between align-items-center\">\n        <span>{{ item.title }}</span>\n        <button @click=\"onDelete(item)\" class=\"sm red\">Sil</button>\n      </li>\n    </ul>\n    <div v-else class=\"bg-blue text-white\">\n      Herhangi bir ürün yoktur..\n    </div>\n    <small class=\"mt-2 text-red d-flex justify-content-end align-items-center\">{{ itemCount }} adet alınacak ürün vardır..</small>\n  </div>\n</template>\n\n<script>\nimport axios from \"axios\";\nexport default {\n  data() {\n    return {\n      itemsList: []\n    };\n  },\n  mounted() {\n    axios.get(\"http://localhost:3000/items\").then(items_response => {\n      console.log(\"items_response :>> \", items_response);\n      this.itemsList = items_response.data || [];\n      console.log(\"this.itemsList :>> \", this.itemsList);\n    });\n  },\n  methods: {\n    onSave(e) {\n      const saveObject = {\n        title: e.target.value,\n        created_at: new Date(),\n        completed: false\n      };\n      axios.post(\"http://localhost:3000/items\", saveObject).then(save_response => {\n        console.log(save_response);\n        this.itemsList.push(save_response.data);\n        e.target.value = \"\";\n        e.target.focus();\n      });\n    },\n    onDelete(item) {\n      axios.delete(`http://localhost:3000/items/${item.id}`).then(delete_response => {\n        console.log(delete_response);\n        this.itemsList = this.itemsList.filter(i => i.id !== item.id);\n      });\n    }\n  },\n  computed: {\n    itemCount() {\n      return this.itemsList.length || 0;\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-3/3-http-requests/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-3/3-http-requests/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\n\nimport \"@/assets/style.css\";\n\ncreateApp(App).mount(\"#app\");\n"
  },
  {
    "path": "ders-3/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-4/0-vuex-introduction/.browserslistrc",
    "content": "> 1%\nlast 2 versions\nnot dead\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/.eslintrc.js",
    "content": "module.exports = {\n  root: true,\n  env: {\n    node: true\n  },\n  'extends': [\n    'plugin:vue/vue3-essential',\n    'eslint:recommended'\n  ],\n  parserOptions: {\n    parser: 'babel-eslint'\n  },\n  rules: {\n    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',\n    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off'\n  }\n}\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/README.md",
    "content": "# 0-vuex-introduction\n\n## Project setup\n```\nyarn install\n```\n\n### Compiles and hot-reloads for development\n```\nyarn serve\n```\n\n### Compiles and minifies for production\n```\nyarn build\n```\n\n### Lints and fixes files\n```\nyarn lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/package.json",
    "content": "{\n  \"name\": \"0-vuex-introduction\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\",\n    \"vuex\": \"^4.0.2\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  }\n}\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/src/App.vue",
    "content": "<template>\n  <p>\n    <!-- {{ $store.state.user }}\n    {{ $store.state.permissions }} -->\n    <!-- <ul>\n      <li v-for=\"permission in $store.state.permissions\" :key=\"permission\">\n        {{ permission }}\n      </li>\n    </ul> -->\n\n    <!-- <ul>\n      <li v-for=\"user in $store.state.userList\" :key=\"user\">\n        {{ user }}\n      </li>\n    </ul> -->\n    <!-- {{ $store.state.fullName}} -->\n  </p>\n  <UserList />\n  <NewUser />\n</template>\n\n<script>\nimport UserList from \"@/components/UserList\";\nimport NewUser from \"@/components/NewUser\";\nexport default {\n  name: \"App\",\n  components: {\n    UserList,\n    NewUser\n  },\n  created() {\n    // console.log(this.$store.state.person);\n    // // console.log(this.$store.state.itemList.filter(i => i.type === \"mobilya\"));\n    // console.log(this.$store.getters._woodItems)\n    // // console.log(this.$store.getters.activeUser)\n    // console.log('this.activeUser :>> ', this.activeUser);\n  }\n};\n</script>\n\n<style>\n#app {\n  font-family: Avenir, Helvetica, Arial, sans-serif;\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n  text-align: center;\n  color: #2c3e50;\n  margin-top: 60px;\n}\n</style>\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-4/0-vuex-introduction/src/components/NewUser.vue",
    "content": "<template>\n  <button @click=\"updateName\">Yeni Item Ekle..</button>\n</template>\n\n<script>\nexport default {\n  methods: {\n    updateName() {\n      const userData = { id: new Date().getTime(), title: \"Raf\" + new Date().getTime(), type: \"mobilya\" };\n      //   this.$store.commit(\"newItem\", userData);\n      this.$store.dispatch(\"newItem\", userData);\n      // this.$store.state.itemList.push(userData);\n      //   this.$store.state.fullName = new Date().getTime();\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/src/components/UserList.vue",
    "content": "<template>\n  <ul>\n    <li v-for=\"(item, index) in woodItems\" :key=\"index\">\n      {{ item.title }}\n    </li>\n  </ul>\n</template>\n<script>\nimport { mapGetters } from \"vuex\";\nexport default {\n  computed: {\n    ...mapGetters({\n      woodItems: \"_woodItems\",\n      activeUser: \"_activeUser\"\n    })\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport store from \"./store\";\nimport \"@/assets/style.css\";\nconst app = createApp(App);\napp.use(store);\n// app.config.globalProperties.$axios = axios;\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-4/0-vuex-introduction/src/store.js",
    "content": "import { createStore } from \"vuex\";\nconst store = createStore({\n  state: {\n    user: {\n      name: \"Gokhan\",\n      lname: \"Kandemir\",\n      age: 33,\n      address: {},\n      password: 123123123,\n      tc: 11111\n    },\n    theme: \"dark\",\n    fullName: \"Defne Kandemir\",\n    permissions: [1, 2, 3, 4, 5],\n    userList: [\"Gokhan\", \"Tayfun\", \"İlker\", \"Ramazan\", \"Defne\", \"Kamil\", \"Cemil\"],\n    itemList: [\n      { id: 1, title: \"Masa\", type: \"mobilya\" },\n      { id: 2, title: \"Sandalye\", type: \"mobilya\" },\n      { id: 3, title: \"TV\", type: \"elektronik\" },\n      { id: 4, title: \"Monitor\", type: \"elektronik\" },\n      { id: 5, title: \"Bardak\", type: \"plastik\" }\n    ]\n  },\n  mutations: {\n    newItem(state, item) {\n      state.itemList.push(item);\n    }\n    // changeUser(state, payload){}\n  },\n  actions: {\n    newItem({ commit }, item) {\n      console.log(\"item :>> \", item);\n      setTimeout(() => {\n        // context.commit(\"newItem\", item);\n        commit(\"newItem\", item);\n      }, 1000);\n    }\n  },\n  getters: {\n    _woodItems: state => state.itemList.filter(i => i.type === \"mobilya\"),\n    _activeUser(state) {\n      const user = {\n        ...state.user\n      };\n      delete user.password;\n      return user;\n    }\n  }\n});\n\nexport default store;\n"
  },
  {
    "path": "ders-4/1-vuex-modules/README.md",
    "content": "# 1-vuex-modules\n\n## Project setup\n```\nyarn install\n```\n\n### Compiles and hot-reloads for development\n```\nyarn serve\n```\n\n### Compiles and minifies for production\n```\nyarn build\n```\n\n### Lints and fixes files\n```\nyarn lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-4/1-vuex-modules/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-4/1-vuex-modules/package.json",
    "content": "{\n  \"name\": \"1-vuex-modules\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\",\n    \"vuex\": \"^4.0.2\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-4/1-vuex-modules/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-4/1-vuex-modules/src/App.vue",
    "content": "<template>\n  <p>\n    {{ $store.state.mainName }}\n  </p>\n\n  <p>\n    {{ $store.state.musteri.contactName }}\n  </p>\n\n  <pre>\n    {{ musteriADI }}\n  </pre>\n</template>\n\n<script>\nimport { mapGetters } from \"vuex\";\nexport default {\n  name: \"App\",\n  created() {\n    console.log(this.$store.getters[\"musteri/_contactName\"]);\n  },\n  computed: {\n    ...mapGetters({\n      musteriADI: \"musteri/_contactName\"\n    })\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-4/1-vuex-modules/src/components/HelloWorld.vue",
    "content": "<template>\n  <div class=\"hello\">\n    <h1>{{ msg }}</h1>\n    <p>\n      For a guide and recipes on how to configure / customize this project,<br>\n      check out the\n      <a href=\"https://cli.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-cli documentation</a>.\n    </p>\n    <h3>Installed CLI Plugins</h3>\n    <ul>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel\" target=\"_blank\" rel=\"noopener\">babel</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-eslint\" target=\"_blank\" rel=\"noopener\">eslint</a></li>\n    </ul>\n    <h3>Essential Links</h3>\n    <ul>\n      <li><a href=\"https://vuejs.org\" target=\"_blank\" rel=\"noopener\">Core Docs</a></li>\n      <li><a href=\"https://forum.vuejs.org\" target=\"_blank\" rel=\"noopener\">Forum</a></li>\n      <li><a href=\"https://chat.vuejs.org\" target=\"_blank\" rel=\"noopener\">Community Chat</a></li>\n      <li><a href=\"https://twitter.com/vuejs\" target=\"_blank\" rel=\"noopener\">Twitter</a></li>\n      <li><a href=\"https://news.vuejs.org\" target=\"_blank\" rel=\"noopener\">News</a></li>\n    </ul>\n    <h3>Ecosystem</h3>\n    <ul>\n      <li><a href=\"https://router.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-router</a></li>\n      <li><a href=\"https://vuex.vuejs.org\" target=\"_blank\" rel=\"noopener\">vuex</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-devtools#vue-devtools\" target=\"_blank\" rel=\"noopener\">vue-devtools</a></li>\n      <li><a href=\"https://vue-loader.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-loader</a></li>\n      <li><a href=\"https://github.com/vuejs/awesome-vue\" target=\"_blank\" rel=\"noopener\">awesome-vue</a></li>\n    </ul>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'HelloWorld',\n  props: {\n    msg: String\n  }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\nh3 {\n  margin: 40px 0 0;\n}\nul {\n  list-style-type: none;\n  padding: 0;\n}\nli {\n  display: inline-block;\n  margin: 0 10px;\n}\na {\n  color: #42b983;\n}\n</style>\n"
  },
  {
    "path": "ders-4/1-vuex-modules/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport store from \"./store\";\n\nconst app = createApp(App);\napp.use(store);\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-4/1-vuex-modules/src/store/index.js",
    "content": "import { createStore } from \"vuex\";\nimport contact from \"./modules/contact\";\nimport taskmanager from \"./modules/taskmanager\";\n\nconst store = createStore({\n  state: {\n    mainName: \"kablosuzkedi\"\n  },\n  mutations: {},\n  modules: {\n    musteri: contact,\n    taskmanager\n  }\n});\n\nexport default store;\n"
  },
  {
    "path": "ders-4/1-vuex-modules/src/store/modules/contact.js",
    "content": "export default {\n  namespaced: true,\n  state: {\n    contactName: \"puresol\",\n    contactAddress: \"Kanada\",\n    propertyList: []\n  },\n  mutations: {\n    setItem(state, name) {\n      state.contactName = name;\n    }\n  },\n  getters: {\n    _contactName: state => state.contactName\n    // _itemList: state => state.propertyList\n  }\n};\n"
  },
  {
    "path": "ders-4/1-vuex-modules/src/store/modules/taskmanager.js",
    "content": "export default {\n  namespaced: true,\n  state: {\n    itemList: [],\n    userList: []\n  },\n  mutations: {\n    setItem(state, item) {\n      state.itemList.push(item);\n    }\n  },\n  getters: {\n    _itemList: state => state.itemList\n  }\n};\n"
  },
  {
    "path": "ders-5/0-vue-router/README.md",
    "content": "# 0-vue-router\n\n## Project setup\n```\nyarn install\n```\n\n### Compiles and hot-reloads for development\n```\nyarn serve\n```\n\n### Compiles and minifies for production\n```\nyarn build\n```\n\n### Lints and fixes files\n```\nyarn lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-5/0-vue-router/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-5/0-vue-router/package.json",
    "content": "{\n  \"name\": \"0-vue-router\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\",\n    \"vue-router\": \"4\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-5/0-vue-router/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\">\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n    <noscript>\n      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-5/0-vue-router/src/App.vue",
    "content": "<template>\n  <div class=\"container\">\n    <div class=\"mb-2\">\n      <router-link class=\"nav-link\" active-class=\"active\" to=\"/\">\n        Anasayfa\n      </router-link>\n      <router-link class=\"nav-link\" active-class=\"active\" to=\"/hakkimda\">\n        Hakkımda\n      </router-link>\n      <router-link class=\"nav-link\" active-class=\"active\" to=\"/detay/123\">\n        Detay\n      </router-link>\n    </div>\n    <router-view></router-view>\n  </div>\n</template>\n\n<style>\n.nav-link {\n  padding: 5px 10px;\n  text-decoration: none;\n  border: 1px solid #fa6558;\n  color: #fa6558;\n  display: inline-block;\n  margin-right: 5px;\n  margin-top: 5px !important;\n}\n\n.active {\n  background-color: #fa6558;\n  color: #fff;\n}\n</style>\n"
  },
  {
    "path": "ders-5/0-vue-router/src/assets/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-5/0-vue-router/src/components/HelloWorld.vue",
    "content": "<template>\n  <div class=\"hello\">\n    <h1>{{ msg }}</h1>\n    <p>\n      For a guide and recipes on how to configure / customize this project,<br>\n      check out the\n      <a href=\"https://cli.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-cli documentation</a>.\n    </p>\n    <h3>Installed CLI Plugins</h3>\n    <ul>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel\" target=\"_blank\" rel=\"noopener\">babel</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-eslint\" target=\"_blank\" rel=\"noopener\">eslint</a></li>\n    </ul>\n    <h3>Essential Links</h3>\n    <ul>\n      <li><a href=\"https://vuejs.org\" target=\"_blank\" rel=\"noopener\">Core Docs</a></li>\n      <li><a href=\"https://forum.vuejs.org\" target=\"_blank\" rel=\"noopener\">Forum</a></li>\n      <li><a href=\"https://chat.vuejs.org\" target=\"_blank\" rel=\"noopener\">Community Chat</a></li>\n      <li><a href=\"https://twitter.com/vuejs\" target=\"_blank\" rel=\"noopener\">Twitter</a></li>\n      <li><a href=\"https://news.vuejs.org\" target=\"_blank\" rel=\"noopener\">News</a></li>\n    </ul>\n    <h3>Ecosystem</h3>\n    <ul>\n      <li><a href=\"https://router.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-router</a></li>\n      <li><a href=\"https://vuex.vuejs.org\" target=\"_blank\" rel=\"noopener\">vuex</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-devtools#vue-devtools\" target=\"_blank\" rel=\"noopener\">vue-devtools</a></li>\n      <li><a href=\"https://vue-loader.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-loader</a></li>\n      <li><a href=\"https://github.com/vuejs/awesome-vue\" target=\"_blank\" rel=\"noopener\">awesome-vue</a></li>\n    </ul>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'HelloWorld',\n  props: {\n    msg: String\n  }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\nh3 {\n  margin: 40px 0 0;\n}\nul {\n  list-style-type: none;\n  padding: 0;\n}\nli {\n  display: inline-block;\n  margin: 0 10px;\n}\na {\n  color: #42b983;\n}\n</style>\n"
  },
  {
    "path": "ders-5/0-vue-router/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport \"@/assets/style.css\";\nconst app = createApp(App);\napp.use(router);\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-5/0-vue-router/src/router.js",
    "content": "import { createRouter, createWebHashHistory } from \"vue-router\";\n// import Home from \"@/views/Home\"\nconst routes = [\n  {\n    name: \"HomePage\",\n    path: \"/\",\n    // component : Home\n    component: () => import(\"@/views/Home\")\n  },\n  {\n    name: \"AboutPage\",\n    path: \"/hakkimda\",\n    // component : Home\n    component: () => import(\"@/views/About\")\n  },\n  {\n    name: \"DetailPage\",\n    path: \"/detay/:userID\",\n    // component : Home\n    component: () => import(\"@/views/Details\")\n  }\n];\n\nconst router = createRouter({\n  routes,\n  //   mode : \"hash|history\",\n  // history: createWebHistory()\n  history: createWebHashHistory()\n});\n\nexport default router;\n"
  },
  {
    "path": "ders-5/0-vue-router/src/views/About.vue",
    "content": "<template>\n  <h1>About</h1>\n  <p>\n    Lorem ipsum dolor, sit amet consectetur adipisicing elit. Pariatur dignissimos accusantium nam maxime doloremque ab consequatur culpa ipsa\n    consectetur earum neque, in deserunt suscipit animi facilis, voluptatum adipisci odit hic!\n  </p>\n</template>\n"
  },
  {
    "path": "ders-5/0-vue-router/src/views/Details.vue",
    "content": "<template>\n  <h1>{{ $route.params.userID }}</h1>\n  <p>Aciklamalar burada yer alacaktır..</p>\n  <!-- <p>{{ $route.params.userID }}</p> -->\n  <p>{{ $route.query.klan }}</p>\n  <button @click=\"goBack\">Geri Dön</button>\n</template>\n<script>\nexport default {\n  created() {\n    console.log(this.$route);\n  },\n  methods: {\n    goBack() {\n      this.$router.push(\"/\");\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-5/0-vue-router/src/views/Home.vue",
    "content": "<template>\n  <h1>Home</h1>\n  <p>\n    Lorem ipsum dolor, sit amet consectetur adipisicing elit. Pariatur dignissimos accusantium nam maxime doloremque ab consequatur culpa ipsa\n    consectetur earum neque, in deserunt suscipit animi facilis, voluptatum adipisci odit hic!\n  </p>\n  <input type=\"text\" @keydown.enter=\"goToDetails\" />\n</template>\n\n<script>\nexport default {\n  methods: {\n    goToDetails(e) {\n      // alert(e.target.value);\n      // this.$router.push(`/detay/${e.target.value}`);\n      this.$router.push({\n        name: \"DetailPage\",\n        params: {\n          userID: e.target.value\n        },\n        query: {\n          type: \"DetailAuth\",\n          user: \"tayfunerbilen\"\n        }\n      });\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-5/1-vue-router-app/README.md",
    "content": "# 1-vue-router-app\n\n## Project setup\n```\nyarn install\n```\n\n### Compiles and hot-reloads for development\n```\nyarn serve\n```\n\n### Compiles and minifies for production\n```\nyarn build\n```\n\n### Lints and fixes files\n```\nyarn lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-5/1-vue-router-app/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-5/1-vue-router-app/db.json",
    "content": "{\n  \"bookmarks\": [\n    {\n      \"title\": \"ghjghjgj\",\n      \"url\": \"dfgdgd\",\n      \"description\": \"hjkhjkhkhk\",\n      \"id\": 5\n    },\n    {\n      \"title\": \"hjkhkhjk\",\n      \"url\": \"sdfsfsfs\",\n      \"description\": \"hjkhjkjhkhkjhk\",\n      \"id\": 6\n    }\n  ]\n}"
  },
  {
    "path": "ders-5/1-vue-router-app/package.json",
    "content": "{\n  \"name\": \"1-vue-router-app\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"axios\": \"^0.21.1\",\n    \"core-js\": \"^3.6.5\",\n    \"vue\": \"^3.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-5/1-vue-router-app/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\" />\n    <title><%= htmlWebpackPlugin.options.title %></title>\n    <link\n      href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css\"\n      rel=\"stylesheet\"\n      integrity=\"sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We\"\n      crossorigin=\"anonymous\"\n    />\n  </head>\n  <body>\n    <noscript>\n      <strong\n        >We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to\n        continue.</strong\n      >\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-5/1-vue-router-app/src/App.vue",
    "content": "<template>\n  <div class=\"container p-3\">\n    <h3 class=\"text-center\">Bookmark List</h3>\n    <div class=\"row\">\n      <div class=\"col-8 offset-2\">\n        <router-view></router-view>\n      </div>\n    </div>\n  </div>\n</template>\n"
  },
  {
    "path": "ders-5/1-vue-router-app/src/components/HelloWorld.vue",
    "content": "<template>\n  <div class=\"hello\">\n    <h1>{{ msg }}</h1>\n    <p>\n      For a guide and recipes on how to configure / customize this project,<br>\n      check out the\n      <a href=\"https://cli.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-cli documentation</a>.\n    </p>\n    <h3>Installed CLI Plugins</h3>\n    <ul>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel\" target=\"_blank\" rel=\"noopener\">babel</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-eslint\" target=\"_blank\" rel=\"noopener\">eslint</a></li>\n    </ul>\n    <h3>Essential Links</h3>\n    <ul>\n      <li><a href=\"https://vuejs.org\" target=\"_blank\" rel=\"noopener\">Core Docs</a></li>\n      <li><a href=\"https://forum.vuejs.org\" target=\"_blank\" rel=\"noopener\">Forum</a></li>\n      <li><a href=\"https://chat.vuejs.org\" target=\"_blank\" rel=\"noopener\">Community Chat</a></li>\n      <li><a href=\"https://twitter.com/vuejs\" target=\"_blank\" rel=\"noopener\">Twitter</a></li>\n      <li><a href=\"https://news.vuejs.org\" target=\"_blank\" rel=\"noopener\">News</a></li>\n    </ul>\n    <h3>Ecosystem</h3>\n    <ul>\n      <li><a href=\"https://router.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-router</a></li>\n      <li><a href=\"https://vuex.vuejs.org\" target=\"_blank\" rel=\"noopener\">vuex</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-devtools#vue-devtools\" target=\"_blank\" rel=\"noopener\">vue-devtools</a></li>\n      <li><a href=\"https://vue-loader.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-loader</a></li>\n      <li><a href=\"https://github.com/vuejs/awesome-vue\" target=\"_blank\" rel=\"noopener\">awesome-vue</a></li>\n    </ul>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'HelloWorld',\n  props: {\n    msg: String\n  }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\nh3 {\n  margin: 40px 0 0;\n}\nul {\n  list-style-type: none;\n  padding: 0;\n}\nli {\n  display: inline-block;\n  margin: 0 10px;\n}\na {\n  color: #42b983;\n}\n</style>\n"
  },
  {
    "path": "ders-5/1-vue-router-app/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\n// import axios from \"axios\";\nimport { appAxios } from \"./utils/appAxios\";\nconst app = createApp(App);\napp.use(router);\n// app.config.globalProperties.$axios = axios;\napp.config.globalProperties.$appAxios = appAxios;\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-5/1-vue-router-app/src/router.js",
    "content": "import { createRouter, createWebHashHistory } from \"vue-router\";\n\nconst routes = [\n  {\n    name: \"HomePage\",\n    path: \"/\",\n    component: () => import(\"@/views/HomePage.vue\")\n  },\n  {\n    name: \"NewBookmark\",\n    path: \"/new\",\n    component: () => import(\"@/views/NewBookmark.vue\")\n  }\n];\n\nconst router = createRouter({\n  routes,\n  history: createWebHashHistory()\n});\n\nexport default router;\n"
  },
  {
    "path": "ders-5/1-vue-router-app/src/utils/appAxios.js",
    "content": "import axios from \"axios\";\nexport const appAxios = axios.create({\n  baseURL: \"http://localhost:3000\",\n  withCredentials: false,\n  headers: {\n    tokenX: \"myToken\",\n    \"Content-Type\": \"application/json\"\n  }\n});\n"
  },
  {
    "path": "ders-5/1-vue-router-app/src/views/HomePage.vue",
    "content": "<template>\n  <div class=\"card p-2\">\n    <div class=\"d-flex justify-content-end\">\n      <button class=\"btn btn-primary btn-sm\" @click=\"$router.push({ name: 'NewBookmark' })\">+ Yeni Ekle</button>\n    </div>\n    <table class=\"table table-striped table-hover\">\n      <thead>\n        <tr>\n          <th scope=\"col\">#</th>\n          <th scope=\"col\">Başlık</th>\n          <th scope=\"col\">URL</th>\n          <th scope=\"col\">Açıklama</th>\n          <th scope=\"col\">Sil</th>\n        </tr>\n      </thead>\n      <tbody>\n        <tr v-for=\"(bookmark, index) in bookmarkList\" :key=\"bookmark.id\">\n          <td>{{ index + 1 }}</td>\n          <td>{{ bookmark.title }}</td>\n          <td>\n            <a :href=\"bookmark.url\" target=\"_blank\"> {{ bookmark.url }} </a>\n          </td>\n          <td>\n            {{ bookmark.description }}\n          </td>\n          <td>\n            <button @click=\"deleteBookmark(bookmark)\" class=\"btn btn-sm btn-danger\">Sil</button>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nexport default {\n  data() {\n    return {\n      bookmarkList: []\n    };\n  },\n  created() {\n    this.$appAxios.get(\"/bookmarks\").then(bookmarks_list_response => {\n      this.bookmarkList = bookmarks_list_response.data || [];\n    });\n  },\n  methods: {\n    deleteBookmark(bookmark) {\n      // console.log(\"bookmark :>> \", bookmark);\n      this.$appAxios.delete(`/bookmarks/${bookmark.id}`).then(delete_response => {\n        console.log(delete_response);\n        if (delete_response.status === 200) {\n          this.bookmarkList = this.bookmarkList.filter(b => b.id !== bookmark.id);\n        }\n      });\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-5/1-vue-router-app/src/views/NewBookmark.vue",
    "content": "<template>\n  <div class=\"form-area card border p-2\">\n    <div class=\"mb-3\">\n      <label for=\"title\" class=\"form-label\">Başlık</label>\n      <input type=\"text\" v-model=\"userData.title\" class=\"form-control\" id=\"title\" placeholder=\"kablosuzkedi...\" />\n    </div>\n    <div class=\"mb-3\">\n      <label for=\"url\" class=\"form-label\">URL</label>\n      <input type=\"text\" v-model=\"userData.url\" class=\"form-control\" id=\"url\" placeholder=\"https://...\" />\n    </div>\n    <div class=\"mb-3\">\n      <label for=\"description\" class=\"form-label\">Açıklama</label>\n      <textarea class=\"form-control\" v-model=\"userData.description\" placeholder=\"Bu var ya....\" id=\"description\" rows=\"3\"></textarea>\n    </div>\n\n    <div class=\"d-flex justify-content-end align-items-center\">\n      <button class=\"btn btn-sm btn-secondary me-1\" @click=\"$router.push({ name: 'HomePage' })\">İptal</button>\n      <button class=\"btn btn-sm btn-primary\" @click=\"onSave\">Kaydet</button>\n    </div>\n  </div>\n</template>\n<script>\nexport default {\n  data() {\n    return {\n      userData: {\n        title: null,\n        url: null,\n        description: null\n      }\n    };\n  },\n  methods: {\n    onSave() {\n      console.log(this.userData);\n      this.$appAxios.post(\"/bookmarks\", this.userData).then(save_response => {\n        console.log(\"save_response\", save_response);\n        this.resetData();\n        this.$router.push(\"/\");\n      });\n    },\n    resetData() {\n      Object.keys(this.userData).forEach(key => (this.userData[key] = null));\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-5/package.json",
    "content": "{\n  \"dependencies\": {\n    \"vue-router\": \"4\"\n  }\n}\n"
  },
  {
    "path": "ders-5/style.css",
    "content": "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,300;1,400&display=swap\");\n.text-blue {\n  color: #59bacc;\n}\n\n.bg-blue {\n  background-color: #59bacc;\n}\n\n.text-green {\n  color: #58ad69;\n}\n\n.bg-green {\n  background-color: #58ad69;\n}\n\n.text-orange {\n  color: #ffbc49;\n}\n\n.bg-orange {\n  background-color: #ffbc49;\n}\n\n.text-red {\n  color: #e2574c;\n}\n\n.bg-red {\n  background-color: #e2574c;\n}\n\n.text-black {\n  color: #4e5459;\n}\n\n.bg-black {\n  background-color: #4e5459;\n}\n\n.text-default {\n  color: #d7dbdd;\n}\n\n.bg-default {\n  background-color: #d7dbdd;\n}\n\n.text-white {\n  color: #fff;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-right {\n  text-align: right;\n}\n\n.d-flex {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n}\n\n.justify-content-center {\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n}\n\n.justify-content-start {\n  -webkit-box-pack: start;\n      -ms-flex-pack: start;\n          justify-content: flex-start;\n}\n\n.justify-content-between {\n  -webkit-box-pack: justify;\n      -ms-flex-pack: justify;\n          justify-content: space-between;\n}\n\n.justify-content-end {\n  -webkit-box-pack: end;\n      -ms-flex-pack: end;\n          justify-content: flex-end;\n}\n\n.align-items-center {\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n}\n\n.align-items-start {\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n}\n\n.align-items-end {\n  -webkit-box-align: end;\n      -ms-flex-align: end;\n          align-items: flex-end;\n}\n\n.mt-0 {\n  margin-top: 0rem;\n}\n\n.mb-0 {\n  margin-bottom: 0rem;\n}\n\n.mr-0 {\n  margin-right: 0rem;\n}\n\n.ml-0 {\n  margin-left: 0rem;\n}\n\n.mx-0 {\n  margin-left: 0rem;\n  margin-right: 0rem;\n}\n\n.my-0 {\n  margin-top: 0rem;\n  margin-bottom: 0rem;\n}\n\n.pt-0 {\n  padding-top: 0rem;\n}\n\n.pb-0 {\n  padding-bottom: 0rem;\n}\n\n.pr-0 {\n  padding-right: 0rem;\n}\n\n.pl-0 {\n  padding-left: 0rem;\n}\n\n.px-0 {\n  padding-left: 0rem;\n  padding-right: 0rem;\n}\n\n.py-0 {\n  padding-top: 0rem;\n  padding-bottom: 0rem;\n}\n\n.mt-1 {\n  margin-top: 0.25rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.ml-1 {\n  margin-left: 0.25rem;\n}\n\n.mx-1 {\n  margin-left: 0.25rem;\n  margin-right: 0.25rem;\n}\n\n.my-1 {\n  margin-top: 0.25rem;\n  margin-bottom: 0.25rem;\n}\n\n.pt-1 {\n  padding-top: 0.25rem;\n}\n\n.pb-1 {\n  padding-bottom: 0.25rem;\n}\n\n.pr-1 {\n  padding-right: 0.25rem;\n}\n\n.pl-1 {\n  padding-left: 0.25rem;\n}\n\n.px-1 {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.ml-2 {\n  margin-left: 0.5rem;\n}\n\n.mx-2 {\n  margin-left: 0.5rem;\n  margin-right: 0.5rem;\n}\n\n.my-2 {\n  margin-top: 0.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.pt-2 {\n  padding-top: 0.5rem;\n}\n\n.pb-2 {\n  padding-bottom: 0.5rem;\n}\n\n.pr-2 {\n  padding-right: 0.5rem;\n}\n\n.pl-2 {\n  padding-left: 0.5rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.py-2 {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-3 {\n  margin-left: 0.75rem;\n}\n\n.mx-3 {\n  margin-left: 0.75rem;\n  margin-right: 0.75rem;\n}\n\n.my-3 {\n  margin-top: 0.75rem;\n  margin-bottom: 0.75rem;\n}\n\n.pt-3 {\n  padding-top: 0.75rem;\n}\n\n.pb-3 {\n  padding-bottom: 0.75rem;\n}\n\n.pr-3 {\n  padding-right: 0.75rem;\n}\n\n.pl-3 {\n  padding-left: 0.75rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-3 {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n}\n\n.mt-4 {\n  margin-top: 1rem;\n}\n\n.mb-4 {\n  margin-bottom: 1rem;\n}\n\n.mr-4 {\n  margin-right: 1rem;\n}\n\n.ml-4 {\n  margin-left: 1rem;\n}\n\n.mx-4 {\n  margin-left: 1rem;\n  margin-right: 1rem;\n}\n\n.my-4 {\n  margin-top: 1rem;\n  margin-bottom: 1rem;\n}\n\n.pt-4 {\n  padding-top: 1rem;\n}\n\n.pb-4 {\n  padding-bottom: 1rem;\n}\n\n.pr-4 {\n  padding-right: 1rem;\n}\n\n.pl-4 {\n  padding-left: 1rem;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-4 {\n  padding-top: 1rem;\n  padding-bottom: 1rem;\n}\n\n.mt-5 {\n  margin-top: 1.25rem;\n}\n\n.mb-5 {\n  margin-bottom: 1.25rem;\n}\n\n.mr-5 {\n  margin-right: 1.25rem;\n}\n\n.ml-5 {\n  margin-left: 1.25rem;\n}\n\n.mx-5 {\n  margin-left: 1.25rem;\n  margin-right: 1.25rem;\n}\n\n.my-5 {\n  margin-top: 1.25rem;\n  margin-bottom: 1.25rem;\n}\n\n.pt-5 {\n  padding-top: 1.25rem;\n}\n\n.pb-5 {\n  padding-bottom: 1.25rem;\n}\n\n.pr-5 {\n  padding-right: 1.25rem;\n}\n\n.pl-5 {\n  padding-left: 1.25rem;\n}\n\n.px-5 {\n  padding-left: 1.25rem;\n  padding-right: 1.25rem;\n}\n\n.py-5 {\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n}\n\n* {\n  font-family: \"Roboto\", sans-serif;\n  margin: 0;\n  padding: 0;\n}\n\nbody {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: start;\n      -ms-flex-align: start;\n          align-items: flex-start;\n  background-color: #e9ebee;\n  padding: 10px;\n}\n\nbody #app {\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n      -ms-flex-pack: center;\n          justify-content: center;\n  -webkit-box-align: center;\n      -ms-flex-align: center;\n          align-items: center;\n  -ms-flex-wrap: wrap;\n      flex-wrap: wrap;\n}\n\nbody #app .container {\n  border-radius: 5px;\n  width: 375px;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app .container-sm {\n  border-radius: 5px;\n  max-width: 375px !important;\n  margin: 5px;\n  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);\n  border: 1px solid #d0d1d5;\n  background-color: white;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 5px 10px;\n}\n\nbody #app input,\nbody #app select {\n  padding: 5px;\n  outline: none;\n  width: 100%;\n  margin: 5px 0;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  border: 1px solid #ccc;\n  border-radius: 5px;\n}\n\nbody #app button {\n  border: none;\n  padding: 5px 10px;\n  -webkit-box-sizing: border-box;\n          box-sizing: border-box;\n  margin: 3px 0;\n  border-radius: 3px;\n  background-color: #d7dbdd;\n  color: #32373b;\n}\n\nbody #app button:hover {\n  background-color: #f3f4f4;\n}\n\nbody #app button:active {\n  background-color: #e5e7e9;\n}\n\nbody #app button.black {\n  background-color: #4e5459;\n  color: #e5ffff;\n}\n\nbody #app button.black:hover {\n  background-color: #363a3e;\n}\n\nbody #app button.black:active {\n  background-color: #666e74;\n}\n\nbody #app button.blue {\n  background-color: #59bacc;\n  color: #e5ffff;\n}\n\nbody #app button.blue:hover {\n  background-color: #80cad8;\n}\n\nbody #app button.blue:active {\n  background-color: #6dc2d2;\n}\n\nbody #app button.red {\n  background-color: #e2574c;\n  color: #e5ffff;\n}\n\nbody #app button.red:hover {\n  background-color: #e98078;\n}\n\nbody #app button.red:active {\n  background-color: #e66c62;\n}\n\nbody #app button.green {\n  background-color: #58ad69;\n  color: #e5ffff;\n}\n\nbody #app button.green:hover {\n  background-color: #7abe88;\n}\n\nbody #app button.green:active {\n  background-color: #69b578;\n}\n\nbody #app button.orange {\n  background-color: #ffbc49;\n  color: #666;\n}\n\nbody #app button.orange:hover {\n  background-color: #ffcf7c;\n}\n\nbody #app button.orange:active {\n  background-color: #ffc563;\n}\n\nbody #app button.block {\n  width: 100%;\n}\n\nbody #app button.sm {\n  padding: 2px 5px;\n}\n\nbody #app ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\nbody #app ul li {\n  padding: 5px;\n  background-color: #f3f4f4;\n  margin-bottom: 5px;\n  border-radius: 3px;\n}\n\nbody #app ul li:last-child {\n  margin-bottom: 0;\n}\n\nbody #app ul li:hover {\n  background-color: #e5e7e9;\n}\n\nbody #app hr {\n  background: -webkit-gradient(linear, left top, right top, from(#59bacc), to(#ffbc49));\n  background: linear-gradient(to right, #59bacc, #ffbc49);\n  height: 1px;\n  border: none;\n}\n\nbody #app small {\n  font-size: 12px;\n}\n/*# sourceMappingURL=style.css.map */"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/.prettierrc",
    "content": "{\n    \"printWidth\": 250\n}"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/README.md",
    "content": "# ders-6-socialmark-uygulamasi\n\n## Project setup\n```\nyarn install\n```\n\n### Compiles and hot-reloads for development\n```\nyarn serve\n```\n\n### Compiles and minifies for production\n```\nyarn build\n```\n\n### Lints and fixes files\n```\nyarn lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/babel.config.js",
    "content": "module.exports = {\n  presets: [\n    '@vue/cli-plugin-babel/preset'\n  ]\n}\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/db.json",
    "content": "{\n  \"users\": [\n    {\n      \"username\": \"gkandemir\",\n      \"fullname\": \"Gökhan Kandemir\",\n      \"password\": \"79a0af24ff17bb7a8a4a1176de203d9f566ee17d\",\n      \"id\": 1\n    },\n    {\n      \"username\": \"prototurk\",\n      \"fullname\": \"Tayfun Erbilen\",\n      \"password\": \"79a0af24ff17bb7a8a4a1176de203d9f566ee17d\",\n      \"id\": 2\n    },\n    {\n      \"username\": \"kablosuzbeyin\",\n      \"fullname\": \"Ramazan Sancar\",\n      \"password\": \"79a0af24ff17bb7a8a4a1176de203d9f566ee17d\",\n      \"id\": 3\n    }\n  ],\n  \"user_likes\": [\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 1,\n      \"id\": 1\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 6,\n      \"id\": 4\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 16,\n      \"id\": 5\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 9,\n      \"id\": 6\n    }\n  ],\n  \"user_bookmarks\": [\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 6,\n      \"id\": 4\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 16,\n      \"id\": 5\n    },\n    {\n      \"userId\": 1,\n      \"bookmarkId\": 9,\n      \"id\": 6\n    }\n  ],\n  \"bookmarks\": [\n    {\n      \"title\": \"Vue Docs\",\n      \"url\": \"https://v3.vuejs.org\",\n      \"categoryId\": 1,\n      \"description\": \"Dünyanın en güzel framework'ü\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T18:57:24.821Z\",\n      \"id\": 1\n    },\n    {\n      \"title\": \"Frontend Masters\",\n      \"url\": \"http://...\",\n      \"categoryId\": 3,\n      \"description\": \"Çok güzel bir kaynak..\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T19:00:35.404Z\",\n      \"id\": 2\n    },\n    {\n      \"title\": \"AWS\",\n      \"url\": \"https:///aws\",\n      \"categoryId\": 5,\n      \"description\": \"çok güzel\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T19:01:12.447Z\",\n      \"id\": 3\n    },\n    {\n      \"title\": \"Güzel Müzikler\",\n      \"url\": \"https://...\",\n      \"categoryId\": 6,\n      \"description\": \"çok güzel müzikler ama gerçekten çok güzel..\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T19:11:23.114Z\",\n      \"id\": 4\n    },\n    {\n      \"title\": \"Prototurk\",\n      \"url\": \"https://prototurk.com\",\n      \"categoryId\": 4,\n      \"description\": \"Türkiyenin StackOverflow'u olacak bir sayfa.\",\n      \"userId\": 2,\n      \"created_at\": \"2021-08-26T19:43:24.698Z\",\n      \"id\": 5\n    },\n    {\n      \"title\": \"Marvel Filmleri\",\n      \"url\": \"httpa://...\",\n      \"categoryId\": 6,\n      \"description\": \"bu serinin tamamını kesinlikle izle.\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T20:03:34.015Z\",\n      \"id\": 6\n    },\n    {\n      \"title\": \"Kablosuz Beyin\",\n      \"url\": \"https://kablosuzbeyin.com\",\n      \"categoryId\": 6,\n      \"description\": \"Kablosuz Beyin etkinlikler için..\",\n      \"userId\": 1,\n      \"created_at\": \"2021-08-26T20:04:14.248Z\",\n      \"id\": 7\n    },\n    {\n      \"title\": \"Yeni Yer İmi\",\n      \"url\": \"http://....\",\n      \"categoryId\": 2,\n      \"description\": \"aaaaa\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:31:14.532Z\",\n      \"id\": 8\n    },\n    {\n      \"title\": \"tttt\",\n      \"url\": \"aaaaa\",\n      \"categoryId\": 4,\n      \"description\": \"ssssss\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:35:59.811Z\",\n      \"id\": 9\n    },\n    {\n      \"title\": \"TestS\",\n      \"url\": \"http://...\",\n      \"categoryId\": 1,\n      \"description\": \"aaaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:37:57.630Z\",\n      \"id\": 10\n    },\n    {\n      \"title\": \"denem\",\n      \"url\": \"http\",\n      \"categoryId\": 2,\n      \"description\": \"asdadasdad\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:41:07.474Z\",\n      \"id\": 11\n    },\n    {\n      \"title\": \"New Test\",\n      \"url\": \"http://\",\n      \"categoryId\": 2,\n      \"description\": \"aaaaaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:45:30.984Z\",\n      \"id\": 12\n    },\n    {\n      \"title\": \"Deneme\",\n      \"url\": \"http://\",\n      \"categoryId\": 1,\n      \"description\": \"aaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:45:53.053Z\",\n      \"id\": 13\n    },\n    {\n      \"title\": \"yen\",\n      \"url\": \"aaa\",\n      \"categoryId\": 1,\n      \"description\": \"sdfsdf\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:46:51.308Z\",\n      \"id\": 14\n    },\n    {\n      \"title\": \"deneme\",\n      \"url\": \"aaaaa\",\n      \"categoryId\": 3,\n      \"description\": \"asdasd\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:51:28.380Z\",\n      \"id\": 15\n    },\n    {\n      \"title\": \"Can Sarıgöl Oyun\",\n      \"url\": \"178....\",\n      \"categoryId\": 1,\n      \"description\": \"aaaaaaaaaaaa\",\n      \"userId\": 2,\n      \"created_at\": \"2021-09-01T18:52:14.559Z\",\n      \"id\": 16\n    },\n    {\n      \"title\": \"aaa\",\n      \"url\": \"fdghfggh\",\n      \"categoryId\": 3,\n      \"description\": \"fghfghfh\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:52:35.170Z\",\n      \"id\": 17\n    },\n    {\n      \"title\": \"Vue3 Bootcamp\",\n      \"url\": \"aaaa\",\n      \"categoryId\": 5,\n      \"description\": \"sdfsdfdsf\",\n      \"userId\": 1,\n      \"created_at\": \"2021-09-01T18:54:42.357Z\",\n      \"id\": 18\n    }\n  ],\n  \"categories\": [\n    {\n      \"name\": \"Vue.js\",\n      \"id\": 1\n    },\n    {\n      \"name\": \"React.js\",\n      \"id\": 2\n    },\n    {\n      \"name\": \"Frontend\",\n      \"id\": 3\n    },\n    {\n      \"name\": \"Backend\",\n      \"id\": 4\n    },\n    {\n      \"name\": \"Cloud\",\n      \"id\": 5\n    },\n    {\n      \"name\": \"Sosyal Yaşam\",\n      \"id\": 6\n    }\n  ]\n}"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/package.json",
    "content": "{\n  \"name\": \"ders-6-socialmark-uygulamasi\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"serve\": \"vue-cli-service serve\",\n    \"build\": \"vue-cli-service build\",\n    \"lint\": \"vue-cli-service lint\"\n  },\n  \"dependencies\": {\n    \"axios\": \"^0.21.1\",\n    \"core-js\": \"^3.6.5\",\n    \"crypto-js\": \"^4.1.1\",\n    \"secure-ls\": \"^1.2.6\",\n    \"socket.io-client\": \"^4.2.0\",\n    \"vue\": \"^3.0.0\",\n    \"vue-router\": \"4\",\n    \"vuex\": \"^4.0.2\",\n    \"vuex-persistedstate\": \"^4.0.0\"\n  },\n  \"devDependencies\": {\n    \"@vue/cli-plugin-babel\": \"~4.5.0\",\n    \"@vue/cli-plugin-eslint\": \"~4.5.0\",\n    \"@vue/cli-service\": \"~4.5.0\",\n    \"@vue/compiler-sfc\": \"^3.0.0\",\n    \"babel-eslint\": \"^10.1.0\",\n    \"eslint\": \"^6.7.2\",\n    \"eslint-plugin-vue\": \"^7.0.0\"\n  },\n  \"eslintConfig\": {\n    \"root\": true,\n    \"env\": {\n      \"node\": true\n    },\n    \"extends\": [\n      \"plugin:vue/vue3-essential\",\n      \"eslint:recommended\"\n    ],\n    \"parserOptions\": {\n      \"parser\": \"babel-eslint\"\n    },\n    \"rules\": {}\n  },\n  \"browserslist\": [\n    \"> 1%\",\n    \"last 2 versions\",\n    \"not dead\"\n  ]\n}\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/public/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"\">\n  <head>\n    <meta charset=\"utf-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n    <link rel=\"icon\" href=\"<%= BASE_URL %>favicon.ico\" />\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\">\n    <noscript>\n      <strong\n        >We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to\n        continue.</strong\n      >\n    </noscript>\n    <div id=\"app\"></div>\n    <!-- built files will be auto injected -->\n  </body>\n</html>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/App.vue",
    "content": "<template>\n  <router-view></router-view>\n</template>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/assets/style.css",
    "content": "/*! tailwindcss v2.2.7 | MIT License | https://tailwindcss.com */\n\n/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\nhtml {\n  -moz-tab-size: 4;\n  -o-tab-size: 4;\n     tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n  line-height: 1.15;\n  /* 1 */\n  -webkit-text-size-adjust: 100%;\n  /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n  margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n  font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n  height: 0;\n  /* 1 */\n  color: inherit;\n  /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n  -webkit-text-decoration: underline dotted;\n          text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n  font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n  font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace;\n  /* 1 */\n  font-size: 1em;\n  /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n  font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n  font-size: 75%;\n  line-height: 0;\n  position: relative;\n  vertical-align: baseline;\n}\n\nsub {\n  bottom: -0.25em;\n}\n\nsup {\n  top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n  text-indent: 0;\n  /* 1 */\n  border-color: inherit;\n  /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  font-family: inherit;\n  /* 1 */\n  font-size: 100%;\n  /* 1 */\n  line-height: 1.15;\n  /* 1 */\n  margin: 0;\n  /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect {\n  /* 1 */\n  text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n  -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n::-moz-focus-inner {\n  border-style: none;\n  padding: 0;\n}\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n:-moz-focusring {\n  outline: 1px dotted ButtonText;\n}\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n:-moz-ui-invalid {\n  box-shadow: none;\n}\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n  padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n  vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n  height: auto;\n}\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n  -webkit-appearance: textfield;\n  /* 1 */\n  outline-offset: -2px;\n  /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n  -webkit-appearance: none;\n}\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n::-webkit-file-upload-button {\n  -webkit-appearance: button;\n  /* 1 */\n  font: inherit;\n  /* 2 */\n}\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n  display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n  margin: 0;\n}\n\nbutton {\n  background-color: transparent;\n  background-image: none;\n}\n\nfieldset {\n  margin: 0;\n  padding: 0;\n}\n\nol,\nul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n *    sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n *    to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n  /* 1 */\n  line-height: 1.5;\n  /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n  font-family: inherit;\n  line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n *    We used to set this in the html element and inherit from\n *    the parent element for everything else. This caused issues\n *    in shadow-dom-enhanced elements like <details> where the content\n *    is wrapped by a div with box-sizing set to `content-box`.\n *\n *    https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n *    By default, the way the browser specifies that an element should have no\n *    border is by setting it's border-style to `none` in the user-agent\n *    stylesheet.\n *\n *    In order to easily add borders to elements by just setting the `border-width`\n *    property, we change the default border-style for all elements to `solid`, and\n *    use border-width to hide them instead. This way our `border` utilities only\n *    need to set the `border-width` property instead of the entire `border`\n *    shorthand, making our border utilities much more straightforward to compose.\n *\n *    https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n  /* 1 */\n  border-width: 0;\n  /* 2 */\n  border-style: solid;\n  /* 2 */\n  border-color: currentColor;\n  /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n  border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n  border-style: solid;\n}\n\ntextarea {\n  resize: vertical;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\nbutton,\n[role=\"button\"] {\n  cursor: pointer;\n}\n\ntable {\n  border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n  font-size: inherit;\n  font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n  color: inherit;\n  text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  padding: 0;\n  line-height: inherit;\n  color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * 1. Make replaced elements `display: block` by default as that's\n *    the behavior you want almost all of the time. Inspired by\n *    CSS Remedy, with `svg` added as well.\n *\n *    https://github.com/mozdevs/cssremedy/issues/14\n * \n * 2. Add `vertical-align: middle` to align replaced elements more\n *    sensibly by default when overriding `display` by adding a\n *    utility like `inline`.\n *\n *    This can trigger a poorly considered linting error in some\n *    tools but is included by design.\n * \n *    https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n  display: block;\n  /* 1 */\n  vertical-align: middle;\n  /* 2 */\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their intrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n  max-width: 100%;\n  height: auto;\n}\n\n/**\n * Ensure the default browser behavior of the `hidden` attribute.\n */\n\n[hidden] {\n  display: none;\n}\n\n*, ::before, ::after {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-ring-offset-shadow: 0 0 #0000;\n  --tw-ring-shadow: 0 0 #0000;\n  --tw-shadow: 0 0 #0000;\n}\n\n.like-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.like-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.like-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(199, 210, 254, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(55, 48, 163, var(--tw-text-opacity));\n}\n\n.bookmark-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.bookmark-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(252, 165, 165, var(--tw-bg-opacity));\n}\n\n.bookmark-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(153, 27, 27, var(--tw-text-opacity));\n}\n\n.details-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.details-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.group:focus-within .details-btn {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.sidebar {\n  display: flex;\n  height: 100vh;\n  width: 15rem;\n  flex-shrink: 0;\n  flex-direction: column;\n  border-right-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.details-container {\n  visibility: hidden;\n  position: absolute;\n  right: 0px;\n  top: 100%;\n  z-index: 10 !important;\n  height: 10rem;\n  width: 15rem;\n  overflow-y: scroll;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  text-align: left;\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.group:focus-within .details-container {\n  visibility: visible;\n}\n\n.group:hover .details-container {\n  visibility: visible;\n}\n\n.header-container {\n  display: flex;\n  height: 4rem;\n  width: 100%;\n  align-items: center;\n  justify-content: center;\n  border-bottom-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.navbar-item {\n  border-radius: 0.5rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(107, 114, 128, var(--tw-border-opacity));\n  padding: 0.5rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.navbar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.menu-item {\n  display: flex;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.menu-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.sidebar-item {\n  display: flex;\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n  --tw-text-opacity: 1;\n  color: rgba(107, 114, 128, var(--tw-text-opacity));\n}\n\n.sidebar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.login_register_container {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  margin: auto;\n  display: flex;\n  width: 91.666667%;\n  transform: translate(-50%, -50%);\n  flex-direction: column;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n@media (min-width: 640px) {\n  .login_register_container {\n    width: 50%;\n  }\n}\n\n@media (min-width: 768px) {\n  .login_register_container {\n    width: 33.333333%;\n  }\n}\n\n@media (min-width: 1024px) {\n  .login_register_container {\n    width: 25%;\n  }\n}\n\n.input {\n  border-radius: 0.125rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n  outline: 2px solid transparent;\n  outline-offset: 2px;\n}\n\n.input:focus {\n  --tw-border-opacity: 1;\n  border-color: rgba(0, 0, 0, var(--tw-border-opacity));\n}\n\n.default-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.default-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.secondary-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(107, 114, 128, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.secondary-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(75, 85, 99, var(--tw-bg-opacity));\n}\n\n.invisible {\n  visibility: hidden;\n}\n\n.absolute {\n  position: absolute;\n}\n\n.relative {\n  position: relative;\n}\n\n.top-full {\n  top: 100%;\n}\n\n.right-0 {\n  right: 0px;\n}\n\n.\\!z-10 {\n  z-index: 10 !important;\n}\n\n.mx-auto {\n  margin-left: auto;\n  margin-right: auto;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-auto {\n  margin-left: auto;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.flex {\n  display: flex;\n}\n\n.grid {\n  display: grid;\n}\n\n.hidden {\n  display: none;\n}\n\n.h-16 {\n  height: 4rem;\n}\n\n.h-8 {\n  height: 2rem;\n}\n\n.h-\\[100vh\\] {\n  height: 100vh;\n}\n\n.h-10 {\n  height: 2.5rem;\n}\n\n.h-40 {\n  height: 10rem;\n}\n\n.w-full {\n  width: 100%;\n}\n\n.w-8 {\n  width: 2rem;\n}\n\n.w-56 {\n  width: 14rem;\n}\n\n.w-60 {\n  width: 15rem;\n}\n\n.w-1\\/4 {\n  width: 25%;\n}\n\n.w-10 {\n  width: 2.5rem;\n}\n\n.flex-shrink-0 {\n  flex-shrink: 0;\n}\n\n.grid-cols-8 {\n  grid-template-columns: repeat(8, minmax(0, 1fr));\n}\n\n.flex-row {\n  flex-direction: row;\n}\n\n.flex-col {\n  flex-direction: column;\n}\n\n.items-center {\n  align-items: center;\n}\n\n.justify-end {\n  justify-content: flex-end;\n}\n\n.justify-center {\n  justify-content: center;\n}\n\n.justify-between {\n  justify-content: space-between;\n}\n\n.gap-4 {\n  gap: 1rem;\n}\n\n.gap-x-3 {\n  -moz-column-gap: 0.75rem;\n       column-gap: 0.75rem;\n}\n\n.gap-x-1 {\n  -moz-column-gap: 0.25rem;\n       column-gap: 0.25rem;\n}\n\n.overflow-x-hidden {\n  overflow-x: hidden;\n}\n\n.overflow-y-scroll {\n  overflow-y: scroll;\n}\n\n.rounded-sm {\n  border-radius: 0.125rem;\n}\n\n.rounded-md {\n  border-radius: 0.375rem;\n}\n\n.border-\\[1px\\] {\n  border-width: 1px;\n}\n\n.border-b-\\[1px\\] {\n  border-bottom-width: 1px;\n}\n\n.border-r-\\[1px\\] {\n  border-right-width: 1px;\n}\n\n.border-gray-200 {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n}\n\n.border-gray-300 {\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n}\n\n.bg-gray-100 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.bg-white {\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bg-gray-700 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n}\n\n.bg-red-200 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n}\n\n.fill-current {\n  fill: currentColor;\n}\n\n.p-2 {\n  padding: 0.5rem;\n}\n\n.p-3 {\n  padding: 0.75rem;\n}\n\n.p-1 {\n  padding: 0.25rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-xl {\n  font-size: 1.25rem;\n  line-height: 1.75rem;\n}\n\n.text-sm {\n  font-size: 0.875rem;\n  line-height: 1.25rem;\n}\n\n.text-2xl {\n  font-size: 1.5rem;\n  line-height: 2rem;\n}\n\n.text-xs {\n  font-size: 0.75rem;\n  line-height: 1rem;\n}\n\n.font-bold {\n  font-weight: 700;\n}\n\n.text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.text-gray-600 {\n  --tw-text-opacity: 1;\n  color: rgba(75, 85, 99, var(--tw-text-opacity));\n}\n\n.text-gray-400 {\n  --tw-text-opacity: 1;\n  color: rgba(156, 163, 175, var(--tw-text-opacity));\n}\n\n.text-red-900 {\n  --tw-text-opacity: 1;\n  color: rgba(127, 29, 29, var(--tw-text-opacity));\n}\n\n.shadow-md {\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-sm {\n  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-lg {\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.transition-colors {\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.duration-500 {\n  transition-duration: 500ms;\n}\n\n.hover\\:bg-black:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-gray-200:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-indigo-300:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.hover\\:text-black:hover {\n  --tw-text-opacity: 1;\n  color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.group:focus-within .group-focus-within\\:visible {\n  visibility: visible;\n}\n\n.group:focus-within .group-focus-within\\:bg-gray-300 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.group:hover .group-hover\\:visible {\n  visibility: visible;\n}\n\n.group:hover .group-hover\\:text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:text-gray-700 {\n  --tw-text-opacity: 1;\n  color: rgba(55, 65, 81, var(--tw-text-opacity));\n}\n\n@media (min-width: 640px) {\n  .sm\\:grid-cols-2 {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 768px) {\n  .md\\:grid-cols-4 {\n    grid-template-columns: repeat(4, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1024px) {\n  .lg\\:grid-cols-5 {\n    grid-template-columns: repeat(5, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1280px) {\n  .xl\\:grid-cols-6 {\n    grid-template-columns: repeat(6, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1536px) {\n  .\\32xl\\:grid-cols-8 {\n    grid-template-columns: repeat(8, minmax(0, 1fr));\n  }\n}\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/components/Account/sideBar.vue",
    "content": "<template>\n  <aside class=\"flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px]\">\n    <a class=\"sidebar-item\" href=\"#\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n        <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n      </svg>\n      Beğeniler\n    </a>\n    <a class=\"sidebar-item\" href=\"#\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n      </svg>\n      Favoriler\n    </a>\n    <a class=\"sidebar-item\" href=\"#\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-2\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path\n          d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\"\n        />\n      </svg>\n      Hesabım\n    </a>\n  </aside>\n</template>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/components/HelloWorld.vue",
    "content": "<template>\n  <div class=\"hello\">\n    <h1>{{ msg }}</h1>\n    <p>\n      For a guide and recipes on how to configure / customize this project,<br>\n      check out the\n      <a href=\"https://cli.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-cli documentation</a>.\n    </p>\n    <h3>Installed CLI Plugins</h3>\n    <ul>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel\" target=\"_blank\" rel=\"noopener\">babel</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-eslint\" target=\"_blank\" rel=\"noopener\">eslint</a></li>\n    </ul>\n    <h3>Essential Links</h3>\n    <ul>\n      <li><a href=\"https://vuejs.org\" target=\"_blank\" rel=\"noopener\">Core Docs</a></li>\n      <li><a href=\"https://forum.vuejs.org\" target=\"_blank\" rel=\"noopener\">Forum</a></li>\n      <li><a href=\"https://chat.vuejs.org\" target=\"_blank\" rel=\"noopener\">Community Chat</a></li>\n      <li><a href=\"https://twitter.com/vuejs\" target=\"_blank\" rel=\"noopener\">Twitter</a></li>\n      <li><a href=\"https://news.vuejs.org\" target=\"_blank\" rel=\"noopener\">News</a></li>\n    </ul>\n    <h3>Ecosystem</h3>\n    <ul>\n      <li><a href=\"https://router.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-router</a></li>\n      <li><a href=\"https://vuex.vuejs.org\" target=\"_blank\" rel=\"noopener\">vuex</a></li>\n      <li><a href=\"https://github.com/vuejs/vue-devtools#vue-devtools\" target=\"_blank\" rel=\"noopener\">vue-devtools</a></li>\n      <li><a href=\"https://vue-loader.vuejs.org\" target=\"_blank\" rel=\"noopener\">vue-loader</a></li>\n      <li><a href=\"https://github.com/vuejs/awesome-vue\" target=\"_blank\" rel=\"noopener\">awesome-vue</a></li>\n    </ul>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'HelloWorld',\n  props: {\n    msg: String\n  }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\nh3 {\n  margin: 40px 0 0;\n}\nul {\n  list-style-type: none;\n  padding: 0;\n}\nli {\n  display: inline-block;\n  margin: 0 10px;\n}\na {\n  color: #42b983;\n}\n</style>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/components/Home/Sidebar.vue",
    "content": "<template>\n  <aside class=\"sidebar\">\n    <a v-for=\"category in categoryList\" :key=\"category.id\" class=\"sidebar-item\" href=\"#\" @click.prevent=\"$emit('category-changed', category.id)\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path\n          d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\"\n        />\n      </svg>\n      {{ category.name }}\n    </a>\n    <a class=\"sidebar-item\" href=\"#\" @click.prevent=\"$emit('category-changed', null)\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n        <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n        <path\n          d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\"\n        />\n      </svg>\n      Tümünü Göster\n    </a>\n  </aside>\n</template>\n<script>\nexport default {\n  emits: [\"category-changed\"],\n  data() {\n    return {\n      categoryList: []\n    };\n  },\n  created() {\n    this.$appAxios.get(\"/categories\").then(category_response => {\n      // console.log(category_response);\n      this.categoryList = category_response?.data || [];\n    });\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/components/Shared/appBookmarkList/BookmarkListItem.vue",
    "content": "<template>\n  <div class=\"bg-white flex flex-col gap-x-3 rounded-md shadow-sm\">\n    <div class=\"p-3\">\n      <a :href=\"item.url\" target=\"_blank\" class=\"hover:text-black font-bold text-l mb-1 text-gray-600 text-center\">{{ item.title || \"-\" }}</a>\n      <div class=\"flex items-center justify-center mt-2 gap-x-1\">\n        <button\n          @click=\"likeItem\"\n          class=\"like-btn group\"\n          :class=\"{\n            'like-item-active': alreadyLiked\n          }\"\n        >\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n            <path\n              d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\"\n            />\n          </svg>\n        </button>\n        <button\n          @click=\"bookmarkItem\"\n          class=\"bookmark-btn group\"\n          :class=\"{\n            'bookmark-item-active': alreadyBookmarked\n          }\"\n        >\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" enable-background=\"new 0 0 24 24\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\">\n            <rect fill=\"none\" />\n            <path d=\"M17,11v6.97l-5-2.14l-5,2.14V5h6V3H7C5.9,3,5,3.9,5,5v16l7-3l7,3V11H17z M21,7h-2v2h-2V7h-2V5h2V3h2v2h2V7z\" />\n          </svg>\n        </button>\n        <div class=\"relative group\">\n          <button class=\"details-btn !-z-[1] group\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-gray-700\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zM6 12h2v2H6zm0-3h2v2H6zm0-3h2v2H6zm4 6h5v2h-5zm0-3h8v2h-8zm0-3h8v2h-8z\" />\n            </svg>\n            <p class=\"details-container\">\n              {{ item.description }}\n            </p>\n          </button>\n        </div>\n      </div>\n      <div class=\"text-xs text-gray-400 mt-2 flex justify-between\">\n        <a href=\"#\" class=\"hover:text-black\"> {{ userName }} </a>\n        <span>14 Mart</span>\n      </div>\n    </div>\n    <div class=\"bg-red-200 p-1 mt-auto text-red-900 text-center text-sm\">{{ categoryName }}</div>\n  </div>\n</template>\n<script>\nimport { mapGetters } from \"vuex\";\nexport default {\n  props: {\n    item: {\n      type: Object,\n      required: true,\n      default: () => {}\n    }\n  },\n  methods: {\n    likeItem() {\n      this.$appAxios({\n        url: this.alreadyLiked ? `/user_likes/${this.likedItem.id}` : \"/user_likes\",\n        method: this.alreadyLiked ? \"DELETE\" : \"POST\",\n        data: {\n          userId: this._getCurrentUser.id,\n          bookmarkId: this.item.id\n        }\n      }).then(user_like_response => {\n        let bookmarks = [...this._userLikes];\n        if (this.alreadyLiked) {\n          bookmarks = bookmarks.filter(b => b.id !== this.likedItem.id);\n        } else {\n          bookmarks = [...bookmarks, user_like_response.data];\n        }\n        this.$store.commit(\"setLikes\", bookmarks);\n      });\n    },\n    _likeItem() {\n      let likes = [...this._userLikes];\n      if (!this.alreadyLiked) {\n        likes = [...likes, this.item.id];\n      } else {\n        likes = likes.filter(l => l !== this.item.id);\n      }\n      this.$appAxios.patch(`/users/${this._getCurrentUser.id}`, { likes }).then(() => {\n        this.$store.commit(\"setLikes\", likes);\n      });\n    },\n    bookmarkItem() {\n      this.$appAxios({\n        url: this.alreadyBookmarked ? `/user_bookmarks/${this.bookmarkedItem.id}` : \"/user_bookmarks\",\n        method: this.alreadyBookmarked ? \"DELETE\" : \"POST\",\n        data: {\n          userId: this._getCurrentUser.id,\n          bookmarkId: this.item.id\n        }\n      }).then(user_bookmark_response => {\n        let bookmarks = [...this._userBookmarks];\n        if (this.alreadyBookmarked) {\n          bookmarks = bookmarks.filter(b => b.id !== this.bookmarkedItem.id);\n        } else {\n          bookmarks = [...bookmarks, user_bookmark_response.data];\n        }\n        this.$store.commit(\"setBookmarks\", bookmarks);\n      });\n    },\n    _bookmarkItem() {\n      let bookmarks = [...this._userBookmarks];\n      if (!this.alreadyBookmarked) {\n        bookmarks = [...bookmarks, this.item.id];\n      } else {\n        bookmarks = bookmarks.filter(b => b !== this.item.id);\n      }\n      this.$appAxios.patch(`/users/${this._getCurrentUser.id}`, { bookmarks }).then(() => {\n        this.$store.commit(\"setBookmarks\", bookmarks);\n      });\n    }\n  },\n  computed: {\n    categoryName() {\n      return this.item?.category?.name || \"-\";\n    },\n    userName() {\n      return this.item?.user?.fullname || \"-\";\n    },\n    // _alreadyLiked() {\n    //   return this._userLikes?.indexOf(this.item.id) > -1;\n    // },\n    alreadyLiked() {\n      return Boolean(this.likedItem);\n    },\n    alreadyBookmarked() {\n      return Boolean(this.bookmarkedItem);\n    },\n    bookmarkedItem() {\n      return this._userBookmarks?.find(b => b.bookmarkId === this.item.id);\n    },\n    likedItem() {\n      return this._userLikes?.find(b => b.bookmarkId === this.item.id);\n    },\n    ...mapGetters([\"_getCurrentUser\", \"_userLikes\", \"_userBookmarks\"])\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/components/Shared/appBookmarkList/index.vue",
    "content": "<template>\n  <div class=\"w-full\">\n    <div class=\"p-2 grid 2xl:grid-cols-8 xl:grid-cols-6 lg:grid-cols-5 md:grid-cols-4 sm:grid-cols-2 gap-4\">\n      <BookmarkListItem v-for=\"item in items\" :key=\"item.id\" :item=\"item\" />\n    </div>\n  </div>\n</template>\n<script>\nimport BookmarkListItem from \"./BookmarkListItem\";\nexport default {\n  components: {\n    BookmarkListItem\n  },\n  props: {\n    items: {\n      type: Array,\n      required: true,\n      default: () => []\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/components/Shared/appHeader.vue",
    "content": "<template>\n  <div class=\"header-container\">\n    <nav class=\"flex w-full px-2\">\n      <div class=\"flex text-xl\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n          <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n          <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n        </svg>\n        BookLike\n      </div>\n\n      <div v-if=\"_isAuthenticated\" class=\"ml-auto flex items-center\">\n        <router-link :to=\"{ name: 'NewBookmarkPage' }\" class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n          </svg>\n          New\n        </router-link>\n        <div class=\"relative group\">\n          <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n            </svg>\n          </button>\n          <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n            <router-link class=\"mb-2 menu-item\" :to=\"{ name: 'Settings' }\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path\n                  d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\"\n                />\n              </svg>\n              Account\n            </router-link>\n\n            <router-link class=\"mb-2 menu-item\" :to=\"{ name: 'Favorites' }\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n              </svg>\n              Favorites\n            </router-link>\n\n            <router-link class=\"mb-2 menu-item\" :to=\"{ name: 'Likes' }\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n                <path\n                  d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\"\n                />\n              </svg>\n              Likes\n            </router-link>\n            <a @click=\"onLogout\" href=\"#\" class=\"menu-item\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                <g>\n                  <path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" />\n                </g>\n              </svg>\n              Logout</a\n            >\n          </nav>\n        </div>\n      </div>\n    </nav>\n  </div>\n</template>\n\n<script>\nimport { mapGetters } from \"vuex\";\nexport default {\n  computed: {\n    ...mapGetters([\"_isAuthenticated\"])\n  },\n  methods: {\n    onLogout() {\n      this.$store.commit(\"logoutUser\");\n      this.$router.push({ name: \"LoginPage\" });\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./store\";\nimport { appAxios } from \"@/utils/appAxios\";\nimport \"@/assets/style.css\";\n\nimport appHeader from \"@/components/Shared/appHeader\";\nimport appBookmarkList from \"@/components/Shared/appBookmarkList\";\n\nimport io from \"socket.io-client\";\nconst socket = io(\"http://localhost:2018\");\n\nconst app = createApp(App);\napp.component(\"AppHeader\", appHeader);\napp.component(\"appBookmarkList\", appBookmarkList);\napp.use(router);\napp.use(store);\napp.config.globalProperties.$appAxios = appAxios;\napp.config.globalProperties.$log = console.log;\napp.config.globalProperties.$socket = socket;\napp.mount(\"#app\");\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/router/index.js",
    "content": "import { createRouter, createWebHashHistory } from \"vue-router\";\nimport store from \"../store\";\nconst routes = [\n  {\n    name: \"HomePage\",\n    path: \"/\",\n    component: () => import(\"@/views/Home\")\n  },\n  {\n    name: \"LoginPage\",\n    path: \"/login\",\n    component: () => import(\"@/views/Login\")\n  },\n  {\n    name: \"RegisterPage\",\n    path: \"/register\",\n    component: () => import(\"@/views/Register\")\n  },\n  {\n    name: \"NewBookmarkPage\",\n    path: \"/new\",\n    component: () => import(\"@/views/NewBookmark\")\n  },\n  {\n    name: \"Favorites\",\n    path: \"/favorites\",\n    meta: {\n      componentName: \"appBookmarkList\"\n    },\n    component: () => import(\"@/views/Account\")\n  },\n  {\n    name: \"Likes\",\n    path: \"/likes\",\n    meta: {\n      componentName: \"appBookmarkList\"\n    },\n    component: () => import(\"@/views/Account\")\n  },\n  {\n    name: \"Settings\",\n    path: \"/settings\",\n    meta: {\n      componentName: \"userSettings\"\n    },\n    component: () => import(\"@/views/Account\")\n  }\n];\n\nconst router = createRouter({\n  routes,\n  history: createWebHashHistory()\n});\n\nrouter.beforeEach((to, _, next) => {\n  const authRequiredRoutes = [\"HomePage\"];\n  const authNotRequiredRoutes = [\"LoginPage\", \"RegisterPage\"];\n  const _isAuthenticated = store.getters._isAuthenticated;\n\n  if (authNotRequiredRoutes.indexOf(to.name) > -1 && _isAuthenticated) next(false);\n\n  if (authRequiredRoutes.indexOf(to.name) > -1) {\n    if (_isAuthenticated) next();\n    else next({ name: \"LoginPage\" });\n  } else {\n    next();\n  }\n});\n\nexport default router;\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/store/index.js",
    "content": "import { createStore } from \"vuex\";\nimport createPersistedState from \"vuex-persistedstate\";\n\nimport SecureLS from \"secure-ls\";\nvar ls = new SecureLS({ isCompression: false });\n\nexport default createStore({\n  state: {\n    user: null,\n    saltKey: \"booklike123!456?\"\n  },\n  mutations: {\n    setUser(state, user) {\n      console.log(\"user :>> \", user);\n      state.user = user;\n    },\n    logoutUser(state) {\n      state.user = null;\n    },\n    setLikes(state, bookmarkIds) {\n      state.user.likes = bookmarkIds;\n    },\n    setBookmarks(state, bookmarkIds) {\n      state.user.bookmarks = bookmarkIds;\n    }\n  },\n  getters: {\n    _isAuthenticated: state => state.user !== null,\n    _getCurrentUser(state) {\n      const user = state.user;\n      //   if(user !== null && user.hasOwnProperty(\"password\")){\n      //       delete user.password;\n      //   }\n      delete user?.password;\n      return user;\n    },\n    _userLikes: state => state.user?.likes || [],\n    _userBookmarks: state => state.user?.bookmarks || [],\n    _currentUserId: state => state?.user?.id,\n    _saltKey: state => state.saltKey\n  },\n  plugins: [\n    createPersistedState({\n      storage: {\n        getItem: key => ls.get(key),\n        setItem: (key, value) => ls.set(key, value),\n        removeItem: key => ls.remove(key)\n      }\n    })\n  ]\n});\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/utils/appAxios.js",
    "content": "import axios from \"axios\";\nexport const appAxios = axios.create({\n  baseURL: \"http://localhost:3000\"\n});\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/views/Account.vue",
    "content": "<template>\n  <AppHeader />\n  <div class=\"flex flex-row\">\n    <side-bar />\n    <!-- <component :is=\"$route.meta.componentName\" :items=\"bookmarkList\" /> -->\n    <!-- {{ $log($route) }} -->\n    <!-- <app-bookmark-list v-if=\"bookmarkList.length > 0\" :items=\"bookmarkList\" />\n    <div v-else>Bookmark bulunmamaktadır..</div> -->\n  </div>\n</template>\n\n<script>\nimport sideBar from \"@/components/Account/sideBar\";\n\nexport default {\n  components: {\n    sideBar\n  },\n  data() {\n    return {\n      bookmarkList: []\n    };\n  },\n  created() {\n    this.$appAxios.get(\"/bookmarks?_expand=category&_expand=user\").then(bookmark_list_response => {\n      console.log(\"bookmark_list_response :>> \", bookmark_list_response);\n      this.bookmarkList = bookmark_list_response?.data || [];\n    });\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/views/Favorites.vue",
    "content": ""
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/views/Home.vue",
    "content": "<template>\n  <AppHeader />\n  <div class=\"flex flex-row\">\n    <Sidebar @category-changed=\"updateBookmarkList\" />\n    <app-bookmark-list v-if=\"bookmarkList.length > 0\" :items=\"bookmarkList\" />\n    <div v-else>Bookmark bulunmamaktadır..</div>\n  </div>\n</template>\n<script>\nimport Sidebar from \"@/components/Home/Sidebar\";\nexport default {\n  components: {\n    Sidebar\n  },\n  data() {\n    return {\n      bookmarkList: []\n    };\n  },\n  mounted() {\n    this.$socket.on(\"NEW_BOOKMARK_ADDED\", bookmark => {\n      this.bookmarkList.push(bookmark);\n    });\n  },\n  created() {\n    this.fetchData();\n  },\n  methods: {\n    fetchData() {\n      this.$appAxios.get(\"/bookmarks?_expand=category&_expand=user\").then(bookmark_list_response => {\n        console.log(\"bookmark_list_response :>> \", bookmark_list_response);\n        this.bookmarkList = bookmark_list_response?.data || [];\n      });\n      //! Bookmark olarak eklediklerimizi çekmek için user_bookmarks üzerinden çekelim..\n      this.$appAxios.get(\"/user_bookmarks/?_expand=bookmark&_expand=user\").then(user_bookmark_response => {\n        console.log(\"user_bookmark_response :>> \", user_bookmark_response);\n        this.$store.commit(\"setBookmarks\", user_bookmark_response?.data);\n      });\n\n      //! Like olarak eklediklerimizi çekmek için user_likes üzerinden çekelim..\n      this.$appAxios.get(\"/user_likes/?_expand=bookmark&_expand=user\").then(user_likes_response => {\n        this.$store.commit(\"setLikes\", user_likes_response?.data);\n      });\n    },\n    updateBookmarkList(categoryId) {\n      const url = categoryId ? `/bookmarks?_expand=category&_expand=user&categoryId=${categoryId}` : `/bookmarks?_expand=category&_expand=user`;\n      this.$appAxios.get(url).then(bookmark_list_response => {\n        this.bookmarkList = bookmark_list_response?.data || [];\n      });\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/views/Login.vue",
    "content": "<template>\n  <div class=\"login_register_container\">\n    <h3 class=\"text-2xl text-center mb-3\">Giriş Yap</h3>\n    <input v-model=\"userData.username\" type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n    <input v-model=\"userData.password\" type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n    <button @click=\"onSubmit\" class=\"default-button\">Giriş yap</button>\n    <span class=\"text-center mt-3 text-sm\">\n      Üye değilim,\n      <router-link :to=\"{ name: 'RegisterPage' }\" class=\"text-red-900 hover:text-black\">\n        Üye olmak istiyorum!\n      </router-link>\n    </span>\n  </div>\n</template>\n<script>\nimport CryptoJS from \"crypto-js\";\nexport default {\n  data() {\n    return {\n      userData: {\n        username: null,\n        password: null\n      }\n    };\n  },\n  methods: {\n    onSubmit() {\n      const password = CryptoJS.HmacSHA1(this.userData.password, this.$store.getters._saltKey).toString();\n      this.$appAxios\n        .get(`/users?username=${this.userData.username}&password=${password}`)\n        .then(login_response => {\n          if (login_response?.data?.length > 0) {\n            this.$store.commit(\"setUser\", login_response?.data[0]);\n            this.$router.push({ name: \"HomePage\" });\n          } else {\n            alert(\"Böyle bir kullanıcı bulunamadı...\");\n          }\n        })\n        .catch(e => console.log(e));\n      // .finally(() => this.loader = false)\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/views/NewBookmark.vue",
    "content": "<template>\n  <div class=\"login_register_container\">\n    <h3 class=\"text-2xl text-center mb-3\">Yeni Ekle</h3>\n    <input ref=\"title\" v-model=\"userData.title\" type=\"text\" placeholder=\"Başlık\" class=\"input mb-3\" />\n    <input v-model=\"userData.url\" type=\"text\" placeholder=\"URL\" class=\"input mb-3\" />\n    <select v-model=\"userData.categoryId\" class=\"input mb-3\">\n      <option disabled value=\"\" selected>Kategori</option>\n      <option v-for=\"category in categoryList\" :key=\"category.id\" :value=\"category.id\">{{ category.name }} </option>\n    </select>\n    <textarea v-model=\"userData.description\" placeholder=\"Açıklama\" class=\"input mb-3\" cols=\"30\" rows=\"10\"></textarea>\n    <div class=\"flex items-center justify-end gap-x-1\">\n      <button @click=\"$router.push({ name: 'HomePage' })\" class=\"secondary-button\">İptal</button>\n      <button @click=\"onSave\" class=\"default-button\">Kaydet</button>\n    </div>\n  </div>\n</template>\n<script>\nimport { mapGetters } from \"vuex\";\nexport default {\n  data() {\n    return {\n      categoryList: [],\n      userData: {\n        title: null,\n        url: null,\n        categoryId: null,\n        description: null\n      }\n    };\n  },\n  mounted() {\n    this.$appAxios.get(\"/categories\").then(category_response => {\n      // console.log(category_response);\n      this.categoryList = category_response?.data || [];\n    });\n\n    // setTimeout(() => {\n    //   console.log(this.$refs.title);\n    // }, 100);\n\n    // this.$nextTick(() => {\n    //   console.log(this.$refs.title);\n    // })\n    // console.dir(this.$refs.title);\n    // this.$refs.title.focus();\n  },\n  methods: {\n    onSave() {\n      const saveData = {\n        ...this.userData,\n        userId: this._getCurrentUser?.id,\n        created_at: new Date()\n      };\n      this.$appAxios.post(\"/bookmarks\", saveData).then(save_bookmark_response => {\n        console.log(save_bookmark_response);\n        Object.keys(this.userData)?.forEach(field => (this.userData[field] = null));\n        const socketData = {\n          ...save_bookmark_response.data,\n          user: this._getCurrentUser,\n          category: this.categoryList?.find(c => c.id === saveData.categoryId)\n        };\n        this.$socket.emit(\"NEW_BOOKMARK_EVENT\", socketData);\n        this.$router.push({ name: \"HomePage\" });\n      });\n    }\n  },\n  computed: {\n    ...mapGetters([\"_getCurrentUser\"])\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/client/src/views/Register.vue",
    "content": "<template>\n  <div class=\"login_register_container\">\n    <h3 class=\"text-2xl text-center mb-3\">Kayıt Ol</h3>\n    <input v-model=\"userData.fullname\" type=\"text\" placeholder=\"Tam Ad\" class=\"input mb-3\" />\n    <input v-model=\"userData.username\" type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n    <input v-model=\"userData.password\" type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n    <button class=\"default-button\" @click=\"onSave\">Kayıt ol</button>\n    <span class=\"text-center mt-3 text-sm\">\n      Zaten Üyeyim,\n      <router-link :to=\"{ name: 'LoginPage' }\" class=\"text-red-900 hover:text-black\">\n        Giriş yap!\n      </router-link>\n    </span>\n  </div>\n</template>\n<script>\nimport CryptoJS from \"crypto-js\";\nexport default {\n  data() {\n    return {\n      userData: {\n        username: null,\n        fullname: null,\n        password: null\n      }\n    };\n  },\n  methods: {\n    onSave() {\n      const password = CryptoJS.HmacSHA1(this.userData.password, this.$store.getters._saltKey).toString();\n      this.$appAxios.post(\"/users\", { ...this.userData, password }).then(registered_user_response => {\n        console.log(\"registered_user_response :>> \", registered_user_response);\n        this.$router.push({ name: \"HomePage\" });\n      });\n      // const decryptedPassword = CryptoJS.AES.decrypt(cryptedPassword, key).toString(CryptoJS.enc.Utf8);\n      // console.log(\"decryptedPassword :>> \", decryptedPassword);\n      // console.log(this.userData);\n    }\n  }\n};\n</script>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/server/app.js",
    "content": "const socketio = require(\"socket.io\");\nconst express = require(\"express\");\nconst http = require(\"http\");\nconst app = express();\n\nconst PORT = process.env.PORT || 2018;\n\nconst server = http.createServer(app);\n\nconst io = socketio(server, {\n  cors: {\n    origin: \"*\",\n    methods: [\"GET\", \"POST\", \"OPTIONS\"]\n  }\n});\n\nserver.listen(PORT, () => {\n  io.on(\"connection\", socket => {\n    console.log(\"HOPPAAAAAAAA\");\n    console.log(socket.id);\n    //! Karşılama Mesajı Gönder...\n    // io.in(roomID).emit()\n    socket.emit(\"WELCOME_MESSAGE\", `Oooooo ${socket.id} kardeşim ojgeldin be yaa...`);\n    socket.on(\"NEW_BOOKMARK_EVENT\", bookmark => {\n      console.log(\"bookmark :>> \", bookmark);\n      // io.emit(\"NEW_BOOKMARK_ADDED\", bookmark);\n      //! Gonderen hariç herkese bookmark bilgisini gonder..\n      socket.broadcast.emit(\"NEW_BOOKMARK_ADDED\", bookmark);\n    });\n  });\n});\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/server/package.json",
    "content": "{\n  \"name\": \"server\",\n  \"version\": \"1.0.0\",\n  \"description\": \"\",\n  \"main\": \"index.js\",\n  \"scripts\": {\n    \"start\": \"nodemon app.js\",\n    \"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n  },\n  \"keywords\": [],\n  \"author\": \"\",\n  \"license\": \"ISC\",\n  \"dependencies\": {\n    \"cors\": \"^2.8.5\",\n    \"express\": \"^4.17.1\",\n    \"socket.io\": \"^4.2.0\"\n  },\n  \"devDependencies\": {\n    \"nodemon\": \"^2.0.12\"\n  }\n}"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/.prettierrc",
    "content": "{\n    \"printWidth\": 500\n}"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/account.html",
    "content": "<!DOCTYPE html>\n<html lang=\"tr\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\" id=\"app\">\n    <!-- ! HEADER -->\n    <div class=\"bg-white border-gray-200 border-b-[1px] h-16 w-full flex items-center justify-center\">\n      <nav class=\"flex w-full px-2\">\n        <div class=\"flex text-xl\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n          </svg>\n          SocialMark\n        </div>\n        <div class=\"hidden\">\n          <a class=\"mr-3 navbar-item\" href=\"#\">Home</a>\n          <a class=\"mr-3 navbar-item\" href=\"#\">My Posts</a>\n          <a class=\"navbar-item\" href=\"#\">Favorites</a>\n        </div>\n\n        <div class=\"ml-auto flex items-center\">\n          <button class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n            </svg>\n            New\n          </button>\n          <div class=\"relative group\">\n            <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n              </svg>\n            </button>\n            <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n                </svg>\n                Account\n              </a>\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n                </svg>\n                Favorites</a\n              >\n              <a href=\"#\" class=\"menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                  <g><path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" /></g>\n                </svg>\n                Logout</a\n              >\n            </nav>\n          </div>\n        </div>\n      </nav>\n    </div>\n    <div class=\"flex flex-row\">\n      <!-- ! HEADER -->\n      <aside class=\"flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px]\">\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n          </svg>\n          Beğeniler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n          </svg>\n          Favoriler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-2\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n          </svg>\n          Hesabım\n        </a>\n      </aside>\n      <!-- ! HEADER -->\n\n      <!--!Bookmark Items -->\n      <div class=\"account_container mx-auto flex flex-col w-1/4\">\n        <h3 class=\"text-2xl text-center mb-3\">Hesabım</h3>\n        <input type=\"text\" placeholder=\"Tam Ad\" class=\"input mb-3\" />\n        <input type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n        <input type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n        <button class=\"default-button\">Kaydet</button>\n      </div>\n    </div>\n    <script src=\"assets/app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/assets/app.js",
    "content": "const app = Vue.createApp({}).mount(\"#app\");\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/assets/style.css",
    "content": "/*! tailwindcss v2.2.7 | MIT License | https://tailwindcss.com */\n\n/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\nhtml {\n  -moz-tab-size: 4;\n  -o-tab-size: 4;\n     tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n  line-height: 1.15;\n  /* 1 */\n  -webkit-text-size-adjust: 100%;\n  /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n  margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n  font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n  height: 0;\n  /* 1 */\n  color: inherit;\n  /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n  -webkit-text-decoration: underline dotted;\n          text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n  font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n  font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace;\n  /* 1 */\n  font-size: 1em;\n  /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n  font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n  font-size: 75%;\n  line-height: 0;\n  position: relative;\n  vertical-align: baseline;\n}\n\nsub {\n  bottom: -0.25em;\n}\n\nsup {\n  top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n  text-indent: 0;\n  /* 1 */\n  border-color: inherit;\n  /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  font-family: inherit;\n  /* 1 */\n  font-size: 100%;\n  /* 1 */\n  line-height: 1.15;\n  /* 1 */\n  margin: 0;\n  /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect {\n  /* 1 */\n  text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n  -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n::-moz-focus-inner {\n  border-style: none;\n  padding: 0;\n}\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n:-moz-focusring {\n  outline: 1px dotted ButtonText;\n}\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n:-moz-ui-invalid {\n  box-shadow: none;\n}\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n  padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n  vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n  height: auto;\n}\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n  -webkit-appearance: textfield;\n  /* 1 */\n  outline-offset: -2px;\n  /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n  -webkit-appearance: none;\n}\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n::-webkit-file-upload-button {\n  -webkit-appearance: button;\n  /* 1 */\n  font: inherit;\n  /* 2 */\n}\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n  display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n  margin: 0;\n}\n\nbutton {\n  background-color: transparent;\n  background-image: none;\n}\n\nfieldset {\n  margin: 0;\n  padding: 0;\n}\n\nol,\nul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n *    sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n *    to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n  /* 1 */\n  line-height: 1.5;\n  /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n  font-family: inherit;\n  line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n *    We used to set this in the html element and inherit from\n *    the parent element for everything else. This caused issues\n *    in shadow-dom-enhanced elements like <details> where the content\n *    is wrapped by a div with box-sizing set to `content-box`.\n *\n *    https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n *    By default, the way the browser specifies that an element should have no\n *    border is by setting it's border-style to `none` in the user-agent\n *    stylesheet.\n *\n *    In order to easily add borders to elements by just setting the `border-width`\n *    property, we change the default border-style for all elements to `solid`, and\n *    use border-width to hide them instead. This way our `border` utilities only\n *    need to set the `border-width` property instead of the entire `border`\n *    shorthand, making our border utilities much more straightforward to compose.\n *\n *    https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n  box-sizing: border-box;\n  /* 1 */\n  border-width: 0;\n  /* 2 */\n  border-style: solid;\n  /* 2 */\n  border-color: currentColor;\n  /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n  border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n  border-style: solid;\n}\n\ntextarea {\n  resize: vertical;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n  opacity: 1;\n  color: #9ca3af;\n}\n\nbutton,\n[role=\"button\"] {\n  cursor: pointer;\n}\n\ntable {\n  border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n  font-size: inherit;\n  font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n  color: inherit;\n  text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  padding: 0;\n  line-height: inherit;\n  color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * 1. Make replaced elements `display: block` by default as that's\n *    the behavior you want almost all of the time. Inspired by\n *    CSS Remedy, with `svg` added as well.\n *\n *    https://github.com/mozdevs/cssremedy/issues/14\n * \n * 2. Add `vertical-align: middle` to align replaced elements more\n *    sensibly by default when overriding `display` by adding a\n *    utility like `inline`.\n *\n *    This can trigger a poorly considered linting error in some\n *    tools but is included by design.\n * \n *    https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n  display: block;\n  /* 1 */\n  vertical-align: middle;\n  /* 2 */\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their intrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n  max-width: 100%;\n  height: auto;\n}\n\n/**\n * Ensure the default browser behavior of the `hidden` attribute.\n */\n\n[hidden] {\n  display: none;\n}\n\n*, ::before, ::after {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-ring-offset-shadow: 0 0 #0000;\n  --tw-ring-shadow: 0 0 #0000;\n  --tw-shadow: 0 0 #0000;\n}\n\n.like-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.like-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.like-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(199, 210, 254, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(55, 48, 163, var(--tw-text-opacity));\n}\n\n.bookmark-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.bookmark-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(252, 165, 165, var(--tw-bg-opacity));\n}\n\n.bookmark-item-active {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(153, 27, 27, var(--tw-text-opacity));\n}\n\n.details-btn {\n  display: flex;\n  height: 2.5rem;\n  width: 2.5rem;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: center;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.details-btn:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.group:focus-within .details-btn {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.sidebar {\n  display: flex;\n  height: 100vh;\n  width: 15rem;\n  flex-shrink: 0;\n  flex-direction: column;\n  border-right-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.details-container {\n  visibility: hidden;\n  position: absolute;\n  right: 0px;\n  top: 100%;\n  z-index: 10 !important;\n  height: 10rem;\n  width: 15rem;\n  overflow-y: scroll;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  text-align: left;\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.group:focus-within .details-container {\n  visibility: visible;\n}\n\n.group:hover .details-container {\n  visibility: visible;\n}\n\n.header-container {\n  display: flex;\n  height: 4rem;\n  width: 100%;\n  align-items: center;\n  justify-content: center;\n  border-bottom-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.navbar-item {\n  border-radius: 0.5rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(107, 114, 128, var(--tw-border-opacity));\n  padding: 0.5rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.navbar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.menu-item {\n  display: flex;\n  border-radius: 0.375rem;\n  padding: 0.5rem;\n}\n\n.menu-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.sidebar-item {\n  display: flex;\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n  --tw-text-opacity: 1;\n  color: rgba(107, 114, 128, var(--tw-text-opacity));\n}\n\n.sidebar-item:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.login_register_container {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  margin: auto;\n  display: flex;\n  width: 91.666667%;\n  transform: translate(-50%, -50%);\n  flex-direction: column;\n  border-radius: 0.375rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n  padding: 0.75rem;\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n@media (min-width: 640px) {\n  .login_register_container {\n    width: 50%;\n  }\n}\n\n@media (min-width: 768px) {\n  .login_register_container {\n    width: 33.333333%;\n  }\n}\n\n@media (min-width: 1024px) {\n  .login_register_container {\n    width: 25%;\n  }\n}\n\n.input {\n  border-radius: 0.125rem;\n  border-width: 1px;\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n  outline: 2px solid transparent;\n  outline-offset: 2px;\n}\n\n.input:focus {\n  --tw-border-opacity: 1;\n  border-color: rgba(0, 0, 0, var(--tw-border-opacity));\n}\n\n.default-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.default-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.secondary-button {\n  border-radius: 0.375rem;\n  --tw-bg-opacity: 1;\n  background-color: rgba(107, 114, 128, var(--tw-bg-opacity));\n  padding: 0.5rem;\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.secondary-button:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(75, 85, 99, var(--tw-bg-opacity));\n}\n\n.invisible {\n  visibility: hidden;\n}\n\n.absolute {\n  position: absolute;\n}\n\n.relative {\n  position: relative;\n}\n\n.top-full {\n  top: 100%;\n}\n\n.right-0 {\n  right: 0px;\n}\n\n.\\!z-10 {\n  z-index: 10 !important;\n}\n\n.mx-auto {\n  margin-left: auto;\n  margin-right: auto;\n}\n\n.mr-2 {\n  margin-right: 0.5rem;\n}\n\n.mr-3 {\n  margin-right: 0.75rem;\n}\n\n.ml-auto {\n  margin-left: auto;\n}\n\n.mb-2 {\n  margin-bottom: 0.5rem;\n}\n\n.mr-1 {\n  margin-right: 0.25rem;\n}\n\n.mb-3 {\n  margin-bottom: 0.75rem;\n}\n\n.mb-1 {\n  margin-bottom: 0.25rem;\n}\n\n.mt-2 {\n  margin-top: 0.5rem;\n}\n\n.mt-3 {\n  margin-top: 0.75rem;\n}\n\n.flex {\n  display: flex;\n}\n\n.grid {\n  display: grid;\n}\n\n.hidden {\n  display: none;\n}\n\n.h-16 {\n  height: 4rem;\n}\n\n.h-8 {\n  height: 2rem;\n}\n\n.h-\\[100vh\\] {\n  height: 100vh;\n}\n\n.h-10 {\n  height: 2.5rem;\n}\n\n.h-40 {\n  height: 10rem;\n}\n\n.w-full {\n  width: 100%;\n}\n\n.w-8 {\n  width: 2rem;\n}\n\n.w-56 {\n  width: 14rem;\n}\n\n.w-60 {\n  width: 15rem;\n}\n\n.w-1\\/4 {\n  width: 25%;\n}\n\n.w-10 {\n  width: 2.5rem;\n}\n\n.flex-shrink-0 {\n  flex-shrink: 0;\n}\n\n.grid-cols-8 {\n  grid-template-columns: repeat(8, minmax(0, 1fr));\n}\n\n.flex-row {\n  flex-direction: row;\n}\n\n.flex-col {\n  flex-direction: column;\n}\n\n.items-center {\n  align-items: center;\n}\n\n.justify-end {\n  justify-content: flex-end;\n}\n\n.justify-center {\n  justify-content: center;\n}\n\n.justify-between {\n  justify-content: space-between;\n}\n\n.gap-4 {\n  gap: 1rem;\n}\n\n.gap-x-3 {\n  -moz-column-gap: 0.75rem;\n       column-gap: 0.75rem;\n}\n\n.gap-x-1 {\n  -moz-column-gap: 0.25rem;\n       column-gap: 0.25rem;\n}\n\n.overflow-x-hidden {\n  overflow-x: hidden;\n}\n\n.overflow-y-scroll {\n  overflow-y: scroll;\n}\n\n.rounded-sm {\n  border-radius: 0.125rem;\n}\n\n.rounded-md {\n  border-radius: 0.375rem;\n}\n\n.border-\\[1px\\] {\n  border-width: 1px;\n}\n\n.border-b-\\[1px\\] {\n  border-bottom-width: 1px;\n}\n\n.border-r-\\[1px\\] {\n  border-right-width: 1px;\n}\n\n.border-gray-200 {\n  --tw-border-opacity: 1;\n  border-color: rgba(229, 231, 235, var(--tw-border-opacity));\n}\n\n.border-gray-300 {\n  --tw-border-opacity: 1;\n  border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n}\n\n.bg-gray-100 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(243, 244, 246, var(--tw-bg-opacity));\n}\n\n.bg-white {\n  --tw-bg-opacity: 1;\n  background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bg-gray-700 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(55, 65, 81, var(--tw-bg-opacity));\n}\n\n.bg-red-200 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(254, 202, 202, var(--tw-bg-opacity));\n}\n\n.fill-current {\n  fill: currentColor;\n}\n\n.p-2 {\n  padding: 0.5rem;\n}\n\n.p-3 {\n  padding: 0.75rem;\n}\n\n.p-1 {\n  padding: 0.25rem;\n}\n\n.px-2 {\n  padding-left: 0.5rem;\n  padding-right: 0.5rem;\n}\n\n.px-3 {\n  padding-left: 0.75rem;\n  padding-right: 0.75rem;\n}\n\n.py-1 {\n  padding-top: 0.25rem;\n  padding-bottom: 0.25rem;\n}\n\n.text-left {\n  text-align: left;\n}\n\n.text-center {\n  text-align: center;\n}\n\n.text-xl {\n  font-size: 1.25rem;\n  line-height: 1.75rem;\n}\n\n.text-sm {\n  font-size: 0.875rem;\n  line-height: 1.25rem;\n}\n\n.text-2xl {\n  font-size: 1.5rem;\n  line-height: 2rem;\n}\n\n.text-xs {\n  font-size: 0.75rem;\n  line-height: 1rem;\n}\n\n.font-bold {\n  font-weight: 700;\n}\n\n.text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.text-gray-600 {\n  --tw-text-opacity: 1;\n  color: rgba(75, 85, 99, var(--tw-text-opacity));\n}\n\n.text-gray-400 {\n  --tw-text-opacity: 1;\n  color: rgba(156, 163, 175, var(--tw-text-opacity));\n}\n\n.text-red-900 {\n  --tw-text-opacity: 1;\n  color: rgba(127, 29, 29, var(--tw-text-opacity));\n}\n\n.shadow-md {\n  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-sm {\n  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-lg {\n  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.transition-colors {\n  transition-property: background-color, border-color, color, fill, stroke;\n  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n  transition-duration: 150ms;\n}\n\n.duration-500 {\n  transition-duration: 500ms;\n}\n\n.hover\\:bg-black:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-gray-200:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.hover\\:bg-indigo-300:hover {\n  --tw-bg-opacity: 1;\n  background-color: rgba(165, 180, 252, var(--tw-bg-opacity));\n}\n\n.hover\\:text-black:hover {\n  --tw-text-opacity: 1;\n  color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.group:focus-within .group-focus-within\\:visible {\n  visibility: visible;\n}\n\n.group:focus-within .group-focus-within\\:bg-gray-300 {\n  --tw-bg-opacity: 1;\n  background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.group:hover .group-hover\\:visible {\n  visibility: visible;\n}\n\n.group:hover .group-hover\\:text-white {\n  --tw-text-opacity: 1;\n  color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.group:hover .group-hover\\:text-gray-700 {\n  --tw-text-opacity: 1;\n  color: rgba(55, 65, 81, var(--tw-text-opacity));\n}\n\n@media (min-width: 640px) {\n  .sm\\:grid-cols-2 {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 768px) {\n  .md\\:grid-cols-4 {\n    grid-template-columns: repeat(4, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1024px) {\n  .lg\\:grid-cols-5 {\n    grid-template-columns: repeat(5, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1280px) {\n  .xl\\:grid-cols-6 {\n    grid-template-columns: repeat(6, minmax(0, 1fr));\n  }\n}\n\n@media (min-width: 1536px) {\n  .\\32xl\\:grid-cols-8 {\n    grid-template-columns: repeat(8, minmax(0, 1fr));\n  }\n}\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/assets/tailwind.css",
    "content": "@tailwind base;\n@tailwind components;\n@tailwind utilities;\n\n@layer base {\n  .translate {\n    transform: translate(-50%, -50%);\n  }\n}\n\n@layer components {\n  .like-btn {\n    @apply flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-indigo-300 justify-center items-center;\n  }\n  .bookmark-btn {\n    @apply flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-black justify-center items-center;\n  }\n  .bookmark-item-active {\n    @apply text-red-700;\n  }\n  .details-btn {\n    @apply flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-gray-200 group-focus-within:bg-gray-300 justify-center items-center;\n  }\n\n  .sidebar {\n    @apply flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px];\n  }\n\n  .details-container {\n    @apply absolute !z-10 w-60 h-40 group-focus-within:visible right-0 top-full overflow-y-scroll group-hover:visible bg-white invisible rounded-md shadow-lg p-3 text-left border-gray-300 border-[1px];\n  }\n\n  .header-container {\n    @apply bg-white border-gray-200 border-b-[1px] h-16 w-full flex items-center justify-center;\n  }\n\n  .navbar-item {\n    @apply rounded-lg shadow-md border-[1px] p-2 border-gray-500 hover:bg-black hover:text-white transition-colors;\n  }\n  .menu-item {\n    @apply p-2 flex hover:bg-black hover:text-white rounded-md;\n  }\n\n  .sidebar-item {\n    @apply flex bg-white p-2 text-gray-500 px-2 py-3 hover:bg-black hover:text-white;\n  }\n\n  .login_register_container {\n    @apply bg-white rounded-md border-[1px] border-gray-300 w-1/4 md:w-1/2 m-auto absolute top-1/2 left-1/2 translate p-3 flex flex-col shadow-md;\n  }\n\n  .input {\n    @apply px-3 py-2 border rounded-sm border-gray-300 outline-none focus:border-black;\n  }\n\n  .default-button {\n    @apply bg-gray-700 p-2 text-white rounded-md hover:bg-black;\n  }\n\n  .secondary-button {\n    @apply bg-gray-500 p-2 text-white rounded-md hover:bg-gray-600;\n  }\n\n  .primary-button {\n    @apply bg-indigo-500 p-2 text-white rounded-md hover:bg-black;\n  }\n\n  .danger-button {\n    @apply bg-red-500 p-2 text-white rounded-md hover:bg-black;\n  }\n}\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/favorites.html",
    "content": "<!DOCTYPE html>\n<html lang=\"tr\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Document</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\" id=\"app\">\n    <!-- ! HEADER -->\n    <div class=\"bg-white border-gray-200 border-b-[1px] h-16 w-full flex items-center justify-center\">\n      <nav class=\"flex w-full px-2\">\n        <div class=\"flex text-xl\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n          </svg>\n          SocialMark\n        </div>\n        <div class=\"hidden\">\n          <a class=\"mr-3 navbar-item\" href=\"#\">Home</a>\n          <a class=\"mr-3 navbar-item\" href=\"#\">My Posts</a>\n          <a class=\"navbar-item\" href=\"#\">Favorites</a>\n        </div>\n\n        <div class=\"ml-auto flex items-center\">\n          <button class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n            </svg>\n            New\n          </button>\n          <div class=\"relative group\">\n            <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n              </svg>\n            </button>\n            <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n                </svg>\n                Account\n              </a>\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n                </svg>\n                Favorites</a\n              >\n              <a href=\"#\" class=\"menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                  <g><path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" /></g>\n                </svg>\n                Logout</a\n              >\n            </nav>\n          </div>\n        </div>\n      </nav>\n    </div>\n    <!-- ! HEADER -->\n    <div class=\"flex flex-row\">\n      <aside class=\"flex flex-shrink-0 flex-col h-[100vh] bg-white w-60 border-gray-200 border-r-[1px]\">\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n          </svg>\n          Beğeniler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n          </svg>\n          Favoriler\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-2\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n          </svg>\n          Hesabım\n        </a>\n      </aside>\n\n      <!--!Bookmark Items -->\n      <div>\n        <div class=\"p-2 grid grid-cols-8 gap-4\">\n          <div v-for=\"i in 10\" :key=\"i\" class=\"bg-white flex flex-col gap-x-3 rounded-md shadow-sm\">\n            <div class=\"p-3\">\n              <a href=\"#\" class=\"hover:text-black font-bold text-l mb-1 text-gray-600 text-center\">Vue3 Dokümantasyon</a>\n              <div class=\"flex items-center justify-center mt-2 gap-x-1\">\n                <button class=\"flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-indigo-300 group justify-center items-center\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                    <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n                    <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n                  </svg>\n                </button>\n                <button class=\"flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-black group justify-center items-center\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" enable-background=\"new 0 0 24 24\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\">\n                    <rect fill=\"none\" />\n                    <path d=\"M17,11v6.97l-5-2.14l-5,2.14V5h6V3H7C5.9,3,5,3.9,5,5v16l7-3l7,3V11H17z M21,7h-2v2h-2V7h-2V5h2V3h2v2h2V7z\" />\n                  </svg>\n                </button>\n                <div class=\"relative group\">\n                  <button class=\"!-z-[1] flex-shrink-0 w-10 h-10 p-2 flex rounded-md hover:bg-gray-200 group-focus-within:bg-gray-300 group justify-center items-center\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-gray-700\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                      <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                      <path d=\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zM6 12h2v2H6zm0-3h2v2H6zm0-3h2v2H6zm4 6h5v2h-5zm0-3h8v2h-8zm0-3h8v2h-8z\" />\n                    </svg>\n                    <p class=\"absolute !z-10 w-60 h-40 group-focus-within:visible right-0 top-full overflow-y-scroll group-hover:visible bg-white invisible rounded-md shadow-lg p-3 text-left border-gray-300 border-[1px]\">Lorem, ipsum dolor sit amet consectetur adipisicing elit. Similique nemo consequatur a accusamus assumenda laborum consequuntur explicabo dolor, odit eligendi voluptate illum itaque accusantium, cumque tenetur cupiditate illo libero dolores!</p>\n                  </button>\n                </div>\n              </div>\n              <div class=\"text-xs text-gray-400 mt-2 flex justify-between\">\n                <a href=\"#\" class=\"hover:text-black\"> Gökhan Kandemir </a>\n                <span>14 Mart</span>\n              </div>\n            </div>\n            <div class=\"bg-red-200 p-1 text-red-900 text-center text-sm\">Vue.js</div>\n          </div>\n        </div>\n      </div>\n    </div>\n    <script src=\"assets/app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"tr\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>SocialMark</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n    <script src=\"https://unpkg.com/vue@next\"></script>\n  </head>\n  <body class=\"bg-gray-100 overflow-x-hidden\" id=\"app\">\n    <!-- ! HEADER -->\n    <div class=\"header-container\">\n      <nav class=\"flex w-full px-2\">\n        <div class=\"flex text-xl\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-2\" height=\"36\" viewBox=\"0 0 24 24\" width=\"36\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-3 2v5l-1-.75L15 9V4h2zm3 12H8V4h5v9l3-2.25L19 13V4h1v12z\" />\n          </svg>\n          SocialMark\n        </div>\n        <div class=\"hidden\">\n          <a class=\"mr-3 navbar-item\" href=\"#\">Home</a>\n          <a class=\"mr-3 navbar-item\" href=\"#\">My Posts</a>\n          <a class=\"navbar-item\" href=\"#\">Favorites</a>\n        </div>\n\n        <div class=\"ml-auto flex items-center\">\n          <button class=\"flex bg-gray-700 hover:bg-black text-white px-3 py-1 rounded-sm text-sm items-center mr-2\">\n            <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current\" height=\"16\" viewBox=\"0 0 24 24\" width=\"16\">\n              <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n              <path d=\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\" />\n            </svg>\n            New\n          </button>\n          <div class=\"relative group\">\n            <button class=\"w-8 h-8 flex items-center justify-center rounded-md transition-colors duration-500 hover:bg-gray-200 group-focus-within:bg-gray-300\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" class=\"fill-current\" width=\"24\">\n                <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                <path d=\"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n              </svg>\n            </button>\n            <nav class=\"bg-white !z-10 rounded-md shadow-md p-2 w-56 flex flex-col absolute group-focus-within:visible top-full right-0 invisible\">\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" class=\"fill-current mr-1\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.51.88 4.93 1.78C15.57 19.36 13.86 20 12 20s-3.57-.64-4.93-1.72zm11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6zm0 5c-.83 0-1.5-.67-1.5-1.5S11.17 8 12 8s1.5.67 1.5 1.5S12.83 11 12 11z\" />\n                </svg>\n                Account\n              </a>\n              <a href=\"#\" class=\"mb-2 menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                  <path d=\"M15 7v12.97l-4.21-1.81-.79-.34-.79.34L5 19.97V7h10m4-6H8.99C7.89 1 7 1.9 7 3h10c1.1 0 2 .9 2 2v13l2 1V3c0-1.1-.9-2-2-2zm-4 4H5c-1.1 0-2 .9-2 2v16l7-3 7 3V7c0-1.1-.9-2-2-2z\" />\n                </svg>\n                Favorites</a\n              >\n              <a href=\"#\" class=\"menu-item\">\n                <svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" class=\"fill-current mr-1\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                  <g><path d=\"M0,0h24v24H0V0z\" fill=\"none\" /></g>\n                  <g><path d=\"M17,8l-1.41,1.41L17.17,11H9v2h8.17l-1.58,1.58L17,16l4-4L17,8z M5,5h7V3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h7v-2H5V5z\" /></g>\n                </svg>\n                Logout</a\n              >\n            </nav>\n          </div>\n        </div>\n      </nav>\n    </div>\n    <!-- ! HEADER -->\n    <div class=\"flex flex-row\">\n      <aside class=\"sidebar\">\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Vue.js\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Frontend\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Backend\n        </a>\n        <a class=\"sidebar-item\" href=\"#\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current mr-3\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n            <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n            <path d=\"M12 2l-5.5 9h11L12 2zm0 3.84L13.93 9h-3.87L12 5.84zM17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM3 21.5h8v-8H3v8zm2-6h4v4H5v-4z\" />\n          </svg>\n          Web\n        </a>\n      </aside>\n\n      <!--!Bookmark Items -->\n      <div>\n        <div class=\"p-2 grid grid-cols-8 gap-4\">\n          <div v-for=\"i in 10\" :key=\"i\" class=\"bg-white flex flex-col gap-x-3 rounded-md shadow-sm\">\n            <div class=\"p-3\">\n              <a href=\"#\" class=\"hover:text-black font-bold text-l mb-1 text-gray-600 text-center\">Vue3 Dokümantasyon</a>\n              <div class=\"flex items-center justify-center mt-2 gap-x-1\">\n                <button class=\"like-btn group\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                    <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n                    <path d=\"M9 21h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.58 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2zM9 9l4.34-4.34L12 10h9v2l-3 7H9V9zM1 9h4v12H1z\" />\n                  </svg>\n                </button>\n                <button class=\"bookmark-btn group bookmark-item-active\">\n                  <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-white\" enable-background=\"new 0 0 24 24\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\">\n                    <rect fill=\"none\" />\n                    <path d=\"M17,11v6.97l-5-2.14l-5,2.14V5h6V3H7C5.9,3,5,3.9,5,5v16l7-3l7,3V11H17z M21,7h-2v2h-2V7h-2V5h2V3h2v2h2V7z\" />\n                  </svg>\n                </button>\n                <div class=\"relative group\">\n                  <button class=\"details-btn !-z-[1] group\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"fill-current group-hover:text-gray-700\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\">\n                      <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n                      <path d=\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zM6 12h2v2H6zm0-3h2v2H6zm0-3h2v2H6zm4 6h5v2h-5zm0-3h8v2h-8zm0-3h8v2h-8z\" />\n                    </svg>\n                    <p class=\"details-container\">Lorem, ipsum dolor sit amet consectetur adipisicing elit. Similique nemo consequatur a accusamus assumenda laborum consequuntur explicabo dolor, odit eligendi voluptate illum itaque accusantium, cumque tenetur cupiditate illo libero dolores!</p>\n                  </button>\n                </div>\n              </div>\n              <div class=\"text-xs text-gray-400 mt-2 flex justify-between\">\n                <a href=\"#\" class=\"hover:text-black\"> Gökhan Kandemir </a>\n                <span>14 Mart</span>\n              </div>\n            </div>\n            <div class=\"bg-red-200 p-1 text-red-900 text-center text-sm\">Vue.js</div>\n          </div>\n        </div>\n      </div>\n      <!--!Bookmark Items -->\n    </div>\n    <script src=\"assets/app.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/login.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Login</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n  </head>\n  <body class=\"bg-gray-100\">\n    <div class=\"login_register_container\">\n      <h3 class=\"text-2xl text-center mb-3\">Login</h3>\n      <input type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n      <input type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n      <button class=\"default-button\">Giriş yap</button>\n      <span class=\"text-center mt-3 text-sm\">\n        Üye değilim,\n        <a href=\"#\" class=\"text-red-900 hover:text-black\">Üye olmak istiyorum!</a>\n      </span>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/new-bookmark.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Yeni Yer İşareti</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n  </head>\n  <body class=\"bg-gray-100\">\n    <div class=\"login_register_container\">\n      <h3 class=\"text-2xl text-center mb-3\">Yeni Ekle</h3>\n      <input type=\"text\" placeholder=\"Başlık\" class=\"input mb-3\" />\n      <input type=\"text\" placeholder=\"URL\" class=\"input mb-3\" />\n      <select class=\"input mb-3\">\n        <option disabled value=\"\" selected>Kategori</option>\n        <option value=\"\">Vue</option>\n        <option value=\"\">React</option>\n        <option value=\"\">Sosyal</option>\n      </select>\n      <textarea placeholder=\"Açıklama\" class=\"input mb-3\" cols=\"30\" rows=\"10\"></textarea>\n      <div class=\"flex items-center justify-end gap-x-1\">\n        <button class=\"secondary-button\">İptal</button>\n        <button class=\"default-button\">Kaydet</button>\n      </div>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-6-socialmark-uygulamasi/tema/register.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Register</title>\n    <link rel=\"stylesheet\" href=\"assets/style.css\" />\n  </head>\n  <body class=\"bg-gray-100\">\n    <div class=\"login_register_container\">\n      <h3 class=\"text-2xl text-center mb-3\">Register</h3>\n      <input type=\"text\" placeholder=\"Tam Ad\" class=\"input mb-3\" />\n      <input type=\"text\" placeholder=\"Kullanıcı Adı\" class=\"input mb-3\" />\n      <input type=\"password\" placeholder=\"Şifre\" class=\"input mb-3\" />\n      <button class=\"default-button\">Kayıt ol</button>\n      <span class=\"text-center mt-3 text-sm\">\n        Zaten Üyeyim,\n        <a href=\"#\" class=\"text-red-900 hover:text-black\">Giriş yap!</a>\n      </span>\n    </div>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/.vscode/extensions.json",
    "content": "{\n  \"recommendations\": [\"johnsoncodehk.volar\"]\n}\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/README.md",
    "content": "# Vue 3 + Vite\n\nThis template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.\n\n## Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vite App</title>\n  </head>\n  <body>\n    <div id=\"app\"></div>\n    <script type=\"module\" src=\"/src/main.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/package.json",
    "content": "{\n  \"name\": \"0-composition-api\",\n  \"version\": \"0.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"serve\": \"vite preview\"\n  },\n  \"dependencies\": {\n    \"vue\": \"^3.2.6\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^1.6.1\",\n    \"@vue/compiler-sfc\": \"^3.2.6\",\n    \"vite\": \"^2.5.4\"\n  }\n}"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/src/App.vue",
    "content": "<template>\n  <h3>{{ title }} </h3>\n  <input type=\"text\" v-model=\"title\" />\n  {{ titleLengthMessage }}\n  <button @click=\"toggleIt\">Toggle</button>\n  <p v-if=\"show\">\n    Lorem ipsum dolor sit amet consectetur adipisicing elit. Nemo ducimus quod provident, quae eveniet ipsa voluptatum rem sed sint incidunt ex\n    recusandae, debitis reiciendis nostrum, nam minus! Expedita, cupiditate nemo.\n  </p>\n  <hr />\n  <button @click=\"counter++\">{{ counter }} {{ oddOrEven }}</button>\n  <hr />\n  <input type=\"text\" v-model=\"searchText\" />\n  <p v-if=\"isTyping\">Şu an yazıyor....</p>\n</template>\n\n<script>\nimport Counter from \"./composables/Counter.js\";\nimport Header from \"./composables/Header.js\";\nimport Toggle from \"./composables/Toggle.js\";\nimport Search from \"./composables/Search.js\";\nexport default {\n  setup() {\n    const { counter, oddOrEven } = Counter();\n    const { title, titleLengthMessage } = Header();\n    const { show, toggleIt } = Toggle();\n    const { searchText, isTyping } = Search();\n    return {\n      title,\n      show,\n      toggleIt,\n      titleLengthMessage,\n      counter,\n      oddOrEven,\n      searchText,\n      isTyping,\n    };\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/src/composables/Counter.js",
    "content": "import { ref, computed, watch } from \"vue\";\nexport default function () {\n  //!*************************************************************************************************\n  const counter = ref(0);\n  const oddOrEven = computed(() => (counter.value % 2 === 0 ? \"Çift\" : \"Tek\"));\n\n  watch([counter, oddOrEven], ([newC, newO], [oldC, oldO]) => {\n    console.log(oldO, \"=>\", newO);\n  });\n  //!*************************************************************************************************\n\n  return { counter, oddOrEven };\n}\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/src/composables/Header.js",
    "content": "import { ref, computed } from \"vue\";\n\nexport default function () {\n  const title = ref(\"Bu bir Setup Başlık\");\n  // const titleLengthMessage = computed(() => {\n  //   return title.value.length + \" adet karakter yazdınız\";\n  // });\n  const titleLengthMessage = computed(() => title.value.length + \" adet karakter yazdınız\");\n\n  return { title, titleLengthMessage };\n}\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/src/composables/Search.js",
    "content": "import { ref, watchEffect } from \"vue\";\n\nexport default function () {\n  const searchText = ref(\"\");\n  const isTyping = ref(false);\n  // watch(searchText, () => {\n  //   if (searchText.value.length > 0) {\n  //     isTyping.value = true;\n\n  //     setTimeout(() => {\n  //       isTyping.value = false;\n  //     }, 1500);\n  //   }\n  // });\n  const stop = watchEffect((onInvalidate) => {\n    if (searchText.value.length > 0) {\n      isTyping.value = true;\n      const typing = setTimeout(() => {\n        isTyping.value = false;\n        stop();\n      }, 1500);\n      onInvalidate(() => clearTimeout(typing));\n    }\n  });\n  return { searchText, isTyping };\n}\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/src/composables/Toggle.js",
    "content": "import { ref } from \"vue\";\n\nexport default function () {\n  const show = ref(false);\n  const toggleIt = () => {\n    show.value = !show.value;\n  };\n\n  return { show, toggleIt };\n}\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/src/main.js",
    "content": "import { createApp } from 'vue'\nimport App from './App.vue'\n\ncreateApp(App).mount('#app')\n"
  },
  {
    "path": "ders-9-composition-api/0-composition-api/vite.config.js",
    "content": "import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n  plugins: [vue()]\n})\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/.vscode/extensions.json",
    "content": "{\n  \"recommendations\": [\"johnsoncodehk.volar\"]\n}\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/README.md",
    "content": "# Vue 3 + Vite\n\nThis template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.\n\n## Recommended IDE Setup\n\n- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n    <title>Vite App</title>\n  </head>\n  <body>\n    <div id=\"app\"></div>\n    <script type=\"module\" src=\"/src/main.js\"></script>\n  </body>\n</html>\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/package.json",
    "content": "{\n  \"name\": \"1-todo-list\",\n  \"version\": \"0.0.0\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"serve\": \"vite preview\"\n  },\n  \"dependencies\": {\n    \"vue\": \"^3.2.6\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^1.6.1\",\n    \"@vue/compiler-sfc\": \"^3.2.6\",\n    \"autoprefixer\": \"^10.3.4\",\n    \"postcss\": \"^8.3.6\",\n    \"tailwindcss\": \"^2.2.15\",\n    \"vite\": \"^2.5.4\"\n  }\n}\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/postcss.config.js",
    "content": "module.exports = {\n  plugins: {\n    tailwindcss: {},\n    autoprefixer: {},\n  },\n}\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/src/App.vue",
    "content": "<template>\n  <div class=\"w-screen h-screen bg-gray-400 pt-10\">\n    <div class=\"bg-gray-700 rounded-md shadow-md text-white w-1/3 mx-auto p-3\">\n      <h3 class=\"text-center text-2xl\">TodoList</h3>\n      <AddSection :AddTodo=\"AddTodo\" />\n      <TodoList @delete-event=\"deleteItem\" :todoList=\"todoList\" />\n    </div>\n  </div>\n</template>\n<script>\nimport AddSection from \"./components/addSection.vue\";\nimport TodoList from \"./components/todoList.vue\";\nimport { ref } from \"vue\";\nexport default {\n  components: {\n    AddSection,\n    TodoList,\n  },\n  setup() {\n    const todoList = ref([]);\n    const AddTodo = (todoText) => {\n      console.log(todoText);\n      todoList.value.push({\n        id: new Date().getTime(),\n        title: todoText,\n      });\n    };\n\n    const deleteItem = (todo) => {\n      todoList.value = todoList.value.filter((t) => t.id !== todo.id);\n    };\n    return { todoList, AddTodo, deleteItem };\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/src/assets/index.css",
    "content": "@tailwind base;\n@tailwind components;\n@tailwind utilities;\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/src/components/Summary.vue",
    "content": "<template>\n  <div class=\"text-green-300\">{{ completed }} adet tamamlanmış taskınız bulunuyor</div>\n  <div class=\"text-red-400\">{{ unCompleted }} adet tamamlanmamış taskınız bulunuyor</div>\n</template>\n<script>\nimport { computed } from \"vue\";\nexport default {\n  props: {\n    todoList: Array,\n  },\n  setup(props) {\n    const completed = computed(() => props.todoList.filter((i) => i.completed).length);\n    const unCompleted = computed(() => props.todoList.filter((i) => !i.completed).length);\n\n    return { completed, unCompleted };\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/src/components/addSection.vue",
    "content": "<template>\n  <section class=\"mt-4\">\n    <input\n      @keydown.enter=\"newItem\"\n      placeholder=\"Nedir?\"\n      type=\"text\"\n      class=\"w-full p-2 bg-gray-700 border-[1px] border-gray-400 rounded-md outline-none\"\n    />\n  </section>\n</template>\n\n<script>\nexport default {\n  props: {\n    AddTodo: Function,\n  },\n  setup(props) {\n    const newItem = (event) => {\n      props.AddTodo(event.target.value);\n      event.target.value = \"\";\n    };\n    return { newItem };\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/src/components/todoList.vue",
    "content": "<template>\n  <section class=\"mt-4\">\n    <TodoListItem @delete-event=\"$emit('delete-event', $event)\" v-for=\"todoItem in todoList\" :key=\"todoItem.id\" :todo=\"todoItem\" />\n    <small> {{ todoLength }} adet Item Vardır...</small>\n    <Summary :todoList=\"todoList\" />\n  </section>\n</template>\n<script>\nimport TodoListItem from \"./todoListItem.vue\";\nimport Summary from \"./Summary.vue\";\nimport { computed } from \"vue\";\nexport default {\n  components: { TodoListItem, Summary },\n  props: {\n    todoList: Array,\n  },\n  setup(props) {\n    const todoLength = computed(() => props.todoList.length);\n    return { todoLength };\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/src/components/todoListItem.vue",
    "content": "<template>\n  <div class=\"flex justify-between items-center even:bg-gray-600 px-2 p-1\">\n    <label :for=\"`todo_${todo.id}_completed`\">\n      <input v-model=\"todo.completed\" type=\"checkbox\" :id=\"`todo_${todo.id}_completed`\" class=\"mr-2\" />\n      <span class=\"text-lg\">{{ todo.title }}</span>\n    </label>\n    <button @click=\"deleteItem\" class=\"bg-indigo-500 px-2 py-1 rounded-md active:bg-indigo-800\">Sil</button>\n  </div>\n</template>\n<script>\nexport default {\n  props: {\n    todo: Object,\n  },\n  setup(props, { emit }) {\n    const deleteItem = () => {\n      emit(\"delete-event\", props.todo);\n    };\n\n    return { deleteItem };\n  },\n};\n</script>\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/src/main.js",
    "content": "import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport \"./assets/index.css\";\ncreateApp(App).mount(\"#app\");\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/tailwind.config.js",
    "content": "module.exports = {\n  mode: \"jit\",\n  purge: [\"./src/**/*.vue\"],\n  darkMode: false, // or 'media' or 'class'\n  theme: {\n    extend: {},\n  },\n  variants: {\n    extend: {},\n  },\n  plugins: [],\n};\n"
  },
  {
    "path": "ders-9-composition-api/1-todo-list/vite.config.js",
    "content": "import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\n// https://vitejs.dev/config/\nexport default defineConfig({\n  plugins: [vue()]\n})\n"
  }
]