diff --git a/src/interactions/fastCharge/useDialDrag.js b/src/interactions/fastCharge/useDialDrag.js
index 388cfac8..17f74c82 100644
--- a/src/interactions/fastCharge/useDialDrag.js
+++ b/src/interactions/fastCharge/useDialDrag.js
@@ -56,7 +56,11 @@ function useDialDrag() {
setIsDrag(true);
}
- const resetAngle = useCallback(() => setAngle(0), []);
+ const resetAngle = useCallback(() => {
+ setAngle(0);
+ angleCache.current = 0;
+ prevAngle.current = 0;
+ }, []);
const style = {
transform: `rotate(${angle}rad)`,
diff --git a/src/interactions/subsidy/assets/coin.json b/src/interactions/subsidy/assets/coin.json
new file mode 100644
index 00000000..c322582a
--- /dev/null
+++ b/src/interactions/subsidy/assets/coin.json
@@ -0,0 +1,1035 @@
+{
+ "v": "4.8.0",
+ "meta": { "g": "LottieFiles AE 3.5.8", "a": "", "k": "", "d": "", "tc": "" },
+ "fr": 30,
+ "ip": 0,
+ "op": 30,
+ "w": 500,
+ "h": 500,
+ "nm": "Comp 2",
+ "ddd": 0,
+ "assets": [],
+ "layers": [
+ {
+ "ddd": 0,
+ "ind": 1,
+ "ty": 4,
+ "nm": "Shape Layer 6",
+ "sr": 1,
+ "ks": {
+ "o": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 19,
+ "s": [100]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 23,
+ "s": [1]
+ },
+ { "t": 25, "s": [1] }
+ ],
+ "ix": 11
+ },
+ "r": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.123], "y": [0.335] },
+ "o": { "x": [0], "y": [0] },
+ "t": 5,
+ "s": [0]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.7] },
+ "o": { "x": [0.496], "y": [0.424] },
+ "t": 13,
+ "s": [-24]
+ },
+ { "t": 25, "s": [-56] }
+ ],
+ "ix": 10
+ },
+ "p": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": 0, "y": 0.296 },
+ "o": { "x": 0, "y": 0 },
+ "t": 5,
+ "s": [250, 250, 0],
+ "to": [-40.667, -47.5, 0],
+ "ti": [57.284, -10.284, 0]
+ },
+ {
+ "i": { "x": 0.778, "y": 0.451 },
+ "o": { "x": 0.21, "y": 0.14 },
+ "t": 13,
+ "s": [126, 200, 0],
+ "to": [-71.118, 12.767, 0],
+ "ti": [5, -36, 0]
+ },
+ { "t": 25, "s": [-12, 368, 0] }
+ ],
+ "ix": 2
+ },
+ "a": { "a": 0, "k": [-151.707, -94.707, 0], "ix": 1 },
+ "s": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833, 0.234, 0.833], "y": [1, 0.487, 1] },
+ "o": { "x": [0, 0, 0.333], "y": [0, 0, 0] },
+ "t": 5,
+ "s": [100, 100, 100]
+ },
+ {
+ "i": { "x": [0.833, 0.613, 0.833], "y": [1, 0.513, 1] },
+ "o": { "x": [0.167, 0.41, 0.167], "y": [0, 0.118, 0] },
+ "t": 13,
+ "s": [100, 40, 100]
+ },
+ { "t": 21, "s": [100, -100, 100] }
+ ],
+ "ix": 6
+ }
+ },
+ "ao": 0,
+ "shapes": [
+ {
+ "ty": "gr",
+ "it": [
+ {
+ "d": 1,
+ "ty": "el",
+ "s": { "a": 0, "k": [30, 30], "ix": 2 },
+ "p": { "a": 0, "k": [0, 0], "ix": 3 },
+ "nm": "Ellipse Path 1",
+ "mn": "ADBE Vector Shape - Ellipse",
+ "hd": false
+ },
+ {
+ "ty": "st",
+ "c": {
+ "a": 0,
+ "k": [0.33662701775, 0.33662701775, 0.33662701775, 1],
+ "ix": 3
+ },
+ "o": { "a": 0, "k": 100, "ix": 4 },
+ "w": { "a": 0, "k": 0, "ix": 5 },
+ "lc": 1,
+ "lj": 1,
+ "ml": 4,
+ "bm": 0,
+ "nm": "Stroke 1",
+ "mn": "ADBE Vector Graphic - Stroke",
+ "hd": false
+ },
+ {
+ "ty": "fl",
+ "c": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 5,
+ "s": [0.149019607843, 0.898039215686, 1, 1]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 13,
+ "s": [0.58659620098, 0.950467756683, 1, 1]
+ },
+ { "t": 25, "s": [0.84753370098, 0.981732117896, 1, 1] }
+ ],
+ "ix": 4
+ },
+ "o": { "a": 0, "k": 100, "ix": 5 },
+ "r": 1,
+ "bm": 0,
+ "nm": "Fill 1",
+ "mn": "ADBE Vector Graphic - Fill",
+ "hd": false
+ },
+ {
+ "ty": "tr",
+ "p": { "a": 0, "k": [-151.707, -94.707], "ix": 2 },
+ "a": { "a": 0, "k": [0, 0], "ix": 1 },
+ "s": { "a": 0, "k": [100, 100], "ix": 3 },
+ "r": { "a": 0, "k": 0, "ix": 6 },
+ "o": { "a": 0, "k": 100, "ix": 7 },
+ "sk": { "a": 0, "k": 0, "ix": 4 },
+ "sa": { "a": 0, "k": 0, "ix": 5 },
+ "nm": "Transform"
+ }
+ ],
+ "nm": "Ellipse 1",
+ "np": 3,
+ "cix": 2,
+ "bm": 0,
+ "ix": 1,
+ "mn": "ADBE Vector Group",
+ "hd": false
+ }
+ ],
+ "ip": 5,
+ "op": 2705,
+ "st": 5,
+ "bm": 0
+ },
+ {
+ "ddd": 0,
+ "ind": 2,
+ "ty": 4,
+ "nm": "Shape Layer 5",
+ "sr": 1,
+ "ks": {
+ "o": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 22,
+ "s": [100]
+ },
+ { "t": 26, "s": [0] }
+ ],
+ "ix": 11
+ },
+ "r": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.123], "y": [1.425] },
+ "o": { "x": [0], "y": [0] },
+ "t": 3,
+ "s": [0]
+ },
+ {
+ "i": { "x": [0.833], "y": [1.193] },
+ "o": { "x": [0.496], "y": [-0.272] },
+ "t": 13,
+ "s": [47]
+ },
+ { "t": 26, "s": [101] }
+ ],
+ "ix": 10
+ },
+ "p": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": 0, "y": 0.163 },
+ "o": { "x": 0, "y": 0 },
+ "t": 3,
+ "s": [250, 250, 0],
+ "to": [8.333, -36.5, 0],
+ "ti": [-44.659, -3.543, 0]
+ },
+ {
+ "i": { "x": 0.778, "y": 0.425 },
+ "o": { "x": 0.21, "y": 0.146 },
+ "t": 13,
+ "s": [359, 160, 0],
+ "to": [58.396, 4.633, 0],
+ "ti": [-5.5, -86.833, 0]
+ },
+ { "t": 26, "s": [464, 353, 0] }
+ ],
+ "ix": 2
+ },
+ "a": { "a": 0, "k": [-151.707, -94.707, 0], "ix": 1 },
+ "s": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833, 0.833, 0.833], "y": [1, 1, 1] },
+ "o": { "x": [0.167, 0.41, 0.167], "y": [0, -0.343, 0] },
+ "t": 3,
+ "s": [100, 40, 100]
+ },
+ {
+ "i": { "x": [0.833, 0.613, 0.833], "y": [1, 0.446, 1] },
+ "o": { "x": [0, 0, 0.333], "y": [0, 0, 0] },
+ "t": 13,
+ "s": [100, 100, 100]
+ },
+ { "t": 26, "s": [100, -100, 100] }
+ ],
+ "ix": 6
+ }
+ },
+ "ao": 0,
+ "shapes": [
+ {
+ "ty": "gr",
+ "it": [
+ {
+ "d": 1,
+ "ty": "el",
+ "s": { "a": 0, "k": [30, 30], "ix": 2 },
+ "p": { "a": 0, "k": [0, 0], "ix": 3 },
+ "nm": "Ellipse Path 1",
+ "mn": "ADBE Vector Shape - Ellipse",
+ "hd": false
+ },
+ {
+ "ty": "st",
+ "c": {
+ "a": 0,
+ "k": [0.33662701775, 0.33662701775, 0.33662701775, 1],
+ "ix": 3
+ },
+ "o": { "a": 0, "k": 100, "ix": 4 },
+ "w": { "a": 0, "k": 0, "ix": 5 },
+ "lc": 1,
+ "lj": 1,
+ "ml": 4,
+ "bm": 0,
+ "nm": "Stroke 1",
+ "mn": "ADBE Vector Graphic - Stroke",
+ "hd": false
+ },
+ {
+ "ty": "fl",
+ "c": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 3,
+ "s": [0.58659620098, 0.950467756683, 1, 1]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 13,
+ "s": [0.149019607843, 0.898039215686, 1, 1]
+ },
+ { "t": 26, "s": [0.84753370098, 0.981732117896, 1, 1] }
+ ],
+ "ix": 4
+ },
+ "o": { "a": 0, "k": 100, "ix": 5 },
+ "r": 1,
+ "bm": 0,
+ "nm": "Fill 1",
+ "mn": "ADBE Vector Graphic - Fill",
+ "hd": false
+ },
+ {
+ "ty": "tr",
+ "p": { "a": 0, "k": [-151.707, -94.707], "ix": 2 },
+ "a": { "a": 0, "k": [0, 0], "ix": 1 },
+ "s": { "a": 0, "k": [100, 100], "ix": 3 },
+ "r": { "a": 0, "k": 0, "ix": 6 },
+ "o": { "a": 0, "k": 100, "ix": 7 },
+ "sk": { "a": 0, "k": 0, "ix": 4 },
+ "sa": { "a": 0, "k": 0, "ix": 5 },
+ "nm": "Transform"
+ }
+ ],
+ "nm": "Ellipse 1",
+ "np": 3,
+ "cix": 2,
+ "bm": 0,
+ "ix": 1,
+ "mn": "ADBE Vector Group",
+ "hd": false
+ }
+ ],
+ "ip": 3,
+ "op": 2703,
+ "st": 3,
+ "bm": 0
+ },
+ {
+ "ddd": 0,
+ "ind": 3,
+ "ty": 4,
+ "nm": "Shape Layer 4",
+ "sr": 1,
+ "ks": {
+ "o": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 23,
+ "s": [100]
+ },
+ { "t": 27, "s": [0] }
+ ],
+ "ix": 11
+ },
+ "r": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.123], "y": [2.497] },
+ "o": { "x": [0], "y": [0] },
+ "t": 4,
+ "s": [0]
+ },
+ {
+ "i": { "x": [0.833], "y": [1.22] },
+ "o": { "x": [0.496], "y": [-0.31] },
+ "t": 13,
+ "s": [12]
+ },
+ { "t": 27, "s": [63] }
+ ],
+ "ix": 10
+ },
+ "p": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": 0, "y": 0.375 },
+ "o": { "x": 0, "y": 0 },
+ "t": 4,
+ "s": [250, 250, 0],
+ "to": [-1.667, -56.5, 0],
+ "ti": [45.583, -0.146, 0]
+ },
+ {
+ "i": { "x": 0.823, "y": 0.638 },
+ "o": { "x": 0.21, "y": 0.125 },
+ "t": 13,
+ "s": [164.5, 148, 0],
+ "to": [-72.093, 0.23, 0],
+ "ti": [-4.5, -60.833, 0]
+ },
+ { "t": 27, "s": [63, 345, 0] }
+ ],
+ "ix": 2
+ },
+ "a": { "a": 0, "k": [-151.707, -94.707, 0], "ix": 1 },
+ "s": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0, 0.312, 0.833], "y": [0.247, -20.657, 1] },
+ "o": { "x": [0, 0, 0.167], "y": [0, -0.005, 0] },
+ "t": 4,
+ "s": [100, 100, 100]
+ },
+ {
+ "i": { "x": [0.936, 0.837, 0.833], "y": [0.869, 30.541, 1] },
+ "o": { "x": [0.693, 0.563, 0.167], "y": [0.348, 27.567, 0] },
+ "t": 13,
+ "s": [52, 100, 100]
+ },
+ { "t": 27, "s": [-60, 100, 100] }
+ ],
+ "ix": 6
+ }
+ },
+ "ao": 0,
+ "shapes": [
+ {
+ "ty": "gr",
+ "it": [
+ {
+ "d": 1,
+ "ty": "el",
+ "s": { "a": 0, "k": [30, 30], "ix": 2 },
+ "p": { "a": 0, "k": [0, 0], "ix": 3 },
+ "nm": "Ellipse Path 1",
+ "mn": "ADBE Vector Shape - Ellipse",
+ "hd": false
+ },
+ {
+ "ty": "st",
+ "c": {
+ "a": 0,
+ "k": [0.33662701775, 0.33662701775, 0.33662701775, 1],
+ "ix": 3
+ },
+ "o": { "a": 0, "k": 100, "ix": 4 },
+ "w": { "a": 0, "k": 0, "ix": 5 },
+ "lc": 1,
+ "lj": 1,
+ "ml": 4,
+ "bm": 0,
+ "nm": "Stroke 1",
+ "mn": "ADBE Vector Graphic - Stroke",
+ "hd": false
+ },
+ {
+ "ty": "fl",
+ "c": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 4,
+ "s": [0.58659620098, 0.950467756683, 1, 1]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 13,
+ "s": [0.149019607843, 0.898039215686, 1, 1]
+ },
+ { "t": 27, "s": [0.84753370098, 0.981732117896, 1, 1] }
+ ],
+ "ix": 4
+ },
+ "o": { "a": 0, "k": 100, "ix": 5 },
+ "r": 1,
+ "bm": 0,
+ "nm": "Fill 1",
+ "mn": "ADBE Vector Graphic - Fill",
+ "hd": false
+ },
+ {
+ "ty": "tr",
+ "p": { "a": 0, "k": [-151.707, -94.707], "ix": 2 },
+ "a": { "a": 0, "k": [0, 0], "ix": 1 },
+ "s": { "a": 0, "k": [100, 100], "ix": 3 },
+ "r": { "a": 0, "k": 0, "ix": 6 },
+ "o": { "a": 0, "k": 100, "ix": 7 },
+ "sk": { "a": 0, "k": 0, "ix": 4 },
+ "sa": { "a": 0, "k": 0, "ix": 5 },
+ "nm": "Transform"
+ }
+ ],
+ "nm": "Ellipse 1",
+ "np": 3,
+ "cix": 2,
+ "bm": 0,
+ "ix": 1,
+ "mn": "ADBE Vector Group",
+ "hd": false
+ }
+ ],
+ "ip": 4,
+ "op": 2704,
+ "st": 4,
+ "bm": 0
+ },
+ {
+ "ddd": 0,
+ "ind": 4,
+ "ty": 4,
+ "nm": "Shape Layer 3",
+ "sr": 1,
+ "ks": {
+ "o": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 20,
+ "s": [100]
+ },
+ { "t": 24, "s": [0] }
+ ],
+ "ix": 11
+ },
+ "r": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.123], "y": [2.497] },
+ "o": { "x": [0], "y": [0] },
+ "t": 1,
+ "s": [0]
+ },
+ {
+ "i": { "x": [0.833], "y": [1.22] },
+ "o": { "x": [0.496], "y": [-0.31] },
+ "t": 10,
+ "s": [12]
+ },
+ { "t": 24, "s": [63] }
+ ],
+ "ix": 10
+ },
+ "p": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": 0, "y": 0.28 },
+ "o": { "x": 0, "y": 0 },
+ "t": 1,
+ "s": [250, 250, 0],
+ "to": [33.333, -39.5, 0],
+ "ti": [-45.383, -4.275, 0]
+ },
+ {
+ "i": { "x": 0.823, "y": 0.559 },
+ "o": { "x": 0.21, "y": 0.152 },
+ "t": 10,
+ "s": [362, 203, 0],
+ "to": [44.907, 4.23, 0],
+ "ti": [-26.5, -61.833, 0]
+ },
+ { "t": 24, "s": [510, 323, 0] }
+ ],
+ "ix": 2
+ },
+ "a": { "a": 0, "k": [-151.707, -94.707, 0], "ix": 1 },
+ "s": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0, 0.312, 0.833], "y": [0.247, -20.657, 1] },
+ "o": { "x": [0, 0, 0.167], "y": [0, -0.005, 0] },
+ "t": 1,
+ "s": [100, 100, 100]
+ },
+ {
+ "i": { "x": [0.936, 0.837, 0.833], "y": [0.869, 30.541, 1] },
+ "o": { "x": [0.693, 0.563, 0.167], "y": [0.348, 27.567, 0] },
+ "t": 10,
+ "s": [52, 100, 100]
+ },
+ { "t": 24, "s": [-60, 100, 100] }
+ ],
+ "ix": 6
+ }
+ },
+ "ao": 0,
+ "shapes": [
+ {
+ "ty": "gr",
+ "it": [
+ {
+ "d": 1,
+ "ty": "el",
+ "s": { "a": 0, "k": [30, 30], "ix": 2 },
+ "p": { "a": 0, "k": [0, 0], "ix": 3 },
+ "nm": "Ellipse Path 1",
+ "mn": "ADBE Vector Shape - Ellipse",
+ "hd": false
+ },
+ {
+ "ty": "st",
+ "c": {
+ "a": 0,
+ "k": [0.33662701775, 0.33662701775, 0.33662701775, 1],
+ "ix": 3
+ },
+ "o": { "a": 0, "k": 100, "ix": 4 },
+ "w": { "a": 0, "k": 0, "ix": 5 },
+ "lc": 1,
+ "lj": 1,
+ "ml": 4,
+ "bm": 0,
+ "nm": "Stroke 1",
+ "mn": "ADBE Vector Graphic - Stroke",
+ "hd": false
+ },
+ {
+ "ty": "fl",
+ "c": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 1,
+ "s": [0.58659620098, 0.950467756683, 1, 1]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 10,
+ "s": [0.149019607843, 0.898039215686, 1, 1]
+ },
+ { "t": 24, "s": [0.84753370098, 0.981732117896, 1, 1] }
+ ],
+ "ix": 4
+ },
+ "o": { "a": 0, "k": 100, "ix": 5 },
+ "r": 1,
+ "bm": 0,
+ "nm": "Fill 1",
+ "mn": "ADBE Vector Graphic - Fill",
+ "hd": false
+ },
+ {
+ "ty": "tr",
+ "p": { "a": 0, "k": [-151.707, -94.707], "ix": 2 },
+ "a": { "a": 0, "k": [0, 0], "ix": 1 },
+ "s": { "a": 0, "k": [100, 100], "ix": 3 },
+ "r": { "a": 0, "k": 0, "ix": 6 },
+ "o": { "a": 0, "k": 100, "ix": 7 },
+ "sk": { "a": 0, "k": 0, "ix": 4 },
+ "sa": { "a": 0, "k": 0, "ix": 5 },
+ "nm": "Transform"
+ }
+ ],
+ "nm": "Ellipse 1",
+ "np": 3,
+ "cix": 2,
+ "bm": 0,
+ "ix": 1,
+ "mn": "ADBE Vector Group",
+ "hd": false
+ }
+ ],
+ "ip": 1,
+ "op": 2701,
+ "st": 1,
+ "bm": 0
+ },
+ {
+ "ddd": 0,
+ "ind": 5,
+ "ty": 4,
+ "nm": "Shape Layer 2",
+ "sr": 1,
+ "ks": {
+ "o": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 23,
+ "s": [100]
+ },
+ { "t": 27, "s": [0] }
+ ],
+ "ix": 11
+ },
+ "r": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.123], "y": [1.425] },
+ "o": { "x": [0], "y": [0] },
+ "t": 4,
+ "s": [0]
+ },
+ {
+ "i": { "x": [0.833], "y": [1.193] },
+ "o": { "x": [0.496], "y": [-0.272] },
+ "t": 14,
+ "s": [47]
+ },
+ { "t": 27, "s": [101] }
+ ],
+ "ix": 10
+ },
+ "p": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": 0, "y": 0.117 },
+ "o": { "x": 0, "y": 0 },
+ "t": 4,
+ "s": [250, 250, 0],
+ "to": [8.333, -36.5, 0],
+ "ti": [-42.806, -13.216, 0]
+ },
+ {
+ "i": { "x": 0.778, "y": 0.437 },
+ "o": { "x": 0.21, "y": 0.143 },
+ "t": 14,
+ "s": [343, 159, 0],
+ "to": [47.396, 14.633, 0],
+ "ti": [-15.5, -82.833, 0]
+ },
+ { "t": 27, "s": [456, 362, 0] }
+ ],
+ "ix": 2
+ },
+ "a": { "a": 0, "k": [-151.707, -94.707, 0], "ix": 1 },
+ "s": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833, 0.833, 0.833], "y": [1, 1, 1] },
+ "o": { "x": [0.167, 0.41, 0.167], "y": [0, -0.343, 0] },
+ "t": 4,
+ "s": [100, 40, 100]
+ },
+ {
+ "i": { "x": [0.833, 0.613, 0.833], "y": [1, 0.446, 1] },
+ "o": { "x": [0, 0, 0.333], "y": [0, 0, 0] },
+ "t": 14,
+ "s": [100, 100, 100]
+ },
+ { "t": 27, "s": [100, -100, 100] }
+ ],
+ "ix": 6
+ }
+ },
+ "ao": 0,
+ "shapes": [
+ {
+ "ty": "gr",
+ "it": [
+ {
+ "d": 1,
+ "ty": "el",
+ "s": { "a": 0, "k": [30, 30], "ix": 2 },
+ "p": { "a": 0, "k": [0, 0], "ix": 3 },
+ "nm": "Ellipse Path 1",
+ "mn": "ADBE Vector Shape - Ellipse",
+ "hd": false
+ },
+ {
+ "ty": "st",
+ "c": {
+ "a": 0,
+ "k": [0.33662701775, 0.33662701775, 0.33662701775, 1],
+ "ix": 3
+ },
+ "o": { "a": 0, "k": 100, "ix": 4 },
+ "w": { "a": 0, "k": 0, "ix": 5 },
+ "lc": 1,
+ "lj": 1,
+ "ml": 4,
+ "bm": 0,
+ "nm": "Stroke 1",
+ "mn": "ADBE Vector Graphic - Stroke",
+ "hd": false
+ },
+ {
+ "ty": "fl",
+ "c": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 4,
+ "s": [0.58659620098, 0.950467756683, 1, 1]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 14,
+ "s": [0.149019607843, 0.898039215686, 1, 1]
+ },
+ { "t": 27, "s": [0.84753370098, 0.981732117896, 1, 1] }
+ ],
+ "ix": 4
+ },
+ "o": { "a": 0, "k": 100, "ix": 5 },
+ "r": 1,
+ "bm": 0,
+ "nm": "Fill 1",
+ "mn": "ADBE Vector Graphic - Fill",
+ "hd": false
+ },
+ {
+ "ty": "tr",
+ "p": { "a": 0, "k": [-151.707, -94.707], "ix": 2 },
+ "a": { "a": 0, "k": [0, 0], "ix": 1 },
+ "s": { "a": 0, "k": [100, 100], "ix": 3 },
+ "r": { "a": 0, "k": 0, "ix": 6 },
+ "o": { "a": 0, "k": 100, "ix": 7 },
+ "sk": { "a": 0, "k": 0, "ix": 4 },
+ "sa": { "a": 0, "k": 0, "ix": 5 },
+ "nm": "Transform"
+ }
+ ],
+ "nm": "Ellipse 1",
+ "np": 3,
+ "cix": 2,
+ "bm": 0,
+ "ix": 1,
+ "mn": "ADBE Vector Group",
+ "hd": false
+ }
+ ],
+ "ip": 4,
+ "op": 2704,
+ "st": 4,
+ "bm": 0
+ },
+ {
+ "ddd": 0,
+ "ind": 6,
+ "ty": 4,
+ "nm": "Shape Layer 1",
+ "sr": 1,
+ "ks": {
+ "o": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 14,
+ "s": [100]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 18,
+ "s": [1]
+ },
+ { "t": 20, "s": [1] }
+ ],
+ "ix": 11
+ },
+ "r": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.123], "y": [0.335] },
+ "o": { "x": [0], "y": [0] },
+ "t": 0,
+ "s": [0]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.7] },
+ "o": { "x": [0.496], "y": [0.424] },
+ "t": 8,
+ "s": [-24]
+ },
+ { "t": 20, "s": [-56] }
+ ],
+ "ix": 10
+ },
+ "p": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": 0, "y": 0.296 },
+ "o": { "x": 0, "y": 0 },
+ "t": 0,
+ "s": [250, 250, 0],
+ "to": [-40.667, -47.5, 0],
+ "ti": [57.284, -10.284, 0]
+ },
+ {
+ "i": { "x": 0.778, "y": 0.451 },
+ "o": { "x": 0.21, "y": 0.14 },
+ "t": 8,
+ "s": [126, 200, 0],
+ "to": [-71.118, 12.767, 0],
+ "ti": [5, -36, 0]
+ },
+ { "t": 20, "s": [-12, 368, 0] }
+ ],
+ "ix": 2
+ },
+ "a": { "a": 0, "k": [-151.707, -94.707, 0], "ix": 1 },
+ "s": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833, 0.234, 0.833], "y": [1, 0.487, 1] },
+ "o": { "x": [0, 0, 0.333], "y": [0, 0, 0] },
+ "t": 0,
+ "s": [100, 100, 100]
+ },
+ {
+ "i": { "x": [0.833, 0.613, 0.833], "y": [1, 0.513, 1] },
+ "o": { "x": [0.167, 0.41, 0.167], "y": [0, 0.118, 0] },
+ "t": 8,
+ "s": [100, 40, 100]
+ },
+ { "t": 16, "s": [100, -100, 100] }
+ ],
+ "ix": 6
+ }
+ },
+ "ao": 0,
+ "shapes": [
+ {
+ "ty": "gr",
+ "it": [
+ {
+ "d": 1,
+ "ty": "el",
+ "s": { "a": 0, "k": [30, 30], "ix": 2 },
+ "p": { "a": 0, "k": [0, 0], "ix": 3 },
+ "nm": "Ellipse Path 1",
+ "mn": "ADBE Vector Shape - Ellipse",
+ "hd": false
+ },
+ {
+ "ty": "st",
+ "c": {
+ "a": 0,
+ "k": [0.33662701775, 0.33662701775, 0.33662701775, 1],
+ "ix": 3
+ },
+ "o": { "a": 0, "k": 100, "ix": 4 },
+ "w": { "a": 0, "k": 0, "ix": 5 },
+ "lc": 1,
+ "lj": 1,
+ "ml": 4,
+ "bm": 0,
+ "nm": "Stroke 1",
+ "mn": "ADBE Vector Graphic - Stroke",
+ "hd": false
+ },
+ {
+ "ty": "fl",
+ "c": {
+ "a": 1,
+ "k": [
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 0,
+ "s": [0.149019607843, 0.898039215686, 1, 1]
+ },
+ {
+ "i": { "x": [0.833], "y": [0.833] },
+ "o": { "x": [0.167], "y": [0.167] },
+ "t": 8,
+ "s": [0.58659620098, 0.950467756683, 1, 1]
+ },
+ { "t": 20, "s": [0.84753370098, 0.981732117896, 1, 1] }
+ ],
+ "ix": 4
+ },
+ "o": { "a": 0, "k": 100, "ix": 5 },
+ "r": 1,
+ "bm": 0,
+ "nm": "Fill 1",
+ "mn": "ADBE Vector Graphic - Fill",
+ "hd": false
+ },
+ {
+ "ty": "tr",
+ "p": { "a": 0, "k": [-151.707, -94.707], "ix": 2 },
+ "a": { "a": 0, "k": [0, 0], "ix": 1 },
+ "s": { "a": 0, "k": [100, 100], "ix": 3 },
+ "r": { "a": 0, "k": 0, "ix": 6 },
+ "o": { "a": 0, "k": 100, "ix": 7 },
+ "sk": { "a": 0, "k": 0, "ix": 4 },
+ "sa": { "a": 0, "k": 0, "ix": 5 },
+ "nm": "Transform"
+ }
+ ],
+ "nm": "Ellipse 1",
+ "np": 3,
+ "cix": 2,
+ "bm": 0,
+ "ix": 1,
+ "mn": "ADBE Vector Group",
+ "hd": false
+ }
+ ],
+ "ip": 0,
+ "op": 2700,
+ "st": 0,
+ "bm": 0
+ }
+ ],
+ "markers": []
+}
diff --git a/src/interactions/subsidy/assets/dollor.svg b/src/interactions/subsidy/assets/dollor.svg
new file mode 100644
index 00000000..55578184
--- /dev/null
+++ b/src/interactions/subsidy/assets/dollor.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/interactions/subsidy/index.jsx b/src/interactions/subsidy/index.jsx
new file mode 100644
index 00000000..8e1cc5b7
--- /dev/null
+++ b/src/interactions/subsidy/index.jsx
@@ -0,0 +1,73 @@
+import { useState, useRef, useImperativeHandle } from "react";
+import Lottie from "react-lottie-player/dist/LottiePlayerLight";
+import coinRottie from "./assets/coin.json";
+import dollor from "./assets/dollor.svg";
+import InteractionDescription from "../InteractionDescription.jsx";
+
+function SubsidyInteraction({ interactCallback, $ref }) {
+ const [count, setCount] = useState(0);
+ const rottieRef = useRef(null);
+
+ function onClick(e) {
+ setCount((count) => count + 1);
+ e.currentTarget.animate(
+ [{ transform: "rotateY(0)" }, { transform: "rotateY(360deg)" }],
+ {
+ duration: 500,
+ iteractions: 1,
+ easing: "cubic-bezier(0.215, 0.610, 0.355, 1.000)", // ease-out-cubic
+ },
+ );
+ rottieRef.current.goToAndPlay(0);
+ interactCallback?.();
+ }
+
+ useImperativeHandle(
+ $ref,
+ () => ({
+ reset() {
+ setCount(0);
+ },
+ }),
+ [],
+ );
+
+ return (
+
+
+
+
+
+
+
+
+
+
+ {count * 10}
+
+ 만원
+
+
+ );
+}
+
+export default SubsidyInteraction;
diff --git a/src/interactions/univasalIsland/UnivasalIslandInteraction.jsx b/src/interactions/univasalIsland/index.jsx
similarity index 77%
rename from src/interactions/univasalIsland/UnivasalIslandInteraction.jsx
rename to src/interactions/univasalIsland/index.jsx
index 1e68d81c..03ceaa77 100644
--- a/src/interactions/univasalIsland/UnivasalIslandInteraction.jsx
+++ b/src/interactions/univasalIsland/index.jsx
@@ -1,8 +1,8 @@
import { useImperativeHandle } from "react";
+import InteractionDescription from "../InteractionDescription.jsx";
import Phone from "./Phone.jsx";
import useIslandDrag from "./useIslandDrag.js";
-import orderIcon from "@/assets/property3.svg";
import seat from "./assets/seat.png";
import univasalIsland1x from "./assets/univasalIsland@1x.png";
import univasalIsland2x from "./assets/univasalIsland@2x.png";
@@ -44,20 +44,12 @@ function UnivasalIslandInteraction({ interactCallback, $ref }) {
return (
-
-
-
-
- 나에게 맞게, 자유자재로
-
-
- 새로워진 The new IONIQ 5의 유니버설 아일랜드는 어떤 모습일까요?
-
-
- 유니버설 아일랜드를 드래그하여 이동시키고 스마트폰을 충전해보세요!
-
-
-
+