2.4.5 • Published 10 months ago

bravosix v2.4.5

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

BravoSix

BravoSix adalah pustaka JavaScript untuk mengganti tema warna elemen HTML dengan animasi efek "going dark" seperti night vision.

Instalasi

Anda dapat menginstal BravoSix melalui NPM:

npm install bravosix

Cara Penggunaan

Berikut adalah contoh penggunaan BravoSix dalam aplikasi React:

  1. Import BravoSix
import BravoSix from "bravosix";
  1. Buat instance BravoSix
const bravosix = new BravoSix();
  1. Gunakan metode applyColors(colorTheme)

Metode ini mengganti tema warna elemen tanpa animasi.

bravosix.applyColors(colorTheme);

colorTheme dapat berupa:

  • "original"
  • "dark"
  • "light"
  • "night-vision" terinspirasi dari night vision di game Call of Duty: Modern Warfare II (2022)

Contoh menggunakan applyColors dalam aplikasi React:

const handleButtonClick = () => {
  let newTheme;
  switch (colorTheme) {
    case "original":
      newTheme = "dark";
      break;
    case "dark":
      newTheme = "light";
      break;
    case "light":
      newTheme = "original";
      break;
    default:
      newTheme = "original";
  }
  setColorTheme(newTheme);
  setIsNightVision(false);
  bravosix.applyColors(newTheme);
};
  1. Gunakan metode goingDark()

Metode ini memulai animasi efek "going dark" dan mengganti tema warna menjadi night vision.

bravosix.goingDark();

Contoh lengkap dengan applyColors dan goingDark:

import React, { useState, useEffect } from "react";
import "./App.css";
import BravoSix from "bravosix";

function App() {
  const [colorTheme, setColorTheme] = useState("original");
  const [isNightVision, setIsNightVision] = useState(false);
  const [bravosix, setBravosix] = useState(null);

  useEffect(() => {
    setBravosix(new BravoSix());
  }, []);

  const handleButtonClick = () => {
    let newTheme;
    switch (colorTheme) {
      case "original":
        newTheme = "dark";
        break;
      case "dark":
        newTheme = "light";
        break;
      case "light":
        newTheme = "original";
        break;
      default:
        newTheme = "original";
    }
    setColorTheme(newTheme);
    setIsNightVision(false);
    bravosix.applyColors(newTheme);
  };

  const handleGoingDarkClick = () => {
    if (isNightVision) {
      setColorTheme("original");
      setIsNightVision(false);
      bravosix.applyColors("original");
    } else {
      setIsNightVision(true);
      bravosix.goingDark();
    }
  };

  return (
    <div className="App">
      <header className="App-header">
        <h1>Klik tombol di bawah untuk mengganti tema warna:</h1>
        <button onClick={handleButtonClick}>Ganti Tema Warna</button>
        <button onClick={handleGoingDarkClick}>
          {isNightVision ? "Kembali ke Original" : "Going Dark"}
        </button>
      </header>
    </div>
  );
}

export default App;

certification: MIT

2.4.3

10 months ago

2.4.2

10 months ago

2.4.5

10 months ago

2.4.4

10 months ago

2.3.2

1 year ago

2.3.1

1 year ago

2.3.0

1 year ago

2.2.9

1 year ago

2.2.8

1 year ago

2.2.7

1 year ago

2.2.6

1 year ago

2.2.5

1 year ago

2.2.4

1 year ago

2.2.3

1 year ago

2.2.2

1 year ago

2.1.2

1 year ago

2.1.1

1 year ago

2.1.0

1 year ago

2.0.2

1 year ago

2.0.1

1 year ago

2.0.0

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago