@rpg-engine/long-bow 0.1.794 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +181 -181
  3. package/dist/components/Button.d.ts +1 -0
  4. package/dist/components/Equipment/EquipmentSet.d.ts +5 -3
  5. package/dist/components/Item/Cards/ItemTooltip.d.ts +6 -0
  6. package/dist/components/Item/Inventory/ItemContainer.d.ts +4 -6
  7. package/dist/components/Item/Inventory/ItemContainerTypes.d.ts +6 -0
  8. package/dist/components/Item/Inventory/ItemSlot.d.ts +5 -9
  9. package/dist/components/Item/Inventory/itemContainerHelper.d.ts +2 -7
  10. package/dist/components/PropertySelect/PropertySelect.d.ts +12 -0
  11. package/dist/components/QuestInfo/QuestInfo.d.ts +14 -0
  12. package/dist/components/RelativeListMenu.d.ts +13 -0
  13. package/dist/index.d.ts +1 -1
  14. package/dist/long-bow.cjs.development.js +748 -1194
  15. package/dist/long-bow.cjs.development.js.map +1 -1
  16. package/dist/long-bow.cjs.production.min.js +1 -1
  17. package/dist/long-bow.cjs.production.min.js.map +1 -1
  18. package/dist/long-bow.esm.js +748 -1196
  19. package/dist/long-bow.esm.js.map +1 -1
  20. package/dist/mocks/equipmentSet.mocks.d.ts +2 -2
  21. package/dist/stories/Button.stories.d.ts +5 -0
  22. package/dist/stories/Chat.stories.d.ts +5 -0
  23. package/dist/stories/CheckButton.stories.d.ts +5 -0
  24. package/dist/stories/DraggableContainer.stories.d.ts +5 -0
  25. package/dist/stories/Dropdown.stories.d.ts +5 -0
  26. package/dist/stories/EquipmentSet.stories.d.ts +5 -0
  27. package/dist/stories/ItemContainer.stories.d.ts +5 -0
  28. package/dist/stories/ListMenu.stories.d.ts +5 -0
  29. package/dist/stories/Multitab.stories.d.ts +6 -0
  30. package/dist/stories/NPCDialog.stories.d.ts +7 -0
  31. package/dist/stories/ProgressBar.stories.d.ts +8 -0
  32. package/dist/stories/PropertySelect.stories.d.ts +5 -0
  33. package/dist/stories/QuestInfo.stories.d.ts +5 -0
  34. package/dist/stories/RPGUIContainers.stories.d.ts +5 -0
  35. package/dist/stories/RadioButton.stories.d.ts +5 -0
  36. package/dist/stories/RangeSlider.stories.d.ts +5 -0
  37. package/dist/stories/ScrollList.stories.d.ts +5 -0
  38. package/dist/stories/SimpleProgressBar.stories.d.ts +5 -0
  39. package/dist/stories/SkillProgressBar.stories.d.ts +5 -0
  40. package/dist/stories/SkillsContainer.stories.d.ts +5 -0
  41. package/dist/stories/Text.stories.d.ts +7 -0
  42. package/package.json +98 -96
  43. package/src/components/Abstractions/SlotsContainer.tsx +42 -42
  44. package/src/components/Button.tsx +30 -29
  45. package/src/components/Chat/Chat.tsx +193 -193
  46. package/src/components/CheckButton.tsx +65 -65
  47. package/src/components/DraggableContainer.tsx +150 -150
  48. package/src/components/Dropdown.tsx +57 -57
  49. package/src/components/Equipment/EquipmentSet.tsx +138 -180
  50. package/src/components/Input.tsx +11 -11
  51. package/src/components/Item/Cards/ItemTooltip.tsx +32 -0
  52. package/src/components/Item/Inventory/ItemContainer.tsx +68 -113
  53. package/src/components/Item/Inventory/ItemContainerTypes.ts +6 -0
  54. package/src/components/Item/Inventory/ItemSlot.tsx +212 -158
  55. package/src/components/Item/Inventory/itemContainerHelper.ts +146 -81
  56. package/src/components/ListMenu.tsx +65 -65
  57. package/src/components/Multitab/Tab.tsx +57 -57
  58. package/src/components/Multitab/TabBody.tsx +13 -13
  59. package/src/components/Multitab/TabsContainer.tsx +97 -97
  60. package/src/components/NPCDialog/NPCDialog.tsx +145 -145
  61. package/src/components/NPCDialog/NPCDialogText.tsx +53 -53
  62. package/src/components/NPCDialog/QuestionDialog/QuestionDialog.tsx +237 -242
  63. package/src/components/ProgressBar.tsx +91 -91
  64. package/src/components/PropertySelect/PropertySelect.tsx +101 -0
  65. package/src/components/PropertySelect/img/ui-arrows/arrow01-left-clicked.png +0 -0
  66. package/src/components/PropertySelect/img/ui-arrows/arrow01-left.png +0 -0
  67. package/src/components/PropertySelect/img/ui-arrows/arrow01-right-clicked.png +0 -0
  68. package/src/components/PropertySelect/img/ui-arrows/arrow01-right.png +0 -0
  69. package/src/components/PropertySelect/img/ui-arrows/arrow02-left-clicked.png +0 -0
  70. package/src/components/PropertySelect/img/ui-arrows/arrow02-left.png +0 -0
  71. package/src/components/PropertySelect/img/ui-arrows/arrow02-right-clicked.png +0 -0
  72. package/src/components/PropertySelect/img/ui-arrows/arrow02-right.png +0 -0
  73. package/src/components/QuestInfo/QuestInfo.tsx +143 -0
  74. package/src/components/QuestInfo/img/default.png +0 -0
  75. package/src/components/RPGUIContainer.tsx +47 -47
  76. package/src/components/RPGUIRoot.tsx +14 -14
  77. package/src/components/RadioButton.tsx +53 -53
  78. package/src/components/RangeSlider.tsx +68 -68
  79. package/src/components/RelativeListMenu.tsx +83 -0
  80. package/src/components/ScrollList.tsx +77 -77
  81. package/src/components/SimpleProgressBar.tsx +62 -62
  82. package/src/components/SkillProgressBar.tsx +123 -124
  83. package/src/components/SkillsContainer.tsx +196 -235
  84. package/src/components/TextArea.tsx +11 -11
  85. package/src/components/Truncate.tsx +25 -25
  86. package/src/components/shared/Column.tsx +16 -16
  87. package/src/components/shared/SpriteFromAtlas.tsx +99 -99
  88. package/src/components/typography/DynamicText.tsx +49 -49
  89. package/src/constants/uiColors.ts +10 -10
  90. package/src/hooks/useEventListener.ts +21 -21
  91. package/src/hooks/useOutsideAlerter.ts +25 -25
  92. package/src/index.tsx +25 -25
  93. package/src/libs/StringHelpers.ts +3 -3
  94. package/src/mocks/atlas/icons/icons.json +735 -303
  95. package/src/mocks/atlas/icons/icons.png +0 -0
  96. package/src/mocks/atlas/items/items.json +5215 -5195
  97. package/src/mocks/atlas/items/items.png +0 -0
  98. package/src/mocks/equipmentSet.mocks.ts +347 -347
  99. package/src/mocks/itemContainer.mocks.ts +281 -249
  100. package/src/mocks/skills.mocks.ts +122 -122
  101. package/src/stories/Button.stories.tsx +36 -0
  102. package/src/stories/Chat.stories.tsx +170 -0
  103. package/src/stories/CheckButton.stories.tsx +48 -0
  104. package/src/stories/DraggableContainer.stories.tsx +28 -0
  105. package/src/stories/Dropdown.stories.tsx +46 -0
  106. package/src/stories/EquipmentSet.stories.tsx +51 -0
  107. package/src/stories/ItemContainer.stories.tsx +51 -0
  108. package/src/stories/ListMenu.stories.tsx +56 -0
  109. package/src/stories/Multitab.stories.tsx +51 -0
  110. package/src/stories/NPCDialog.stories.tsx +130 -0
  111. package/src/stories/ProgressBar.stories.tsx +23 -0
  112. package/src/stories/PropertySelect.stories.tsx +41 -0
  113. package/src/stories/QuestInfo.stories.tsx +76 -0
  114. package/src/stories/RPGUIContainers.stories.tsx +42 -0
  115. package/src/stories/RadioButton.stories.tsx +49 -0
  116. package/src/stories/RangeSlider.stories.tsx +60 -0
  117. package/src/stories/ScrollList.stories.tsx +85 -0
  118. package/src/stories/SimpleProgressBar.stories.tsx +22 -0
  119. package/src/stories/SkillProgressBar.stories.tsx +30 -0
  120. package/src/stories/SkillsContainer.stories.tsx +31 -0
  121. package/src/stories/Text.stories.tsx +42 -0
  122. package/src/types/eventTypes.ts +4 -4
  123. package/src/types/index.d.ts +2 -2
  124. package/dist/components/Item/Cards/ItemCard.d.ts +0 -9
  125. package/dist/components/shared/SpriteIcon.d.ts +0 -9
  126. package/dist/components/store/UI.store.d.ts +0 -38
  127. package/src/components/Item/Cards/ItemCard.tsx +0 -36
  128. package/src/components/shared/SpriteIcon.tsx +0 -67
  129. package/src/components/store/UI.store.ts +0 -232
