@bolttech/ob-atoms-button 1.0.0

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.
package/README.md ADDED
@@ -0,0 +1,31 @@
1
+ # Bolttech Frontend UI Library
2
+
3
+ ## Create a new Library (Local Only):
4
+
5
+ ```bash
6
+ npx nx g @nx/react:lib ${lib_name}
7
+ ```
8
+
9
+ ## Create a new Publishable Library:
10
+
11
+ ```bash
12
+ npx nx g @nx/react:lib atoms/COMPONENT_NAME --publishable --importPath @bolttech/atoms-COMPONENT_NAME
13
+ ```
14
+
15
+ ## Create a new component inside library:
16
+
17
+ ```bash
18
+ npx nx g @nx/react:component ${component_name} --project ${lib_name}
19
+ ```
20
+
21
+ ## Add storybook to lib:
22
+
23
+ ```bash
24
+ npx nx g @nx/react:storybook-configuration atoms-COMPONENT_NAME
25
+ ```
26
+
27
+ ## Run Storybook
28
+
29
+ ```bash
30
+ npx nx run storybook:storybook
31
+ ```
package/index.cjs.css ADDED
@@ -0,0 +1,211 @@
1
+ /*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */
2
+ .button-container {
3
+ outline-width: var(--button-border-width-default);
4
+ outline-style: solid;
5
+ cursor: pointer;
6
+ &.full-width {
7
+ width: 100%;
8
+ justify-content: center;
9
+ }
10
+ &.sm {
11
+ border: 0;
12
+ gap: var(--button-sm-generic-gap);
13
+ border-radius: var(--button-sm-generic-border-radius);
14
+ padding: var(--button-sm-generic-padding-vertical) var(--button-sm-generic-padding-horizontal);
15
+ font-size: var(--button-sm-generic-text-label-fontsize);
16
+ font-weight: var(--button-sm-generic-text-label-fontweight);
17
+ letter-spacing: var(--button-sm-generic-text-label-letterspacing);
18
+ -webkit-text-decoration: var(--button-sm-generic-text-label-textdecoration);
19
+ text-decoration: var(--button-sm-generic-text-label-textdecoration);
20
+ text-indent: var(--button-sm-generic-text-label-paragraphspacing);
21
+ text-transform: var(--button-sm-generic-text-label-textcase);
22
+ &:is(.ghost) {
23
+ border: 0;
24
+ gap: var(--button-sm-ghost-gap);
25
+ border-radius: var(--button-sm-ghost-border-radius);
26
+ padding: var(--button-sm-ghost-padding-vertical) var(--button-sm-ghost-padding-horizontal);
27
+ font-size: var(--button-sm-ghost-text-label-fontsize);
28
+ font-weight: var(--button-sm-ghost-text-label-fontweight);
29
+ letter-spacing: var(--button-sm-ghost-text-label-letterspacing);
30
+ -webkit-text-decoration: var(--button-sm-ghost-text-label-textdecoration);
31
+ text-decoration: var(--button-sm-ghost-text-label-textdecoration);
32
+ text-indent: var(--button-sm-ghost-text-label-paragraphspacing);
33
+ text-transform: var(--button-sm-ghost-text-label-textcase);
34
+ }
35
+ & > img.bolttech-image {
36
+ width: var(--button-sm-icon-size);
37
+ }
38
+ & > span.material-symbols-sharp {
39
+ font-size: var(--button-sm-icon-size);
40
+ }
41
+ }
42
+ &.md {
43
+ border: 0;
44
+ gap: var(--button-md-generic-gap);
45
+ border-radius: var(--button-md-generic-border-radius);
46
+ padding: var(--button-md-generic-padding-vertical) var(--button-md-generic-padding-horizontal);
47
+ font-size: var(--button-md-generic-text-label-fontsize);
48
+ font-weight: var(--button-md-generic-text-label-fontweight);
49
+ letter-spacing: var(--button-md-generic-text-label-letterspacing);
50
+ -webkit-text-decoration: var(--button-md-generic-text-label-textdecoration);
51
+ text-decoration: var(--button-md-generic-text-label-textdecoration);
52
+ text-indent: var(--button-md-generic-text-label-paragraphspacing);
53
+ text-transform: var(--button-md-generic-text-label-textcase);
54
+ &:is(.ghost) {
55
+ border: 0;
56
+ gap: var(--button-md-ghost-gap);
57
+ border-radius: var(--button-md-ghost-border-radius);
58
+ padding: var(--button-md-ghost-padding-vertical) var(--button-md-ghost-padding-horizontal);
59
+ font-size: var(--button-md-ghost-text-label-fontsize);
60
+ font-weight: var(--button-md-ghost-text-label-fontweight);
61
+ letter-spacing: var(--button-md-ghost-text-label-letterspacing);
62
+ -webkit-text-decoration: var(--button-md-ghost-text-label-textdecoration);
63
+ text-decoration: var(--button-md-ghost-text-label-textdecoration);
64
+ text-indent: var(--button-md-ghost-text-label-paragraphspacing);
65
+ text-transform: var(--button-md-ghost-text-label-textcase);
66
+ }
67
+ & > img.bolttech-image {
68
+ width: var(--button-md-icon-size);
69
+ }
70
+ & > span.material-symbols-sharp {
71
+ font-size: var(--button-md-icon-size);
72
+ }
73
+ }
74
+ &.lg {
75
+ border: 0;
76
+ gap: var(--button-lg-generic-gap);
77
+ border-radius: var(--button-lg-generic-border-radius);
78
+ padding: var(--button-lg-generic-padding-vertical) var(--button-lg-generic-padding-horizontal);
79
+ font-size: var(--button-lg-generic-text-label-fontsize);
80
+ font-weight: var(--button-lg-generic-text-label-fontweight);
81
+ letter-spacing: var(--button-lg-generic-text-label-letterspacing);
82
+ -webkit-text-decoration: var(--button-lg-generic-text-label-textdecoration);
83
+ text-decoration: var(--button-lg-generic-text-label-textdecoration);
84
+ text-indent: var(--button-lg-generic-text-label-paragraphspacing);
85
+ text-transform: var(--button-lg-generic-text-label-textcase);
86
+ &:is(.ghost) {
87
+ border: 0;
88
+ gap: var(--button-lg-ghost-gap);
89
+ border-radius: var(--button-lg-ghost-border-radius);
90
+ padding: var(--button-lg-ghost-padding-vertical) var(--button-lg-ghost-padding-horizontal);
91
+ font-size: var(--button-lg-ghost-text-label-fontsize);
92
+ font-weight: var(--button-lg-ghost-text-label-fontweight);
93
+ letter-spacing: var(--button-lg-ghost-text-label-letterspacing);
94
+ -webkit-text-decoration: var(--button-lg-ghost-text-label-textdecoration);
95
+ text-decoration: var(--button-lg-ghost-text-label-textdecoration);
96
+ text-indent: var(--button-lg-ghost-text-label-paragraphspacing);
97
+ text-transform: var(--button-lg-ghost-text-label-textcase);
98
+ }
99
+ & > img.bolttech-image {
100
+ width: var(--button-lg-icon-size);
101
+ }
102
+ & > span.material-symbols-sharp {
103
+ font-size: var(--button-lg-icon-size);
104
+ }
105
+ }
106
+ &.alternative {
107
+ background-color: var(--button-alternative-container-color-default);
108
+ color: var(--button-alternative-text-color-default);
109
+ outline-color: var(--button-alternative-container-border-default);
110
+ &:hover {
111
+ background-color: var(--button-alternative-container-color-hover);
112
+ outline-color: var(--button-alternative-container-border-hover);
113
+ color: var(--button-alternative-text-color-hover);
114
+ }
115
+ &:active {
116
+ background-color: var(--button-alternative-container-color-active);
117
+ outline-color: var(--button-alternative-container-border-active);
118
+ color: var(--button-alternative-text-color-active);
119
+ }
120
+ &:disabled {
121
+ background-color: var(--button-alternative-container-color-disable);
122
+ outline-color: var(--button-alternative-container-border-disable);
123
+ color: var(--button-alternative-text-color-disable);
124
+ }
125
+ }
126
+ &.brand {
127
+ background-color: var(--button-brand-container-color-default);
128
+ color: var(--button-brand-text-color-default);
129
+ outline-color: var(--button-brand-container-border-default);
130
+ &:hover {
131
+ background-color: var(--button-brand-container-color-hover);
132
+ outline-color: var(--button-brand-container-border-hover);
133
+ color: var(--button-brand-text-color-hover);
134
+ }
135
+ &:active {
136
+ background-color: var(--button-brand-container-color-active);
137
+ outline-color: var(--button-brand-container-border-active);
138
+ color: var(--button-brand-text-color-active);
139
+ }
140
+ &:disabled {
141
+ background-color: var(--button-brand-container-color-disable);
142
+ outline-color: var(--button-brand-container-border-disable);
143
+ color: var(--button-brand-text-color-disable);
144
+ }
145
+ }
146
+ &.ghost {
147
+ background-color: var(--button-ghost-container-color-default);
148
+ color: var(--button-ghost-text-color-default);
149
+ outline-color: var(--button-ghost-container-border-default);
150
+ &:hover {
151
+ background-color: var(--button-ghost-container-color-hover);
152
+ outline-color: var(--button-ghost-container-border-hover);
153
+ color: var(--button-ghost-text-color-hover);
154
+ }
155
+ &:active {
156
+ background-color: var(--button-ghost-container-color-active);
157
+ outline-color: var(--button-ghost-container-border-active);
158
+ color: var(--button-ghost-text-color-active);
159
+ }
160
+ &:disabled {
161
+ background-color: var(--button-ghost-container-color-disable);
162
+ outline-color: var(--button-ghost-container-border-disable);
163
+ color: var(--button-ghost-text-color-disable);
164
+ }
165
+ }
166
+ &.outline {
167
+ background-color: var(--button-outline-container-color-default);
168
+ color: var(--button-outline-text-color-default);
169
+ outline-color: var(--button-outline-container-border-default);
170
+ &:hover {
171
+ background-color: var(--button-outline-container-color-hover);
172
+ outline-color: var(--button-outline-container-border-hover);
173
+ color: var(--button-outline-text-color-hover);
174
+ }
175
+ &:active {
176
+ background-color: var(--button-outline-container-color-active);
177
+ outline-color: var(--button-outline-container-border-active);
178
+ color: var(--button-outline-text-color-active);
179
+ }
180
+ &:disabled {
181
+ background-color: var(--button-outline-container-color-disable);
182
+ outline-color: var(--button-outline-container-border-disable);
183
+ color: var(--button-outline-text-color-disable);
184
+ }
185
+ }
186
+ &.transaction {
187
+ background-color: var(--button-transaction-container-color-default);
188
+ color: var(--button-transaction-text-color-default);
189
+ outline-color: var(--button-transaction-container-border-default);
190
+ &:hover {
191
+ background-color: var(--button-transaction-container-color-hover);
192
+ outline-color: var(--button-transaction-container-border-hover);
193
+ color: var(--button-transaction-text-color-hover);
194
+ }
195
+ &:active {
196
+ background-color: var(--button-transaction-container-color-active);
197
+ outline-color: var(--button-transaction-container-border-active);
198
+ color: var(--button-transaction-text-color-active);
199
+ }
200
+ &:disabled {
201
+ background-color: var(--button-transaction-container-color-disable);
202
+ outline-color: var(--button-transaction-container-border-disable);
203
+ color: var(--button-transaction-text-color-disable);
204
+ }
205
+ }
206
+ &:focus-visible {
207
+ outline: 2px solid #000;
208
+ outline-offset: 2px;
209
+ }
210
+ }
211
+