@purpur/library 9.0.7 → 9.0.8
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/CHANGELOG.json +12 -0
- package/CHANGELOG.md +8 -1
- package/dist/{autocomplete-6qSqK3SI.js → autocomplete-B_OBQM2h.js} +2 -2
- package/dist/{autocomplete-6qSqK3SI.js.map → autocomplete-B_OBQM2h.js.map} +1 -1
- package/dist/{autocomplete-B4dZx9zF.mjs → autocomplete-DJ3zbA0m.mjs} +2 -2
- package/dist/{autocomplete-B4dZx9zF.mjs.map → autocomplete-DJ3zbA0m.mjs.map} +1 -1
- package/dist/autocomplete.cjs.js +1 -1
- package/dist/autocomplete.es.js +1 -1
- package/dist/button-BxdChrq-.js +2 -0
- package/dist/button-BxdChrq-.js.map +1 -0
- package/dist/button-D-BBdNhd.mjs +105 -0
- package/dist/button-D-BBdNhd.mjs.map +1 -0
- package/dist/button.cjs.js +1 -1
- package/dist/button.es.js +1 -1
- package/dist/{calendar-vALLklKV.mjs → calendar-9p_aA7KY.mjs} +2 -2
- package/dist/{calendar-vALLklKV.mjs.map → calendar-9p_aA7KY.mjs.map} +1 -1
- package/dist/{calendar-CxkJMONO.js → calendar-BSdvi_DA.js} +2 -2
- package/dist/{calendar-CxkJMONO.js.map → calendar-BSdvi_DA.js.map} +1 -1
- package/dist/calendar.cjs.js +1 -1
- package/dist/calendar.es.js +1 -1
- package/dist/components/button/src/button.d.ts +2 -1
- package/dist/components/button/src/button.d.ts.map +1 -1
- package/dist/{date-field-CTJB8O0e.mjs → date-field-Ch2lM7-P.mjs} +2 -2
- package/dist/{date-field-CTJB8O0e.mjs.map → date-field-Ch2lM7-P.mjs.map} +1 -1
- package/dist/{date-field-CORqon6B.js → date-field-DTI5mQkg.js} +2 -2
- package/dist/{date-field-CORqon6B.js.map → date-field-DTI5mQkg.js.map} +1 -1
- package/dist/date-field.cjs.js +1 -1
- package/dist/date-field.es.js +1 -1
- package/dist/{date-picker-CJcIJ5VL.mjs → date-picker-Bt3IaH23.mjs} +4 -4
- package/dist/{date-picker-CJcIJ5VL.mjs.map → date-picker-Bt3IaH23.mjs.map} +1 -1
- package/dist/{date-picker-Dv3W05Hf.js → date-picker-Dk39IXG5.js} +2 -2
- package/dist/{date-picker-Dv3W05Hf.js.map → date-picker-Dk39IXG5.js.map} +1 -1
- package/dist/date-picker.cjs.js +1 -1
- package/dist/date-picker.es.js +1 -1
- package/dist/{drawer-DSFZ61OH.mjs → drawer-B6j8nfAY.mjs} +2 -2
- package/dist/{drawer-DSFZ61OH.mjs.map → drawer-B6j8nfAY.mjs.map} +1 -1
- package/dist/{drawer-Ce5LNpU2.js → drawer-CJsLdd2x.js} +2 -2
- package/dist/{drawer-Ce5LNpU2.js.map → drawer-CJsLdd2x.js.map} +1 -1
- package/dist/drawer.cjs.js +1 -1
- package/dist/drawer.es.js +1 -1
- package/dist/{hero-banner-CkSSlxTW.mjs → hero-banner-B5HKmkXc.mjs} +2 -2
- package/dist/{hero-banner-CkSSlxTW.mjs.map → hero-banner-B5HKmkXc.mjs.map} +1 -1
- package/dist/{hero-banner-JFaqW20R.js → hero-banner-OnNSuxNT.js} +2 -2
- package/dist/{hero-banner-JFaqW20R.js.map → hero-banner-OnNSuxNT.js.map} +1 -1
- package/dist/hero-banner.cjs.js +1 -1
- package/dist/hero-banner.es.js +1 -1
- package/dist/library.cjs.js +1 -1
- package/dist/library.es.js +17 -17
- package/dist/{modal-2ymCXTup.mjs → modal-B1eJu9HN.mjs} +2 -2
- package/dist/{modal-2ymCXTup.mjs.map → modal-B1eJu9HN.mjs.map} +1 -1
- package/dist/{modal-CXi2xez5.js → modal-CQiJ98iI.js} +2 -2
- package/dist/{modal-CXi2xez5.js.map → modal-CQiJ98iI.js.map} +1 -1
- package/dist/modal.cjs.js +1 -1
- package/dist/modal.es.js +1 -1
- package/dist/{notification-BFSOuDp8.mjs → notification-BtcM7Ndu.mjs} +2 -2
- package/dist/{notification-BFSOuDp8.mjs.map → notification-BtcM7Ndu.mjs.map} +1 -1
- package/dist/{notification-DdnI2rOh.js → notification-Dsg3Vzfi.js} +2 -2
- package/dist/{notification-DdnI2rOh.js.map → notification-Dsg3Vzfi.js.map} +1 -1
- package/dist/{notification-banner-CT4ew8IQ.js → notification-banner-B0CUuKZn.js} +2 -2
- package/dist/{notification-banner-CT4ew8IQ.js.map → notification-banner-B0CUuKZn.js.map} +1 -1
- package/dist/{notification-banner-CQvBezAL.mjs → notification-banner-CbKcE7o4.mjs} +2 -2
- package/dist/{notification-banner-CQvBezAL.mjs.map → notification-banner-CbKcE7o4.mjs.map} +1 -1
- package/dist/notification-banner.cjs.js +1 -1
- package/dist/notification-banner.es.js +1 -1
- package/dist/notification.cjs.js +1 -1
- package/dist/notification.es.js +1 -1
- package/dist/{popover-ZeQKmyEb.mjs → popover-D3b2gHm-.mjs} +2 -2
- package/dist/{popover-ZeQKmyEb.mjs.map → popover-D3b2gHm-.mjs.map} +1 -1
- package/dist/{popover-D3qWbbU4.js → popover-D6k4-oO1.js} +2 -2
- package/dist/{popover-D3qWbbU4.js.map → popover-D6k4-oO1.js.map} +1 -1
- package/dist/popover.cjs.js +1 -1
- package/dist/popover.es.js +1 -1
- package/dist/purpur.css +1 -1
- package/dist/{quantity-selector-CjSAaj7d.js → quantity-selector-Bc-4Dnpc.js} +2 -2
- package/dist/{quantity-selector-CjSAaj7d.js.map → quantity-selector-Bc-4Dnpc.js.map} +1 -1
- package/dist/{quantity-selector-HvyYSKah.mjs → quantity-selector-Djf8APeL.mjs} +3 -3
- package/dist/{quantity-selector-HvyYSKah.mjs.map → quantity-selector-Djf8APeL.mjs.map} +1 -1
- package/dist/quantity-selector.cjs.js +1 -1
- package/dist/quantity-selector.es.js +1 -1
- package/dist/{search-field-CanOlkIY.js → search-field-0CBoxcNH.js} +2 -2
- package/dist/{search-field-CanOlkIY.js.map → search-field-0CBoxcNH.js.map} +1 -1
- package/dist/{search-field-BOmCVr5b.mjs → search-field-aP_i6Nr0.mjs} +3 -3
- package/dist/{search-field-BOmCVr5b.mjs.map → search-field-aP_i6Nr0.mjs.map} +1 -1
- package/dist/search-field.cjs.js +1 -1
- package/dist/search-field.es.js +1 -1
- package/dist/{stepper-DYjJgEHL.js → stepper-BaoOY4Ea.js} +2 -2
- package/dist/{stepper-DYjJgEHL.js.map → stepper-BaoOY4Ea.js.map} +1 -1
- package/dist/{stepper-D7T0wed7.mjs → stepper-CTdGj87I.mjs} +3 -3
- package/dist/{stepper-D7T0wed7.mjs.map → stepper-CTdGj87I.mjs.map} +1 -1
- package/dist/stepper.cjs.js +1 -1
- package/dist/stepper.es.js +1 -1
- package/dist/{table-B4pts_r4.mjs → table-D7qthqj_.mjs} +5 -5
- package/dist/{table-B4pts_r4.mjs.map → table-D7qthqj_.mjs.map} +1 -1
- package/dist/{table-Bv_BISXV.js → table-TdOPMFoP.js} +2 -2
- package/dist/{table-Bv_BISXV.js.map → table-TdOPMFoP.js.map} +1 -1
- package/dist/table.cjs.js +1 -1
- package/dist/table.es.js +1 -1
- package/dist/{text-field-5rIuW8gc.mjs → text-field-9zPmL99g.mjs} +2 -2
- package/dist/{text-field-5rIuW8gc.mjs.map → text-field-9zPmL99g.mjs.map} +1 -1
- package/dist/{text-field-Xt6T3zjO.js → text-field-CKCwxTJX.js} +2 -2
- package/dist/{text-field-Xt6T3zjO.js.map → text-field-CKCwxTJX.js.map} +1 -1
- package/dist/text-field.cjs.js +1 -1
- package/dist/text-field.es.js +1 -1
- package/dist/{tooltip-DkwyNxrQ.mjs → tooltip-BtGtu3ph.mjs} +2 -2
- package/dist/{tooltip-DkwyNxrQ.mjs.map → tooltip-BtGtu3ph.mjs.map} +1 -1
- package/dist/{tooltip-svlZkXBs.js → tooltip-eUP35j3v.js} +2 -2
- package/dist/{tooltip-svlZkXBs.js.map → tooltip-eUP35j3v.js.map} +1 -1
- package/dist/tooltip.cjs.js +1 -1
- package/dist/tooltip.es.js +1 -1
- package/package.json +25 -25
- package/dist/button-BfYKNBmC.mjs +0 -102
- package/dist/button-BfYKNBmC.mjs.map +0 -1
- package/dist/button-DDYGuqZ0.js +0 -2
- package/dist/button-DDYGuqZ0.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@purpur/library",
|
|
3
|
-
"version": "9.0.
|
|
3
|
+
"version": "9.0.8",
|
|
4
4
|
"license": "AGPL-3.0-only",
|
|
5
5
|
"sideEffects": [
|
|
6
6
|
"*.css",
|
|
@@ -106,71 +106,71 @@
|
|
|
106
106
|
"vite-plugin-static-copy": "~3.1.4",
|
|
107
107
|
"vite": "^7.2.2",
|
|
108
108
|
"shx": "~0.4.0",
|
|
109
|
+
"@purpur/accordion": "8.21.0",
|
|
109
110
|
"@purpur/action": "8.21.0",
|
|
110
|
-
"@purpur/alert-badge": "8.21.0",
|
|
111
111
|
"@purpur/badge": "8.21.0",
|
|
112
|
+
"@purpur/alert-badge": "8.21.0",
|
|
112
113
|
"@purpur/autocomplete": "8.21.0",
|
|
113
|
-
"@purpur/accordion": "8.21.0",
|
|
114
114
|
"@purpur/breadcrumbs": "8.21.0",
|
|
115
|
-
"@purpur/calendar": "8.21.0",
|
|
116
|
-
"@purpur/button": "8.21.0",
|
|
117
115
|
"@purpur/card": "8.21.0",
|
|
116
|
+
"@purpur/button": "8.21.0",
|
|
117
|
+
"@purpur/calendar": "8.21.0",
|
|
118
118
|
"@purpur/checkbox": "8.21.0",
|
|
119
119
|
"@purpur/chip-group": "8.21.0",
|
|
120
120
|
"@purpur/color-dot": "8.21.0",
|
|
121
|
-
"@purpur/container": "8.21.0",
|
|
122
121
|
"@purpur/common-types": "8.21.0",
|
|
123
122
|
"@purpur/component-rig": "1.0.0",
|
|
124
|
-
"@purpur/
|
|
123
|
+
"@purpur/container": "8.21.0",
|
|
125
124
|
"@purpur/countdown": "8.21.0",
|
|
126
125
|
"@purpur/counter-badge": "8.21.0",
|
|
126
|
+
"@purpur/content-block": "8.21.0",
|
|
127
127
|
"@purpur/cta-link": "8.21.0",
|
|
128
|
-
"@purpur/date-field": "8.21.0",
|
|
129
128
|
"@purpur/date-picker": "8.21.0",
|
|
129
|
+
"@purpur/date-field": "8.21.0",
|
|
130
130
|
"@purpur/dismissable-chip-group": "8.21.0",
|
|
131
|
+
"@purpur/field-helper-text": "8.21.0",
|
|
131
132
|
"@purpur/drawer": "8.21.0",
|
|
132
133
|
"@purpur/field-error-text": "8.21.0",
|
|
133
|
-
"@purpur/field-helper-text": "8.21.0",
|
|
134
134
|
"@purpur/footer": "8.21.0",
|
|
135
135
|
"@purpur/heading": "8.21.0",
|
|
136
|
-
"@purpur/hero-banner": "8.21.0",
|
|
137
136
|
"@purpur/grid": "8.21.0",
|
|
138
137
|
"@purpur/icon": "8.21.0",
|
|
138
|
+
"@purpur/hero-banner": "8.21.0",
|
|
139
139
|
"@purpur/illustrative-icon": "8.21.0",
|
|
140
|
-
"@purpur/label": "8.21.0",
|
|
141
140
|
"@purpur/link": "8.21.0",
|
|
142
|
-
"@purpur/
|
|
141
|
+
"@purpur/label": "8.21.0",
|
|
143
142
|
"@purpur/listbox": "8.21.0",
|
|
144
|
-
"@purpur/
|
|
145
|
-
"@purpur/notification": "8.21.0",
|
|
143
|
+
"@purpur/logo": "8.21.0",
|
|
146
144
|
"@purpur/notification-banner": "8.21.0",
|
|
145
|
+
"@purpur/notification": "8.21.0",
|
|
146
|
+
"@purpur/modal": "8.21.0",
|
|
147
|
+
"@purpur/paragraph": "8.21.0",
|
|
147
148
|
"@purpur/pagination": "8.21.0",
|
|
149
|
+
"@purpur/product-card": "8.21.0",
|
|
148
150
|
"@purpur/password-field": "8.21.0",
|
|
149
|
-
"@purpur/paragraph": "8.21.0",
|
|
150
151
|
"@purpur/popover": "8.21.0",
|
|
151
|
-
"@purpur/product-card": "8.21.0",
|
|
152
|
-
"@purpur/promotion-card": "8.21.0",
|
|
153
152
|
"@purpur/quantity-selector": "8.21.0",
|
|
153
|
+
"@purpur/promotion-card": "8.21.0",
|
|
154
154
|
"@purpur/radio-button-group": "8.21.0",
|
|
155
|
+
"@purpur/radio-card-group": "8.21.0",
|
|
155
156
|
"@purpur/search-field": "8.21.0",
|
|
156
157
|
"@purpur/rich-text": "8.21.0",
|
|
157
|
-
"@purpur/radio-card-group": "8.21.0",
|
|
158
|
-
"@purpur/select": "8.21.0",
|
|
159
158
|
"@purpur/skeleton": "8.21.0",
|
|
160
|
-
"@purpur/slider": "8.21.0",
|
|
161
159
|
"@purpur/spacer": "8.21.0",
|
|
162
160
|
"@purpur/spinner": "8.21.0",
|
|
161
|
+
"@purpur/select": "8.21.0",
|
|
162
|
+
"@purpur/slider": "8.21.0",
|
|
163
|
+
"@purpur/stepper": "8.21.0",
|
|
163
164
|
"@purpur/table": "8.21.0",
|
|
164
|
-
"@purpur/text-area": "8.21.0",
|
|
165
165
|
"@purpur/tabs": "8.21.0",
|
|
166
|
-
"@purpur/
|
|
166
|
+
"@purpur/text-area": "8.21.0",
|
|
167
167
|
"@purpur/text-field": "8.21.0",
|
|
168
|
-
"@purpur/theme": "8.21.0",
|
|
169
168
|
"@purpur/text-spacing": "8.21.0",
|
|
170
169
|
"@purpur/toggle": "8.21.0",
|
|
170
|
+
"@purpur/theme": "8.21.0",
|
|
171
|
+
"@purpur/tokens": "8.21.0",
|
|
171
172
|
"@purpur/tooltip": "8.21.0",
|
|
172
|
-
"@purpur/visually-hidden": "8.21.0"
|
|
173
|
-
"@purpur/tokens": "8.21.0"
|
|
173
|
+
"@purpur/visually-hidden": "8.21.0"
|
|
174
174
|
},
|
|
175
175
|
"peerDependencies": {
|
|
176
176
|
"@types/react": "^18 || ^19",
|
package/dist/button-BfYKNBmC.mjs
DELETED
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { jsxs as y, jsx as g } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as T } from "react";
|
|
3
|
-
import { a as $ } from "./spinner-DRQN6YdK.mjs";
|
|
4
|
-
import { c as E } from "./bind-CU-R61T-.mjs";
|
|
5
|
-
const N = {
|
|
6
|
-
PRIMARY: "primary",
|
|
7
|
-
SECONDARY: "secondary",
|
|
8
|
-
EXPRESSIVE: "expressive"
|
|
9
|
-
}, R = {
|
|
10
|
-
LG: "lg"
|
|
11
|
-
}, S = {
|
|
12
|
-
"purpur-button": "_purpur-button_m4udv_1",
|
|
13
|
-
"purpur-button--xs": "_purpur-button--xs_m4udv_22",
|
|
14
|
-
"purpur-button--icon-only": "_purpur-button--icon-only_m4udv_25",
|
|
15
|
-
"purpur-button--sm": "_purpur-button--sm_m4udv_28",
|
|
16
|
-
"purpur-button--md": "_purpur-button--md_m4udv_34",
|
|
17
|
-
"purpur-button--lg": "_purpur-button--lg_m4udv_40",
|
|
18
|
-
"purpur-button--full-width": "_purpur-button--full-width_m4udv_46",
|
|
19
|
-
"purpur-button--primary": "_purpur-button--primary_m4udv_64",
|
|
20
|
-
"purpur-button--disabled": "_purpur-button--disabled_m4udv_68",
|
|
21
|
-
"purpur-button--primary-negative": "_purpur-button--primary-negative_m4udv_74",
|
|
22
|
-
"purpur-button--secondary": "_purpur-button--secondary_m4udv_86",
|
|
23
|
-
"purpur-button--secondary-negative": "_purpur-button--secondary-negative_m4udv_97",
|
|
24
|
-
"purpur-button--expressive": "_purpur-button--expressive_m4udv_108",
|
|
25
|
-
"purpur-button--expressive-negative": "_purpur-button--expressive-negative_m4udv_118",
|
|
26
|
-
"purpur-button--negative": "_purpur-button--negative_m4udv_130",
|
|
27
|
-
"purpur-button--destructive": "_purpur-button--destructive_m4udv_137",
|
|
28
|
-
"purpur-button--destructive-negative": "_purpur-button--destructive-negative_m4udv_147",
|
|
29
|
-
"purpur-button--text": "_purpur-button--text_m4udv_157",
|
|
30
|
-
"purpur-button--text-negative": "_purpur-button--text-negative_m4udv_157",
|
|
31
|
-
"purpur-button__spinner": "_purpur-button__spinner_m4udv_202"
|
|
32
|
-
}, A = {
|
|
33
|
-
...N,
|
|
34
|
-
DESTRUCTIVE: "destructive",
|
|
35
|
-
TEXT: "text"
|
|
36
|
-
}, C = Object.values(A), a = E.bind(S), u = "purpur-button", j = ["button", "submit", "reset"], B = T(
|
|
37
|
-
({
|
|
38
|
-
children: d,
|
|
39
|
-
className: m,
|
|
40
|
-
disabled: r = !1,
|
|
41
|
-
fullWidth: v = !1,
|
|
42
|
-
iconOnly: n,
|
|
43
|
-
loading: t = !1,
|
|
44
|
-
negative: p = !1,
|
|
45
|
-
onClick: o,
|
|
46
|
-
size: s = "md",
|
|
47
|
-
variant: e,
|
|
48
|
-
type: c = "button",
|
|
49
|
-
..._
|
|
50
|
-
}, l) => {
|
|
51
|
-
if (n && e === "destructive")
|
|
52
|
-
return null;
|
|
53
|
-
const x = a(
|
|
54
|
-
[
|
|
55
|
-
u,
|
|
56
|
-
`${u}--${p ? `${e}-negative` : e}`,
|
|
57
|
-
`${u}--${s}`
|
|
58
|
-
],
|
|
59
|
-
{
|
|
60
|
-
[`${u}--icon-only`]: n,
|
|
61
|
-
[`${u}--negative`]: p,
|
|
62
|
-
[`${u}--full-width`]: v,
|
|
63
|
-
[`${u}--disabled`]: r || t
|
|
64
|
-
},
|
|
65
|
-
m
|
|
66
|
-
), f = (i) => {
|
|
67
|
-
r || t ? i.preventDefault() : o && o(i);
|
|
68
|
-
}, b = !!_["aria-disabled"] || r || t;
|
|
69
|
-
return /* @__PURE__ */ y(
|
|
70
|
-
"button",
|
|
71
|
-
{
|
|
72
|
-
className: x,
|
|
73
|
-
type: c,
|
|
74
|
-
ref: l,
|
|
75
|
-
"aria-disabled": b,
|
|
76
|
-
onClick: f,
|
|
77
|
-
..._,
|
|
78
|
-
children: [
|
|
79
|
-
t && /* @__PURE__ */ g(
|
|
80
|
-
$,
|
|
81
|
-
{
|
|
82
|
-
size: s === R.LG ? "xs" : "xxs",
|
|
83
|
-
negative: p,
|
|
84
|
-
disabled: b,
|
|
85
|
-
className: a(`${u}__spinner`)
|
|
86
|
-
}
|
|
87
|
-
),
|
|
88
|
-
" ",
|
|
89
|
-
d
|
|
90
|
-
]
|
|
91
|
-
}
|
|
92
|
-
);
|
|
93
|
-
}
|
|
94
|
-
);
|
|
95
|
-
B.displayName = "Button";
|
|
96
|
-
export {
|
|
97
|
-
j as B,
|
|
98
|
-
A as a,
|
|
99
|
-
B as b,
|
|
100
|
-
C as c
|
|
101
|
-
};
|
|
102
|
-
//# sourceMappingURL=button-BfYKNBmC.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"button-BfYKNBmC.mjs","sources":["../../action/src/action.tsx","../../../components/button/src/button.tsx"],"sourcesContent":["import { type ReactNode } from \"react\";\n\nexport const VARIANT = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n EXPRESSIVE: \"expressive\",\n} as const;\n\nexport const variants = Object.values(VARIANT);\nexport type Variant = (typeof VARIANT)[keyof typeof VARIANT];\n\nexport const SIZE = {\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\",\n} as const;\n\nexport const sizes = Object.values(SIZE);\nexport type Size = (typeof SIZE)[keyof typeof SIZE];\n\ntype DefaultProps<TVariant, T = object> = {\n [\"data-testid\"]?: string;\n children?: ReactNode;\n className?: string;\n fullWidth?: boolean;\n negative?: boolean;\n size?: Size;\n variant: TVariant | Variant;\n} & T;\n\nexport type UnionParams<TVariant> =\n | DefaultProps<TVariant, { iconOnly: boolean; [\"aria-label\"]: string }>\n | DefaultProps<TVariant, { [\"aria-label\"]?: string }>;\n\ntype UnionKeys<T> = T extends T ? keyof T : never;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype StrictUnionHelper<T, TAll> = T extends any\n ? T & Partial<Record<Exclude<UnionKeys<TAll>, keyof T>, never>>\n : never;\n\ntype StrictUnion<T> = StrictUnionHelper<T, T>;\n\nexport type ActionProps<TVariant extends string = Variant> = StrictUnion<UnionParams<TVariant>>;\n","import React, { type ButtonHTMLAttributes, forwardRef, type MouseEvent } from \"react\";\nimport { type ActionProps, SIZE, VARIANT } from \"@purpur/action\";\nimport type { BaseProps } from \"@purpur/common-types\";\nimport { Spinner } from \"@purpur/spinner\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./button.module.scss\";\n\nexport const BUTTON_VARIANT = {\n ...VARIANT,\n DESTRUCTIVE: \"destructive\",\n TEXT: \"text\",\n} as const;\n\nexport const buttonVariants = Object.values(BUTTON_VARIANT);\nexport type ButtonVariant = (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-button\";\n\ntype ButtonType = Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"type\">[\"type\"];\nexport const BUTTON_TYPES: ButtonType[] = [\"button\", \"submit\", \"reset\"] as const;\n\nexport type ButtonProps = ActionProps<ButtonVariant> & BaseProps<\"button\"> & { loading?: boolean };\n\nexport const Button = forwardRef<\n HTMLButtonElement,\n Omit<ButtonProps, \"type\"> & { type?: ButtonType }\n>(\n (\n {\n children,\n className,\n disabled = false,\n fullWidth = false,\n iconOnly,\n loading = false,\n negative = false,\n onClick,\n size = \"md\",\n variant,\n type = \"button\",\n ...props\n },\n ref\n ) => {\n if (iconOnly && variant === \"destructive\") {\n return null;\n }\n\n const classes = cx(\n [\n rootClassName,\n `${rootClassName}--${negative ? `${variant}-negative` : variant}`,\n `${rootClassName}--${size}`,\n ],\n {\n [`${rootClassName}--icon-only`]: iconOnly,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--disabled`]: disabled || loading,\n },\n className\n );\n\n const handleClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) {\n e.preventDefault();\n } else if (onClick) {\n onClick(e);\n }\n };\n\n const _disabled = Boolean(props[\"aria-disabled\"]) || disabled || loading;\n\n return (\n <button\n className={classes}\n type={type}\n ref={ref}\n aria-disabled={_disabled}\n onClick={handleClick}\n {...props}\n >\n {loading && (\n <Spinner\n size={size === SIZE.LG ? \"xs\" : \"xxs\"}\n negative={negative}\n disabled={_disabled}\n className={cx(`${rootClassName}__spinner`)}\n />\n )}{\" \"}\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["VARIANT","SIZE","BUTTON_VARIANT","buttonVariants","cx","c","styles","rootClassName","BUTTON_TYPES","Button","forwardRef","children","className","disabled","fullWidth","iconOnly","loading","negative","onClick","size","variant","type","props","ref","classes","handleClick","e","_disabled","jsxs","jsx","Spinner"],"mappings":";;;;AAEO,MAAMA,IAAU;AAAA,EACrB,SAAS;AAAA,EACT,WAAW;AAAA,EACX,YAAY;AACd,GAKaC,IAAO;AAAA,EAIlB,IAAI;AACN;;;;;;;;;;;;;;;;;;;;;GCRaC,IAAiB;AAAA,EAC5B,GAAGF;AAAA,EACH,aAAa;AAAA,EACb,MAAM;AACR,GAEaG,IAAiB,OAAO,OAAOD,CAAc,GAGpDE,IAAKC,EAAE,KAAKC,CAAM,GAClBC,IAAgB,iBAGTC,IAA6B,CAAC,UAAU,UAAU,OAAO,GAIzDC,IAASC;AAAA,EAIpB,CACE;AAAA,IACE,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,WAAAC,IAAY;AAAA,IACZ,UAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,UAAAC,IAAW;AAAA,IACX,SAAAC;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,SAAAC;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,GAAGC;AAAA,EAAA,GAELC,MACG;AACH,QAAIR,KAAYK,MAAY;AAC1B,aAAO;AAGT,UAAMI,IAAUpB;AAAA,MACd;AAAA,QACEG;AAAA,QACA,GAAGA,CAAa,KAAKU,IAAW,GAAGG,CAAO,cAAcA,CAAO;AAAA,QAC/D,GAAGb,CAAa,KAAKY,CAAI;AAAA,MAAA;AAAA,MAE3B;AAAA,QACE,CAAC,GAAGZ,CAAa,aAAa,GAAGQ;AAAA,QACjC,CAAC,GAAGR,CAAa,YAAY,GAAGU;AAAA,QAChC,CAAC,GAAGV,CAAa,cAAc,GAAGO;AAAA,QAClC,CAAC,GAAGP,CAAa,YAAY,GAAGM,KAAYG;AAAA,MAAA;AAAA,MAE9CJ;AAAA,IAAA,GAGIa,IAAc,CAACC,MAAqC;AACxD,MAAIb,KAAYG,IACdU,EAAE,eAAA,IACOR,KACTA,EAAQQ,CAAC;AAAA,IAEb,GAEMC,IAAY,EAAQL,EAAM,eAAe,KAAMT,KAAYG;AAEjE,WACE,gBAAAY;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWJ;AAAA,QACX,MAAAH;AAAA,QACA,KAAAE;AAAA,QACA,iBAAeI;AAAA,QACf,SAASF;AAAA,QACR,GAAGH;AAAA,QAEH,UAAA;AAAA,UAAAN,KACC,gBAAAa;AAAA,YAACC;AAAA,YAAA;AAAA,cACC,MAAMX,MAASlB,EAAK,KAAK,OAAO;AAAA,cAChC,UAAAgB;AAAA,cACA,UAAUU;AAAA,cACV,WAAWvB,EAAG,GAAGG,CAAa,WAAW;AAAA,YAAA;AAAA,UAAA;AAAA,UAE1C;AAAA,UACFI;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAGP;AACF;AAEAF,EAAO,cAAc;"}
|
package/dist/button-DDYGuqZ0.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const d=require("react/jsx-runtime"),N=require("react"),R=require("./spinner-tKunS_o-.js"),E=require("./bind-DeUYJ6m9.js"),$={PRIMARY:"primary",SECONDARY:"secondary",EXPRESSIVE:"expressive"},A={LG:"lg"},B={"purpur-button":"_purpur-button_m4udv_1","purpur-button--xs":"_purpur-button--xs_m4udv_22","purpur-button--icon-only":"_purpur-button--icon-only_m4udv_25","purpur-button--sm":"_purpur-button--sm_m4udv_28","purpur-button--md":"_purpur-button--md_m4udv_34","purpur-button--lg":"_purpur-button--lg_m4udv_40","purpur-button--full-width":"_purpur-button--full-width_m4udv_46","purpur-button--primary":"_purpur-button--primary_m4udv_64","purpur-button--disabled":"_purpur-button--disabled_m4udv_68","purpur-button--primary-negative":"_purpur-button--primary-negative_m4udv_74","purpur-button--secondary":"_purpur-button--secondary_m4udv_86","purpur-button--secondary-negative":"_purpur-button--secondary-negative_m4udv_97","purpur-button--expressive":"_purpur-button--expressive_m4udv_108","purpur-button--expressive-negative":"_purpur-button--expressive-negative_m4udv_118","purpur-button--negative":"_purpur-button--negative_m4udv_130","purpur-button--destructive":"_purpur-button--destructive_m4udv_137","purpur-button--destructive-negative":"_purpur-button--destructive-negative_m4udv_147","purpur-button--text":"_purpur-button--text_m4udv_157","purpur-button--text-negative":"_purpur-button--text-negative_m4udv_157","purpur-button__spinner":"_purpur-button__spinner_m4udv_202"},v={...$,DESTRUCTIVE:"destructive",TEXT:"text"},S=Object.values(v),a=E.c.bind(B),u="purpur-button",I=["button","submit","reset"],c=N.forwardRef(({children:m,className:l,disabled:r=!1,fullWidth:x=!1,iconOnly:p,loading:t=!1,negative:e=!1,onClick:s,size:o="md",variant:n,type:T="button",..._},y)=>{if(p&&n==="destructive")return null;const f=a([u,`${u}--${e?`${n}-negative`:n}`,`${u}--${o}`],{[`${u}--icon-only`]:p,[`${u}--negative`]:e,[`${u}--full-width`]:x,[`${u}--disabled`]:r||t},l),g=b=>{r||t?b.preventDefault():s&&s(b)},i=!!_["aria-disabled"]||r||t;return d.jsxs("button",{className:f,type:T,ref:y,"aria-disabled":i,onClick:g,..._,children:[t&&d.jsx(R.Spinner,{size:o===A.LG?"xs":"xxs",negative:e,disabled:i,className:a(`${u}__spinner`)})," ",m]})});c.displayName="Button";exports.BUTTON_TYPES=I;exports.BUTTON_VARIANT=v;exports.Button=c;exports.buttonVariants=S;
|
|
2
|
-
//# sourceMappingURL=button-DDYGuqZ0.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"button-DDYGuqZ0.js","sources":["../../action/src/action.tsx","../../../components/button/src/button.tsx"],"sourcesContent":["import { type ReactNode } from \"react\";\n\nexport const VARIANT = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n EXPRESSIVE: \"expressive\",\n} as const;\n\nexport const variants = Object.values(VARIANT);\nexport type Variant = (typeof VARIANT)[keyof typeof VARIANT];\n\nexport const SIZE = {\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\",\n} as const;\n\nexport const sizes = Object.values(SIZE);\nexport type Size = (typeof SIZE)[keyof typeof SIZE];\n\ntype DefaultProps<TVariant, T = object> = {\n [\"data-testid\"]?: string;\n children?: ReactNode;\n className?: string;\n fullWidth?: boolean;\n negative?: boolean;\n size?: Size;\n variant: TVariant | Variant;\n} & T;\n\nexport type UnionParams<TVariant> =\n | DefaultProps<TVariant, { iconOnly: boolean; [\"aria-label\"]: string }>\n | DefaultProps<TVariant, { [\"aria-label\"]?: string }>;\n\ntype UnionKeys<T> = T extends T ? keyof T : never;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype StrictUnionHelper<T, TAll> = T extends any\n ? T & Partial<Record<Exclude<UnionKeys<TAll>, keyof T>, never>>\n : never;\n\ntype StrictUnion<T> = StrictUnionHelper<T, T>;\n\nexport type ActionProps<TVariant extends string = Variant> = StrictUnion<UnionParams<TVariant>>;\n","import React, { type ButtonHTMLAttributes, forwardRef, type MouseEvent } from \"react\";\nimport { type ActionProps, SIZE, VARIANT } from \"@purpur/action\";\nimport type { BaseProps } from \"@purpur/common-types\";\nimport { Spinner } from \"@purpur/spinner\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./button.module.scss\";\n\nexport const BUTTON_VARIANT = {\n ...VARIANT,\n DESTRUCTIVE: \"destructive\",\n TEXT: \"text\",\n} as const;\n\nexport const buttonVariants = Object.values(BUTTON_VARIANT);\nexport type ButtonVariant = (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-button\";\n\ntype ButtonType = Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"type\">[\"type\"];\nexport const BUTTON_TYPES: ButtonType[] = [\"button\", \"submit\", \"reset\"] as const;\n\nexport type ButtonProps = ActionProps<ButtonVariant> & BaseProps<\"button\"> & { loading?: boolean };\n\nexport const Button = forwardRef<\n HTMLButtonElement,\n Omit<ButtonProps, \"type\"> & { type?: ButtonType }\n>(\n (\n {\n children,\n className,\n disabled = false,\n fullWidth = false,\n iconOnly,\n loading = false,\n negative = false,\n onClick,\n size = \"md\",\n variant,\n type = \"button\",\n ...props\n },\n ref\n ) => {\n if (iconOnly && variant === \"destructive\") {\n return null;\n }\n\n const classes = cx(\n [\n rootClassName,\n `${rootClassName}--${negative ? `${variant}-negative` : variant}`,\n `${rootClassName}--${size}`,\n ],\n {\n [`${rootClassName}--icon-only`]: iconOnly,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--disabled`]: disabled || loading,\n },\n className\n );\n\n const handleClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) {\n e.preventDefault();\n } else if (onClick) {\n onClick(e);\n }\n };\n\n const _disabled = Boolean(props[\"aria-disabled\"]) || disabled || loading;\n\n return (\n <button\n className={classes}\n type={type}\n ref={ref}\n aria-disabled={_disabled}\n onClick={handleClick}\n {...props}\n >\n {loading && (\n <Spinner\n size={size === SIZE.LG ? \"xs\" : \"xxs\"}\n negative={negative}\n disabled={_disabled}\n className={cx(`${rootClassName}__spinner`)}\n />\n )}{\" \"}\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["VARIANT","SIZE","BUTTON_VARIANT","buttonVariants","cx","c","styles","rootClassName","BUTTON_TYPES","Button","forwardRef","children","className","disabled","fullWidth","iconOnly","loading","negative","onClick","size","variant","type","props","ref","classes","handleClick","e","_disabled","jsxs","jsx","Spinner"],"mappings":"wIAEaA,EAAU,CACrB,QAAS,UACT,UAAW,YACX,WAAY,YACd,EAKaC,EAAO,CAIlB,GAAI,IACN,mwCCRaC,EAAiB,CAC5B,GAAGF,EACH,YAAa,cACb,KAAM,MACR,EAEaG,EAAiB,OAAO,OAAOD,CAAc,EAGpDE,EAAKC,EAAAA,EAAE,KAAKC,CAAM,EAClBC,EAAgB,gBAGTC,EAA6B,CAAC,SAAU,SAAU,OAAO,EAIzDC,EAASC,EAAAA,WAIpB,CACE,CACE,SAAAC,EACA,UAAAC,EACA,SAAAC,EAAW,GACX,UAAAC,EAAY,GACZ,SAAAC,EACA,QAAAC,EAAU,GACV,SAAAC,EAAW,GACX,QAAAC,EACA,KAAAC,EAAO,KACP,QAAAC,EACA,KAAAC,EAAO,SACP,GAAGC,CAAA,EAELC,IACG,CACH,GAAIR,GAAYK,IAAY,cAC1B,OAAO,KAGT,MAAMI,EAAUpB,EACd,CACEG,EACA,GAAGA,CAAa,KAAKU,EAAW,GAAGG,CAAO,YAAcA,CAAO,GAC/D,GAAGb,CAAa,KAAKY,CAAI,EAAA,EAE3B,CACE,CAAC,GAAGZ,CAAa,aAAa,EAAGQ,EACjC,CAAC,GAAGR,CAAa,YAAY,EAAGU,EAChC,CAAC,GAAGV,CAAa,cAAc,EAAGO,EAClC,CAAC,GAAGP,CAAa,YAAY,EAAGM,GAAYG,CAAA,EAE9CJ,CAAA,EAGIa,EAAeC,GAAqC,CACpDb,GAAYG,EACdU,EAAE,eAAA,EACOR,GACTA,EAAQQ,CAAC,CAEb,EAEMC,EAAY,EAAQL,EAAM,eAAe,GAAMT,GAAYG,EAEjE,OACEY,EAAAA,KAAC,SAAA,CACC,UAAWJ,EACX,KAAAH,EACA,IAAAE,EACA,gBAAeI,EACf,QAASF,EACR,GAAGH,EAEH,SAAA,CAAAN,GACCa,EAAAA,IAACC,EAAAA,QAAA,CACC,KAAMX,IAASlB,EAAK,GAAK,KAAO,MAChC,SAAAgB,EACA,SAAUU,EACV,UAAWvB,EAAG,GAAGG,CAAa,WAAW,CAAA,CAAA,EAE1C,IACFI,CAAA,CAAA,CAAA,CAGP,CACF,EAEAF,EAAO,YAAc"}
|