@@ -1,235 +1,196 @@
1
- import { ISkill } from '@rpg-engine/shared';
2
- import React from 'react';
3
- import styled from 'styled-components';
4
- import { colors } from '../constants/uiColors';
5
- import { DraggableContainer } from './DraggableContainer';
6
- import { SkillProgressBar } from './SkillProgressBar';
7
-
8
- export interface ISkillContainerProps {
9
- skill: ISkill;
10
- onCloseButton: () => void;
11
- }
12
-
13
- export const SkillsContainer: React.FC<ISkillContainerProps> = ({
14
- onCloseButton,
15
- skill,
16
- }) => {
17
- return (
18
- <SkillsDraggableContainer title="Skills" onCloseButton={onCloseButton}>
19
- <SkillSplitDiv>
20
- <p>Combat Skills</p>
21
- <hr className="golden" />
22
- </SkillSplitDiv>
23
- <SkillProgressBar
24
- skillName={'First'}
25
- bgColor={colors.cardinal}
26
- level={skill?.first?.level || 0}
27
- skillPoints={skill?.first?.skillPoints || 0}
28
- skillPointsToNextLevel={skill?.first?.skillPointsToNextLevel || 0}
29
- texturePath={'gloves/leather-gloves.png'}
30
- />
31
- <SkillProgressBar
32
- skillName={'Club'}
33
- bgColor={colors.cardinal}
34
- level={skill?.club?.level || 0}
35
- skillPoints={skill?.club?.skillPoints || 0}
36
- skillPointsToNextLevel={skill?.club?.skillPointsToNextLevel || 0}
37
- texturePath={'maces/club.png'}
38
- />
39
- <SkillProgressBar
40
- skillName={'Sword'}
41
- bgColor={colors.cardinal}
42
- level={skill?.sword?.level || 0}
43
- skillPoints={skill?.sword?.skillPoints || 0}
44
- skillPointsToNextLevel={skill?.sword?.skillPointsToNextLevel || 0}
45
- texturePath={'swords/double-edged-sword.png'}
46
- />
47
- <SkillProgressBar
48
- skillName={'Axe'}
49
- bgColor={colors.cardinal}
50
- level={skill?.axe?.level || 0}
51
- skillPoints={skill?.axe?.skillPoints || 0}
52
- skillPointsToNextLevel={skill?.axe?.skillPointsToNextLevel || 0}
53
- texturePath={'axes/double-axe.png'}
54
- />
55
- <SkillProgressBar
56
- skillName={'Distance'}
57
- bgColor={colors.cardinal}
58
- level={skill?.distance?.level || 0}
59
- skillPoints={skill?.distance?.skillPoints || 0}
60
- skillPointsToNextLevel={skill?.distance?.skillPointsToNextLevel || 0}
61
- texturePath={'bows/horse-bow.png'}
62
- />
63
- <SkillProgressBar
64
- skillName={'Shielding'}
65
- bgColor={colors.cardinal}
66
- level={skill?.shielding?.level || 0}
67
- skillPoints={skill?.shielding?.skillPoints || 0}
68
- skillPointsToNextLevel={skill?.shielding?.skillPointsToNextLevel || 0}
69
- texturePath={'shields/studded-shield.png'}
70
- />
71
- <SkillSplitDiv>
72
- <p>Crafting Skills</p>
73
- <hr className="golden" />
74
- </SkillSplitDiv>
75
- <SkillProgressBar
76
- skillName={'Fishing'}
77
- bgColor={colors.blue}
78
- level={skill?.fishing?.level || 0}
79
- skillPoints={skill?.fishing?.skillPoints || 0}
80
- skillPointsToNextLevel={skill?.fishing?.skillPointsToNextLevel || 0}
81
- texturePath={'foods/fish.png'}
82
- />
83
- <SkillProgressBar
84
- skillName={'Mining'}
85
- bgColor={colors.blue}
86
- level={skill?.mining?.level || 0}
87
- skillPoints={skill?.mining?.skillPoints || 0}
88
- skillPointsToNextLevel={skill?.mining?.skillPointsToNextLevel || 0}
89
- texturePath={'crafting-resources/iron-ingot.png'}
90
- />
91
- <SkillProgressBar
92
- skillName={'Lumberjacking'}
93
- bgColor={colors.blue}
94
- level={skill?.lumberjacking?.level || 0}
95
- skillPoints={skill?.lumberjacking?.skillPoints || 0}
96
- skillPointsToNextLevel={
97
- skill?.lumberjacking?.skillPointsToNextLevel || 0
98
- }
99
- texturePath={'crafting-resources/greater-wood-log.png'}
100
- />
101
- <SkillProgressBar
102
- skillName={'Cooking'}
103
- bgColor={colors.blue}
104
- level={skill?.cooking?.level || 0}
105
- skillPoints={skill?.cooking?.skillPoints || 0}
106
- skillPointsToNextLevel={skill?.cooking?.skillPointsToNextLevel || 0}
107
- texturePath={'foods/chickens-meat.png'}
108
- />
109
- <SkillProgressBar
110
- skillName={'Alchemy'}
111
- bgColor={colors.blue}
112
- level={skill?.alchemy?.level || 0}
113
- skillPoints={skill?.alchemy?.skillPoints || 0}
114
- skillPointsToNextLevel={skill?.alchemy?.skillPointsToNextLevel || 0}
115
- texturePath={'potions/greater-mana-potion.png'}
116
- />
117
-
118
- <SkillSplitDiv>
119
- <p>Basic Attributes</p>
120
- <hr className="golden" />
121
- </SkillSplitDiv>
122
- <SkillProgressBar
123
- skillName={'Stamina'}
124
- bgColor={colors.darkYellow}
125
- level={skill?.stamina?.level || 0}
126
- skillPoints={skill?.stamina?.skillPoints || 0}
127
- skillPointsToNextLevel={skill?.stamina?.skillPointsToNextLevel || 0}
128
- texturePath={'spell-icons/regenerate.png'}
129
- />
130
- <SkillProgressBar
131
- skillName={'Magic'}
132
- bgColor={colors.purple}
133
- level={skill?.magic?.level || 0}
134
- skillPoints={skill?.magic?.skillPoints || 0}
135
- skillPointsToNextLevel={skill?.magic?.skillPointsToNextLevel || 0}
136
- texturePath={'spell-icons/fireball.png'}
137
- />
138
- <SkillProgressBar
139
- skillName={'Magic Resistance'}
140
- bgColor={colors.navyBlue}
141
- level={skill?.magicResistance?.level || 0}
142
- skillPoints={skill?.magicResistance?.skillPoints || 0}
143
- skillPointsToNextLevel={
144
- skill?.magicResistance?.skillPointsToNextLevel || 0
145
- }
146
- texturePath={'spell-icons/freeze.png'}
147
- />
148
- <SkillProgressBar
149
- skillName={'Strength'}
150
- bgColor={colors.cardinal}
151
- level={skill?.strength?.level || 0}
152
- skillPoints={skill?.strength?.skillPoints || 0}
153
- skillPointsToNextLevel={skill?.strength?.skillPointsToNextLevel || 0}
154
- texturePath={'spell-icons/enchanted-blow.png'}
155
- />
156
- <SkillProgressBar
157
- skillName={'Resistance'}
158
- bgColor={colors.raisinBlack}
159
- level={skill?.resistance?.level || 0}
160
- skillPoints={skill?.resistance?.skillPoints || 0}
161
- skillPointsToNextLevel={skill?.resistance?.skillPointsToNextLevel || 0}
162
- texturePath={'spell-icons/magic-shield.png'}
163
- />
164
- <SkillProgressBar
165
- skillName={'Dexterity'}
166
- bgColor={colors.blue}
167
- level={skill?.dexterity?.level || 0}
168
- skillPoints={skill?.dexterity?.skillPoints || 0}
169
- skillPointsToNextLevel={skill?.dexterity?.skillPointsToNextLevel || 0}
170
- texturePath={'spell-icons/haste.png'}
171
- />
172
-
173
- {/* <SkillSplitDiv>
174
- <p>Magic Skills</p>
175
- <hr className="golden" />
176
- </SkillSplitDiv>
177
- <SkillProgressBar
178
- skillName={'Ice'}
179
- bgColor={'red'}
180
- level={skill?.ice?.level || 0}
181
- skillPoints={skill?.ice?.skillPoints || 0}
182
- skillPointsToNextLevel={skill?.ice?.skillPointsToNextLevel || 0}
183
- texturePath={'spell-icons/freeze.png'}
184
- />
185
- <SkillProgressBar
186
- skillName={'Earth'}
187
- bgColor={'red'}
188
- level={skill?.earth?.level || 0}
189
- skillPoints={skill?.earth?.skillPoints || 0}
190
- skillPointsToNextLevel={skill?.earth?.skillPointsToNextLevel || 0}
191
- texturePath={'spell-icons/earth-barrier.png'}
192
- />
193
- <SkillProgressBar
194
- skillName={'Air'}
195
- bgColor={'red'}
196
- level={skill?.air?.level || 0}
197
- skillPoints={skill?.air?.skillPoints || 0}
198
- skillPointsToNextLevel={skill?.air?.skillPointsToNextLevel || 0}
199
- texturePath={'spell-icons/poison-tornado.png'}
200
- />
201
- <SkillProgressBar
202
- skillName={'Water'}
203
- bgColor={'red'}
204
- level={skill?.water?.level || 0}
205
- skillPoints={skill?.water?.skillPoints || 0}
206
- skillPointsToNextLevel={skill?.water?.skillPointsToNextLevel || 0}
207
- texturePath={'spell-icons/tsunami.png'}
208
- /> */}
209
- </SkillsDraggableContainer>
210
- );
211
- };
212
-
213
- const SkillsDraggableContainer = styled(DraggableContainer)`
214
- border: 1px solid black;
215
- width: 400px;
216
- height: 800px;
217
- overflow-y: scroll;
218
- .DraggableContainer__TitleContainer-sc-184mpyl-2 {
219
- width: auto;
220
- height: auto;
221
- }
222
- `;
223
-
224
- const SkillSplitDiv = styled.div`
225
- width: 100%;
226
- font-size: 11px;
227
- margin-top: 10px;
228
- hr {
229
- margin: 0px;
230
- padding: 0px;
231
- }
232
- p {
233
- margin-bottom: 0px;
234
- }
235
- `;
1
+ import { ISkill, ISkillDetails } from '@rpg-engine/shared';
2
+ import _ from 'lodash';
3
+ import React from 'react';
4
+ import styled from 'styled-components';
5
+ import { colors } from '../constants/uiColors';
6
+ import { DraggableContainer } from './DraggableContainer';
7
+ import { SkillProgressBar } from './SkillProgressBar';
8
+
9
+ export interface ISkillContainerProps {
10
+ skill: ISkill;
11
+ onCloseButton: () => void;
12
+ }
13
+
14
+ const skillProps = {
15
+ attributes: {
16
+ color: colors.cardinal,
17
+ values: {
18
+ stamina: 'spell-icons/regenerate.png',
19
+ magic: 'spell-icons/fireball.png',
20
+ magicResistance: 'spell-icons/freeze.png',
21
+ strength: 'spell-icons/enchanted-blow.png',
22
+ resistance: 'spell-icons/magic-shield.png',
23
+ dexterity: 'spell-icons/haste.png',
24
+ },
25
+ },
26
+ combat: {
27
+ color: colors.purple,
28
+ values: {
29
+ first: 'gloves/leather-gloves.png',
30
+ club: 'maces/club.png',
31
+ sword: 'swords/double-edged-sword.png',
32
+ axe: 'axes/double-axe.png',
33
+ distance: 'bows/horse-bow.png',
34
+ shielding: 'shields/studded-shield.png',
35
+ dagger: 'daggers/dagger.png',
36
+ },
37
+ },
38
+ crafting: {
39
+ color: colors.blue,
40
+ values: {
41
+ fishing: 'foods/fish.png',
42
+ mining: 'crafting-resources/iron-ingot.png',
43
+ lumberjacking: 'crafting-resources/greater-wood-log.png',
44
+ cooking: 'foods/chickens-meat.png',
45
+ alchemy: 'potions/greater-mana-potion.png',
46
+ },
47
+ },
48
+ };
49
+
50
+ export const SkillsContainer: React.FC<ISkillContainerProps> = ({
51
+ onCloseButton,
52
+ skill,
53
+ }) => {
54
+ const onRenderSkillCategory = (
55
+ category: 'attributes' | 'combat' | 'crafting'
56
+ ) => {
57
+ const skillCategory = skillProps[category];
58
+
59
+ const skillCategoryColor = skillCategory.color;
60
+
61
+ const output = [];
62
+
63
+ for (const [key, value] of Object.entries(skillCategory.values)) {
64
+ //@ts-ignore
65
+ const skillDetails = (skill[key] as unknown) as ISkillDetails;
66
+
67
+ output.push(
68
+ <SkillProgressBar
69
+ key={key}
70
+ skillName={_.capitalize(key)}
71
+ bgColor={skillCategoryColor}
72
+ level={skillDetails.level || 0}
73
+ skillPoints={Math.round(skillDetails.skillPoints) || 0}
74
+ skillPointsToNextLevel={
75
+ Math.round(skillDetails.skillPointsToNextLevel) || 0
76
+ }
77
+ texturePath={value}
78
+ />
79
+ );
80
+ }
81
+
82
+ return output;
83
+ };
84
+
85
+ return (
86
+ <SkillsDraggableContainer title="Skills">
87
+ {onCloseButton && (
88
+ <CloseButton onClick={onCloseButton} onTouchStart={onCloseButton}>
89
+ X
90
+ </CloseButton>
91
+ )}
92
+ <SkillSplitDiv>
93
+ <p>General</p>
94
+ <hr className="golden" />
95
+
96
+ <SkillProgressBar
97
+ skillName={'Level'}
98
+ bgColor={colors.navyBlue}
99
+ level={Math.round(skill.level) || 0}
100
+ skillPoints={Math.round(skill.experience) || 0}
101
+ skillPointsToNextLevel={Math.round(skill.xpToNextLevel) || 0}
102
+ texturePath={'swords/broad-sword.png'}
103
+ />
104
+
105
+ <p>Combat Skills</p>
106
+ <hr className="golden" />
107
+ </SkillSplitDiv>
108
+
109
+ {onRenderSkillCategory('combat')}
110
+
111
+ <SkillSplitDiv>
112
+ <p>Crafting Skills</p>
113
+ <hr className="golden" />
114
+ </SkillSplitDiv>
115
+
116
+ {onRenderSkillCategory('crafting')}
117
+
118
+ <SkillSplitDiv>
119
+ <p>Basic Attributes</p>
120
+ <hr className="golden" />
121
+ </SkillSplitDiv>
122
+
123
+ {onRenderSkillCategory('attributes')}
124
+
125
+ {/* <SkillSplitDiv>
126
+ <p>Magic Skills</p>
127
+ <hr className="golden" />
128
+ </SkillSplitDiv>
129
+ <SkillProgressBar
130
+ skillName={'Ice'}
131
+ bgColor={'red'}
132
+ level={skill?.ice?.level || 0}
133
+ skillPoints={skill?.ice?.skillPoints || 0}
134
+ skillPointsToNextLevel={skill?.ice?.skillPointsToNextLevel || 0}
135
+ texturePath={'spell-icons/freeze.png'}
136
+ />
137
+ <SkillProgressBar
138
+ skillName={'Earth'}
139
+ bgColor={'red'}
140
+ level={skill?.earth?.level || 0}
141
+ skillPoints={skill?.earth?.skillPoints || 0}
142
+ skillPointsToNextLevel={skill?.earth?.skillPointsToNextLevel || 0}
143
+ texturePath={'spell-icons/earth-barrier.png'}
144
+ />
145
+ <SkillProgressBar
146
+ skillName={'Air'}
147
+ bgColor={'red'}
148
+ level={skill?.air?.level || 0}
149
+ skillPoints={skill?.air?.skillPoints || 0}
150
+ skillPointsToNextLevel={skill?.air?.skillPointsToNextLevel || 0}
151
+ texturePath={'spell-icons/poison-tornado.png'}
152
+ />
153
+ <SkillProgressBar
154
+ skillName={'Water'}
155
+ bgColor={'red'}
156
+ level={skill?.water?.level || 0}
157
+ skillPoints={skill?.water?.skillPoints || 0}
158
+ skillPointsToNextLevel={skill?.water?.skillPointsToNextLevel || 0}
159
+ texturePath={'spell-icons/tsunami.png'}
160
+ /> */}
161
+ </SkillsDraggableContainer>
162
+ );
163
+ };
164
+
165
+ const SkillsDraggableContainer = styled(DraggableContainer)`
166
+ border: 1px solid black;
167
+ width: 400px;
168
+ height: 90%;
169
+ overflow-y: scroll;
170
+ .DraggableContainer__TitleContainer-sc-184mpyl-2 {
171
+ width: auto;
172
+ height: auto;
173
+ }
174
+ `;
175
+
176
+ const SkillSplitDiv = styled.div`
177
+ width: 100%;
178
+ font-size: 11px;
179
+ hr {
180
+ margin: 0;
181
+ margin-bottom: 1rem;
182
+ padding: 0px;
183
+ }
184
+ p {
185
+ margin-bottom: 0px;
186
+ }
187
+ `;
188
+
189
+ const CloseButton = styled.div`
190
+ position: absolute;
191
+ top: 2px;
192
+ right: 2px;
193
+ color: white;
194
+ z-index: 22;
195
+ font-size: 0.7rem;
196
+ `;
@@ -1,11 +1,11 @@
1
- import React from 'react';
2
-
3
- export interface ITextArea
4
- extends React.DetailedHTMLProps<
5
- React.TextareaHTMLAttributes<HTMLTextAreaElement>,
6
- HTMLTextAreaElement
7
- > {}
8
-
9
- export const TextArea: React.FC<ITextArea> = ({ ...props }) => {
10
- return <textarea {...props} />;
11
- };
1
+ import React from 'react';
2
+
3
+ export interface ITextArea
4
+ extends React.DetailedHTMLProps<
5
+ React.TextareaHTMLAttributes<HTMLTextAreaElement>,
6
+ HTMLTextAreaElement
7
+ > {}
8
+
9
+ export const TextArea: React.FC<ITextArea> = ({ ...props }) => {
10
+ return <textarea {...props} />;
11
+ };
@@ -1,25 +1,25 @@
1
- /* eslint-disable react/require-default-props */
2
- import React from 'react';
3
- import styled from 'styled-components';
4
-
5
- interface IProps {
6
- maxLines?: number;
7
- children: React.ReactNode;
8
- }
9
-
10
- export const Truncate: React.FC<IProps> = ({ maxLines = 1, children }) => {
11
- return <Container maxLines={maxLines}>{children}</Container>;
12
- };
13
-
14
- interface IContainerProps {
15
- maxLines: number;
16
- }
17
-
18
- const Container = styled.div<IContainerProps>`
19
- display: -webkit-box;
20
- max-width: 100%;
21
- max-height: 100%;
22
- -webkit-line-clamp: ${props => props.maxLines};
23
- -webkit-box-orient: vertical;
24
- overflow: hidden;
25
- `;
1
+ /* eslint-disable react/require-default-props */
2
+ import React from 'react';
3
+ import styled from 'styled-components';
4
+
5
+ interface IProps {
6
+ maxLines?: number;
7
+ children: React.ReactNode;
8
+ }
9
+
10
+ export const Truncate: React.FC<IProps> = ({ maxLines = 1, children }) => {
11
+ return <Container maxLines={maxLines}>{children}</Container>;
12
+ };
13
+
14
+ interface IContainerProps {
15
+ maxLines: number;
16
+ }
17
+
18
+ const Container = styled.div<IContainerProps>`
19
+ display: -webkit-box;
20
+ max-width: 100%;
21
+ max-height: 100%;
22
+ -webkit-line-clamp: ${props => props.maxLines};
23
+ -webkit-box-orient: vertical;
24
+ overflow: hidden;
25
+ `;
@@ -1,16 +1,16 @@
1
- import styled from 'styled-components';
2
-
3
- interface IColumn {
4
- flex?: number;
5
- alignItems?: string;
6
- justifyContent?: string;
7
- flexWrap?: string;
8
- }
9
-
10
- export const Column = styled.div<IColumn>`
11
- flex: ${props => props.flex || 'auto'};
12
- display: flex;
13
- flex-wrap: ${props => props.flexWrap || 'nowrap'};
14
- align-items: ${props => props.alignItems || 'flex-start'};
15
- justify-content: ${props => props.justifyContent || 'flex-start'};
16
- `;
1
+ import styled from 'styled-components';
2
+
3
+ interface IColumn {
4
+ flex?: number;
5
+ alignItems?: string;
6
+ justifyContent?: string;
7
+ flexWrap?: string;
8
+ }
9
+
10
+ export const Column = styled.div<IColumn>`
11
+ flex: ${props => props.flex || 'auto'};
12
+ display: flex;
13
+ flex-wrap: ${props => props.flexWrap || 'nowrap'};
14
+ align-items: ${props => props.alignItems || 'flex-start'};
15
+ justify-content: ${props => props.justifyContent || 'flex-start'};
16
+ `;