@dragunio/fe-libs 0.1.7 → 0.1.9
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 +48 -2
- package/dist/{chunk-GT4546FD.mjs → chunk-BAZJ5UJ5.mjs} +85 -5
- package/dist/icons.d.mts +5 -1
- package/dist/icons.d.ts +5 -1
- package/dist/icons.js +88 -4
- package/dist/icons.mjs +9 -1
- package/dist/index.d.mts +292 -10
- package/dist/index.d.ts +292 -10
- package/dist/index.js +1844 -378
- package/dist/index.mjs +1780 -379
- package/dist/styles.css +667 -19
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -9,6 +9,7 @@ src/ # Public library entrypoints and styles
|
|
|
9
9
|
packages/ # Internal component source folders
|
|
10
10
|
├── icons/
|
|
11
11
|
├── button/
|
|
12
|
+
├── tabs/
|
|
12
13
|
├── table/
|
|
13
14
|
├── toggle/
|
|
14
15
|
├── drawer/
|
|
@@ -47,12 +48,16 @@ Available review routes:
|
|
|
47
48
|
- `http://127.0.0.1:3000/#/` — overview
|
|
48
49
|
- `http://127.0.0.1:3000/#/icons` — SVG Icons
|
|
49
50
|
- `http://127.0.0.1:3000/#/button` — Button
|
|
51
|
+
- `http://127.0.0.1:3000/#/button-bar` — Button Bar
|
|
52
|
+
- `http://127.0.0.1:3000/#/tabs` — Tabs & Segments
|
|
50
53
|
- `http://127.0.0.1:3000/#/table` — Table
|
|
51
54
|
- `http://127.0.0.1:3000/#/drawer` — Drawer
|
|
52
55
|
- `http://127.0.0.1:3000/#/selection` — Selection
|
|
53
56
|
- `http://127.0.0.1:3000/#/datetime` — DateTimePicker
|
|
54
57
|
- `http://127.0.0.1:3000/#/currency` — CurrencyInput
|
|
55
58
|
- `http://127.0.0.1:3000/#/number` — NumberInput
|
|
59
|
+
- `http://127.0.0.1:3000/#/file-upload` — FileUpload
|
|
60
|
+
- `http://127.0.0.1:3000/#/file-preview` — FilePreview
|
|
56
61
|
- `http://127.0.0.1:3000/#/tooltip` — Tooltip
|
|
57
62
|
- `http://127.0.0.1:3000/#/expandable` — ExpandableSection
|
|
58
63
|
- `http://127.0.0.1:3000/#/loading` — Loading
|
|
@@ -62,6 +67,7 @@ Available review routes:
|
|
|
62
67
|
- `http://127.0.0.1:3000/#/chip` — Chip
|
|
63
68
|
- `http://127.0.0.1:3000/#/avatar` — Avatar
|
|
64
69
|
- `http://127.0.0.1:3000/#/text-input` — TextInput & TextArea
|
|
70
|
+
- `http://127.0.0.1:3000/#/validated-inputs` — EmailInput, PasswordInput & PhoneNumberInput
|
|
65
71
|
- `http://127.0.0.1:3000/#/pagination` — Pagination
|
|
66
72
|
- `http://127.0.0.1:3000/#/message` — Message
|
|
67
73
|
- `http://127.0.0.1:3000/#/snackbar` — Snackbar
|
|
@@ -78,6 +84,12 @@ To verify a production-like consumer build:
|
|
|
78
84
|
pnpm build
|
|
79
85
|
```
|
|
80
86
|
|
|
87
|
+
## Security review note
|
|
88
|
+
|
|
89
|
+
The playground may be exposed through a short-lived Vite tunnel for external manual testing. Treat a shared tunnel link as public for as long as the tunnel is running: do not place secrets, credentials, private IP addresses, internal API details, authorization headers, or sensitive response fixtures in the demo source. `VITE_*` values are client-side values and must not contain secrets.
|
|
90
|
+
|
|
91
|
+
Proposed automated safeguard (not installed yet): run a pre-commit scan only on staged files and block the commit when it finds common credentials, `.env` content, private network details, or sensitive API configuration. This should normally take less than a second for a small staged change and has no ongoing runtime cost. A dedicated secret scanner in CI can be added later to catch commits that bypass the local hook; a unit test is not a reliable secret-detection mechanism.
|
|
92
|
+
|
|
81
93
|
## Consuming the published library
|
|
82
94
|
|
|
83
95
|
```bash
|
|
@@ -89,6 +101,7 @@ import {
|
|
|
89
101
|
Button,
|
|
90
102
|
PlusIcon,
|
|
91
103
|
Table,
|
|
104
|
+
Tabs,
|
|
92
105
|
Toggle,
|
|
93
106
|
Checkbox,
|
|
94
107
|
RadioButton,
|
|
@@ -99,6 +112,25 @@ import {
|
|
|
99
112
|
import '@dragunio/fe-libs/styles.css';
|
|
100
113
|
```
|
|
101
114
|
|
|
115
|
+
### Tabs and segments
|
|
116
|
+
|
|
117
|
+
`Tabs` divides related content into accessible tabs and supports `variant="tab"` (the default underline style) or `variant="segment"`. It can be controlled with `value` or used uncontrolled with `defaultValue`. When labels overflow, the tab list scrolls horizontally; `scrollButtons="auto"` reveals arrow controls only when needed, while the chosen tab is automatically scrolled into view.
|
|
118
|
+
|
|
119
|
+
```tsx
|
|
120
|
+
const [section, setSection] = useState('overview');
|
|
121
|
+
|
|
122
|
+
<Tabs
|
|
123
|
+
aria-label="Project sections"
|
|
124
|
+
value={section}
|
|
125
|
+
onChange={(value) => setSection(value)}
|
|
126
|
+
items={[
|
|
127
|
+
{ id: 'overview', label: 'Overview', content: <Overview /> },
|
|
128
|
+
{ id: 'activity', label: 'Activity', content: <Activity /> },
|
|
129
|
+
{ id: 'members', label: 'Members', content: <Members /> },
|
|
130
|
+
]}
|
|
131
|
+
/>;
|
|
132
|
+
```
|
|
133
|
+
|
|
102
134
|
### Toggle
|
|
103
135
|
|
|
104
136
|
`Toggle` is a native checkbox styled as a switch. It supports controlled and uncontrolled usage, including the standard `onChange`, `onClick`, and `disabled` props. The active color is green by default and accepts any CSS color. Use `labelPosition="top"` to render its label above the switch; `right` is the default.
|
|
@@ -162,14 +194,17 @@ The library exposes ESM, CommonJS, TypeScript declarations, and keeps React as a
|
|
|
162
194
|
|
|
163
195
|
### New form and overlay primitives
|
|
164
196
|
|
|
165
|
-
- `Drawer` is a portal-based modal panel with `left`, `right`, `top`, and `bottom` slide-in animations. Use `fullScreen` for a full-viewport panel and `footer` for fixed actions below the scrollable body.
|
|
197
|
+
- `Drawer` is a portal-based modal panel with `left`, `right`, `top`, and `bottom` slide-in animations. Use `DrawerWidths.small`, `.medium`, or `.large` (360px, 400px, 480px) with `width`, or provide any custom CSS width. Use `fullScreen` for a full-viewport panel and `footer` for fixed actions below the scrollable body. It automatically adapts to smaller screens: side drawers use the available viewport width, while top and bottom drawers become sheet-style panels.
|
|
166
198
|
- `Selection` is a rounded custom dropdown inspired by DropdownCustom, with single/multiple modes, optional search, clear action, tags, form-field values, and keyboard navigation.
|
|
167
199
|
- `DateTimePicker` supports `mode="single"` and `mode="range"`; its default format is `dd/MM/yyyy HH:mm`.
|
|
168
200
|
- `NumberInput` and `CurrencyInput` format values immediately while typing (`1000` → `1,000`) and keep up to two fractional digits by default. Both include accessible up/down controls (and arrow-key support); use `step` or `showStepper` to configure them. `NumberInput` also accepts `prefix`/`suffix` adornments. Use `allowDecimal`, `decimals`, `min`, and `max` to control decimal input and numeric limits. Both support `error` and `errorMessage` with the same red border/message treatment as `TextInput`. `CurrencyInput` adds a `VND` suffix by default, or a currency dropdown through `currencies`.
|
|
201
|
+
- `FileUpload` accepts browser `File` objects from selecting or dropping files. Choose its preset `accept` groups—such as `image`, `pdf`, `document`, `audio`, and `video`—instead of manually assembling MIME patterns; it validates them with `maxSize`, `maxFiles`, and duplicate checks locally, then emits `onChange`, `onAccept`, `onReject`, and `onRemove` synchronously. It deliberately contains no endpoint, request, `async`, or upload-progress behavior.
|
|
202
|
+
- `FilePreview` is a local, portal-based File viewer. It displays the current file count in its backdrop header, supports buttons and ArrowLeft/ArrowRight navigation, calls `onEscape` then `onClose('escape')`, and reports `onDelete`/`onDownload` with the active `File`. Its Download action starts a direct local browser download—there is no endpoint or transport behavior.
|
|
169
203
|
- `Tooltip` shows accessible content on hover and focus.
|
|
170
204
|
- `ExpandableSection` provides controlled and uncontrolled expand/collapse behavior.
|
|
171
205
|
- `TextInput` and `TextArea` support `error`/`errorMessage`, `helperText`, `clearable`, `onClear`, and `onValueChange`. `TextArea` also accepts `autosize` (default `false`) to grow with its content. `TextInput` also accepts `label`, `isRequired`, and `prefix`/`suffix` adornments. Passing a string to `error` shows it below the field and applies the error border.
|
|
172
|
-
- `
|
|
206
|
+
- `EmailInput`, `PasswordInput`, and `PhoneNumberInput` add their standard mailbox, show/hide password, and phone adornments. They validate their formats on blur by default; use `validateOn="change"` for immediate feedback and `validate={(value) => ...}` for an additional rule. Passwords require at least eight characters including uppercase, lowercase, and a number; phone numbers accept digits, spaces, parentheses, and plus signs, and require 7–15 digits.
|
|
207
|
+
- `Modal` is a centered portal dialog in `small`, `medium`, `large`, `xlarge`, and `full` sizes. Its close control and `actions` are library `Button` instances. Modal and Drawer trap keyboard focus, lock background scrolling, return focus to their opener, and respect reduced-motion preferences. Use `initialFocusRef`, `restoreFocus`, `closeOnEscape`, and `closeOnBackdropClick` to customize that behavior.
|
|
173
208
|
- `Loading` provides `small`, `medium`, and `large` circular indicators (or a custom pixel `size`); use `Skeleton.Circle` and `Skeleton.Square` with `size`, or `Skeleton.Box` and `Skeleton.Line` with `width` and `height`.
|
|
174
209
|
- `ProgressBar` is determinate when `value` is supplied and renders an indeterminate back-and-forth animation when it is omitted.
|
|
175
210
|
- `Chip` supports the standard `default`, `success`, `error`, `info`, and `warning` palettes, plus `color` for any CSS color and `subtle`, `solid`, or `outline` variants.
|
|
@@ -190,6 +225,17 @@ The library exposes ESM, CommonJS, TypeScript declarations, and keeps React as a
|
|
|
190
225
|
clearable
|
|
191
226
|
/>
|
|
192
227
|
|
|
228
|
+
<EmailInput
|
|
229
|
+
label="Work email"
|
|
230
|
+
value={email}
|
|
231
|
+
onValueChange={setEmail}
|
|
232
|
+
validate={(value) =>
|
|
233
|
+
value.endsWith('@dragunio.com') || 'Use your work email.'
|
|
234
|
+
}
|
|
235
|
+
/>
|
|
236
|
+
<PasswordInput label="Password" />
|
|
237
|
+
<PhoneNumberInput label="Phone number" placeholder="+84 (123) 456 789" />
|
|
238
|
+
|
|
193
239
|
<ProgressBar label="Upload" value={72} />
|
|
194
240
|
<ProgressBar label="Synchronising" />
|
|
195
241
|
<Chip status="success" dot>Complete</Chip>
|
|
@@ -52,16 +52,16 @@ var iconProps2 = ({ size, ...props }) => ({
|
|
|
52
52
|
...props
|
|
53
53
|
});
|
|
54
54
|
var chevron_right = (props) => {
|
|
55
|
-
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", {
|
|
55
|
+
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M8.39898 5.39898C8.73093 5.06704 9.26912 5.06704 9.60107 5.39898L15.6011 11.399C15.933 11.7309 15.933 12.2691 15.6011 12.6011L9.60107 18.6011C9.26912 18.933 8.73093 18.933 8.39898 18.6011C8.06704 18.2691 8.06704 17.7309 8.39898 17.399L13.7979 12L8.39898 6.60107C8.06704 6.26912 8.06704 5.73093 8.39898 5.39898Z", fill: props.fill }) });
|
|
56
56
|
};
|
|
57
57
|
var chevron_up = (props) => {
|
|
58
|
-
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", {
|
|
58
|
+
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M11.399 8.39898C11.7309 8.06704 12.2691 8.06704 12.6011 8.39898L18.6011 14.399C18.933 14.7309 18.933 15.2691 18.6011 15.6011C18.2691 15.933 17.7309 15.933 17.399 15.6011L12 10.2021L6.60107 15.6011C6.26912 15.933 5.73093 15.933 5.39898 15.6011C5.06704 15.2691 5.06704 14.7309 5.39898 14.399L11.399 8.39898Z", fill: "#101828" }) });
|
|
59
59
|
};
|
|
60
60
|
var chevron_left = (props) => {
|
|
61
|
-
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", {
|
|
61
|
+
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M15.6011 5.39898C15.933 5.73093 15.933 6.26912 15.6011 6.60107L10.2021 12L15.6011 17.399C15.933 17.7309 15.933 18.2691 15.6011 18.6011C15.2691 18.933 14.7309 18.933 14.399 18.6011L8.39898 12.6011C8.06704 12.2691 8.06704 11.7309 8.39898 11.399L14.399 5.39898C14.7309 5.06704 15.2691 5.06704 15.6011 5.39898Z", fill: "#101828" }) });
|
|
62
62
|
};
|
|
63
63
|
var chevron_down = (props) => {
|
|
64
|
-
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", {
|
|
64
|
+
return /* @__PURE__ */ jsx2("svg", { ...iconProps2(props), children: /* @__PURE__ */ jsx2("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M5.39898 8.39898C5.73093 8.06704 6.26912 8.06704 6.60107 8.39898L12 13.7979L17.399 8.39898C17.7309 8.06704 18.2691 8.06704 18.6011 8.39898C18.933 8.73093 18.933 9.26912 18.6011 9.60107L12.6011 15.6011C12.2691 15.933 11.7309 15.933 11.399 15.6011L5.39898 9.60107C5.06704 9.26912 5.06704 8.73093 5.39898 8.39898Z", fill: "#101828" }) });
|
|
65
65
|
};
|
|
66
66
|
|
|
67
67
|
// packages/icons/src/svgItems/security.tsx
|
|
@@ -169,6 +169,82 @@ function SearchIcon(props) {
|
|
|
169
169
|
)
|
|
170
170
|
] });
|
|
171
171
|
}
|
|
172
|
+
function MailboxIcon(props) {
|
|
173
|
+
return /* @__PURE__ */ jsxs("svg", { ...iconProps4(props), children: [
|
|
174
|
+
/* @__PURE__ */ jsx4(
|
|
175
|
+
"rect",
|
|
176
|
+
{
|
|
177
|
+
x: "3.5",
|
|
178
|
+
y: "5.5",
|
|
179
|
+
width: "17",
|
|
180
|
+
height: "13",
|
|
181
|
+
rx: "2",
|
|
182
|
+
stroke: "currentColor",
|
|
183
|
+
strokeWidth: "1.8"
|
|
184
|
+
}
|
|
185
|
+
),
|
|
186
|
+
/* @__PURE__ */ jsx4(
|
|
187
|
+
"path",
|
|
188
|
+
{
|
|
189
|
+
d: "m4.5 7 6.04 4.53a2.4 2.4 0 0 0 2.92 0L19.5 7",
|
|
190
|
+
stroke: "currentColor",
|
|
191
|
+
strokeWidth: "1.8",
|
|
192
|
+
strokeLinecap: "round",
|
|
193
|
+
strokeLinejoin: "round"
|
|
194
|
+
}
|
|
195
|
+
)
|
|
196
|
+
] });
|
|
197
|
+
}
|
|
198
|
+
function PhoneIcon(props) {
|
|
199
|
+
return /* @__PURE__ */ jsx4("svg", { ...iconProps4(props), children: /* @__PURE__ */ jsx4(
|
|
200
|
+
"path",
|
|
201
|
+
{
|
|
202
|
+
d: "M8.05 3.75 5.84 4.8c-.76.36-1.15 1.2-.94 2.02 1.55 6.14 6.34 10.93 12.48 12.48.82.21 1.66-.18 2.02-.94l1.05-2.21a1.5 1.5 0 0 0-.57-1.91l-2.41-1.48a1.5 1.5 0 0 0-1.8.18l-1.23 1.06a10.38 10.38 0 0 1-4.45-4.45l1.06-1.23a1.5 1.5 0 0 0 .18-1.8L9.96 4.32a1.5 1.5 0 0 0-1.91-.57Z",
|
|
203
|
+
stroke: "currentColor",
|
|
204
|
+
strokeWidth: "1.8",
|
|
205
|
+
strokeLinecap: "round",
|
|
206
|
+
strokeLinejoin: "round"
|
|
207
|
+
}
|
|
208
|
+
) });
|
|
209
|
+
}
|
|
210
|
+
function EyeIcon(props) {
|
|
211
|
+
return /* @__PURE__ */ jsxs("svg", { ...iconProps4(props), children: [
|
|
212
|
+
/* @__PURE__ */ jsx4(
|
|
213
|
+
"path",
|
|
214
|
+
{
|
|
215
|
+
d: "M2.9 12s3.1-5 9.1-5 9.1 5 9.1 5-3.1 5-9.1 5-9.1-5-9.1-5Z",
|
|
216
|
+
stroke: "currentColor",
|
|
217
|
+
strokeWidth: "1.8",
|
|
218
|
+
strokeLinecap: "round",
|
|
219
|
+
strokeLinejoin: "round"
|
|
220
|
+
}
|
|
221
|
+
),
|
|
222
|
+
/* @__PURE__ */ jsx4("circle", { cx: "12", cy: "12", r: "2.4", stroke: "currentColor", strokeWidth: "1.8" })
|
|
223
|
+
] });
|
|
224
|
+
}
|
|
225
|
+
function EyeOffIcon(props) {
|
|
226
|
+
return /* @__PURE__ */ jsxs("svg", { ...iconProps4(props), children: [
|
|
227
|
+
/* @__PURE__ */ jsx4(
|
|
228
|
+
"path",
|
|
229
|
+
{
|
|
230
|
+
d: "M10.58 7.16A6.1 6.1 0 0 1 12 7c6 0 9.1 5 9.1 5a16.1 16.1 0 0 1-2.54 2.84M13.28 16.83A6.1 6.1 0 0 1 12 17c-6 0-9.1-5-9.1-5a16.1 16.1 0 0 1 2.59-2.87",
|
|
231
|
+
stroke: "currentColor",
|
|
232
|
+
strokeWidth: "1.8",
|
|
233
|
+
strokeLinecap: "round",
|
|
234
|
+
strokeLinejoin: "round"
|
|
235
|
+
}
|
|
236
|
+
),
|
|
237
|
+
/* @__PURE__ */ jsx4(
|
|
238
|
+
"path",
|
|
239
|
+
{
|
|
240
|
+
d: "m3.5 3.5 17 17M10.1 10.1a2.7 2.7 0 0 0 3.8 3.8",
|
|
241
|
+
stroke: "currentColor",
|
|
242
|
+
strokeWidth: "1.8",
|
|
243
|
+
strokeLinecap: "round"
|
|
244
|
+
}
|
|
245
|
+
)
|
|
246
|
+
] });
|
|
247
|
+
}
|
|
172
248
|
|
|
173
249
|
export {
|
|
174
250
|
plus,
|
|
@@ -194,5 +270,9 @@ export {
|
|
|
194
270
|
CloseIcon,
|
|
195
271
|
MoreHorizontalIcon,
|
|
196
272
|
MoreVerticalIcon,
|
|
197
|
-
SearchIcon
|
|
273
|
+
SearchIcon,
|
|
274
|
+
MailboxIcon,
|
|
275
|
+
PhoneIcon,
|
|
276
|
+
EyeIcon,
|
|
277
|
+
EyeOffIcon
|
|
198
278
|
};
|
package/dist/icons.d.mts
CHANGED
|
@@ -31,5 +31,9 @@ declare function CloseIcon(props: IconProps): react.JSX.Element;
|
|
|
31
31
|
declare function MoreHorizontalIcon(props: IconProps): react.JSX.Element;
|
|
32
32
|
declare function MoreVerticalIcon(props: IconProps): react.JSX.Element;
|
|
33
33
|
declare function SearchIcon(props: IconProps): react.JSX.Element;
|
|
34
|
+
declare function MailboxIcon(props: IconProps): react.JSX.Element;
|
|
35
|
+
declare function PhoneIcon(props: IconProps): react.JSX.Element;
|
|
36
|
+
declare function EyeIcon(props: IconProps): react.JSX.Element;
|
|
37
|
+
declare function EyeOffIcon(props: IconProps): react.JSX.Element;
|
|
34
38
|
|
|
35
|
-
export { ChevronDownIcon, ChevronUpIcon, CloseIcon, type IconProps, MoreHorizontalIcon, MoreVerticalIcon, PlusIcon, SearchIcon, arrow_left, check_square_fill, chevron_down, chevron_left, chevron_right, chevron_up, copy, key, lock, lock_unlocked, log_out, minus_square, plus, plus_square, search, trash, x_close };
|
|
39
|
+
export { ChevronDownIcon, ChevronUpIcon, CloseIcon, EyeIcon, EyeOffIcon, type IconProps, MailboxIcon, MoreHorizontalIcon, MoreVerticalIcon, PhoneIcon, PlusIcon, SearchIcon, arrow_left, check_square_fill, chevron_down, chevron_left, chevron_right, chevron_up, copy, key, lock, lock_unlocked, log_out, minus_square, plus, plus_square, search, trash, x_close };
|
package/dist/icons.d.ts
CHANGED
|
@@ -31,5 +31,9 @@ declare function CloseIcon(props: IconProps): react.JSX.Element;
|
|
|
31
31
|
declare function MoreHorizontalIcon(props: IconProps): react.JSX.Element;
|
|
32
32
|
declare function MoreVerticalIcon(props: IconProps): react.JSX.Element;
|
|
33
33
|
declare function SearchIcon(props: IconProps): react.JSX.Element;
|
|
34
|
+
declare function MailboxIcon(props: IconProps): react.JSX.Element;
|
|
35
|
+
declare function PhoneIcon(props: IconProps): react.JSX.Element;
|
|
36
|
+
declare function EyeIcon(props: IconProps): react.JSX.Element;
|
|
37
|
+
declare function EyeOffIcon(props: IconProps): react.JSX.Element;
|
|
34
38
|
|
|
35
|
-
export { ChevronDownIcon, ChevronUpIcon, CloseIcon, type IconProps, MoreHorizontalIcon, MoreVerticalIcon, PlusIcon, SearchIcon, arrow_left, check_square_fill, chevron_down, chevron_left, chevron_right, chevron_up, copy, key, lock, lock_unlocked, log_out, minus_square, plus, plus_square, search, trash, x_close };
|
|
39
|
+
export { ChevronDownIcon, ChevronUpIcon, CloseIcon, EyeIcon, EyeOffIcon, type IconProps, MailboxIcon, MoreHorizontalIcon, MoreVerticalIcon, PhoneIcon, PlusIcon, SearchIcon, arrow_left, check_square_fill, chevron_down, chevron_left, chevron_right, chevron_up, copy, key, lock, lock_unlocked, log_out, minus_square, plus, plus_square, search, trash, x_close };
|
package/dist/icons.js
CHANGED
|
@@ -23,8 +23,12 @@ __export(icons_exports, {
|
|
|
23
23
|
ChevronDownIcon: () => ChevronDownIcon,
|
|
24
24
|
ChevronUpIcon: () => ChevronUpIcon,
|
|
25
25
|
CloseIcon: () => CloseIcon,
|
|
26
|
+
EyeIcon: () => EyeIcon,
|
|
27
|
+
EyeOffIcon: () => EyeOffIcon,
|
|
28
|
+
MailboxIcon: () => MailboxIcon,
|
|
26
29
|
MoreHorizontalIcon: () => MoreHorizontalIcon,
|
|
27
30
|
MoreVerticalIcon: () => MoreVerticalIcon,
|
|
31
|
+
PhoneIcon: () => PhoneIcon,
|
|
28
32
|
PlusIcon: () => PlusIcon,
|
|
29
33
|
SearchIcon: () => SearchIcon,
|
|
30
34
|
arrow_left: () => arrow_left,
|
|
@@ -101,16 +105,16 @@ var iconProps2 = ({ size, ...props }) => ({
|
|
|
101
105
|
...props
|
|
102
106
|
});
|
|
103
107
|
var chevron_right = (props) => {
|
|
104
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", {
|
|
108
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M8.39898 5.39898C8.73093 5.06704 9.26912 5.06704 9.60107 5.39898L15.6011 11.399C15.933 11.7309 15.933 12.2691 15.6011 12.6011L9.60107 18.6011C9.26912 18.933 8.73093 18.933 8.39898 18.6011C8.06704 18.2691 8.06704 17.7309 8.39898 17.399L13.7979 12L8.39898 6.60107C8.06704 6.26912 8.06704 5.73093 8.39898 5.39898Z", fill: props.fill }) });
|
|
105
109
|
};
|
|
106
110
|
var chevron_up = (props) => {
|
|
107
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", {
|
|
111
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M11.399 8.39898C11.7309 8.06704 12.2691 8.06704 12.6011 8.39898L18.6011 14.399C18.933 14.7309 18.933 15.2691 18.6011 15.6011C18.2691 15.933 17.7309 15.933 17.399 15.6011L12 10.2021L6.60107 15.6011C6.26912 15.933 5.73093 15.933 5.39898 15.6011C5.06704 15.2691 5.06704 14.7309 5.39898 14.399L11.399 8.39898Z", fill: "#101828" }) });
|
|
108
112
|
};
|
|
109
113
|
var chevron_left = (props) => {
|
|
110
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", {
|
|
114
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M15.6011 5.39898C15.933 5.73093 15.933 6.26912 15.6011 6.60107L10.2021 12L15.6011 17.399C15.933 17.7309 15.933 18.2691 15.6011 18.6011C15.2691 18.933 14.7309 18.933 14.399 18.6011L8.39898 12.6011C8.06704 12.2691 8.06704 11.7309 8.39898 11.399L14.399 5.39898C14.7309 5.06704 15.2691 5.06704 15.6011 5.39898Z", fill: "#101828" }) });
|
|
111
115
|
};
|
|
112
116
|
var chevron_down = (props) => {
|
|
113
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", {
|
|
117
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("svg", { ...iconProps2(props), children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M5.39898 8.39898C5.73093 8.06704 6.26912 8.06704 6.60107 8.39898L12 13.7979L17.399 8.39898C17.7309 8.06704 18.2691 8.06704 18.6011 8.39898C18.933 8.73093 18.933 9.26912 18.6011 9.60107L12.6011 15.6011C12.2691 15.933 11.7309 15.933 11.399 15.6011L5.39898 9.60107C5.06704 9.26912 5.06704 8.73093 5.39898 8.39898Z", fill: "#101828" }) });
|
|
114
118
|
};
|
|
115
119
|
|
|
116
120
|
// packages/icons/src/svgItems/security.tsx
|
|
@@ -218,13 +222,93 @@ function SearchIcon(props) {
|
|
|
218
222
|
)
|
|
219
223
|
] });
|
|
220
224
|
}
|
|
225
|
+
function MailboxIcon(props) {
|
|
226
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("svg", { ...iconProps4(props), children: [
|
|
227
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
228
|
+
"rect",
|
|
229
|
+
{
|
|
230
|
+
x: "3.5",
|
|
231
|
+
y: "5.5",
|
|
232
|
+
width: "17",
|
|
233
|
+
height: "13",
|
|
234
|
+
rx: "2",
|
|
235
|
+
stroke: "currentColor",
|
|
236
|
+
strokeWidth: "1.8"
|
|
237
|
+
}
|
|
238
|
+
),
|
|
239
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
240
|
+
"path",
|
|
241
|
+
{
|
|
242
|
+
d: "m4.5 7 6.04 4.53a2.4 2.4 0 0 0 2.92 0L19.5 7",
|
|
243
|
+
stroke: "currentColor",
|
|
244
|
+
strokeWidth: "1.8",
|
|
245
|
+
strokeLinecap: "round",
|
|
246
|
+
strokeLinejoin: "round"
|
|
247
|
+
}
|
|
248
|
+
)
|
|
249
|
+
] });
|
|
250
|
+
}
|
|
251
|
+
function PhoneIcon(props) {
|
|
252
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("svg", { ...iconProps4(props), children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
253
|
+
"path",
|
|
254
|
+
{
|
|
255
|
+
d: "M8.05 3.75 5.84 4.8c-.76.36-1.15 1.2-.94 2.02 1.55 6.14 6.34 10.93 12.48 12.48.82.21 1.66-.18 2.02-.94l1.05-2.21a1.5 1.5 0 0 0-.57-1.91l-2.41-1.48a1.5 1.5 0 0 0-1.8.18l-1.23 1.06a10.38 10.38 0 0 1-4.45-4.45l1.06-1.23a1.5 1.5 0 0 0 .18-1.8L9.96 4.32a1.5 1.5 0 0 0-1.91-.57Z",
|
|
256
|
+
stroke: "currentColor",
|
|
257
|
+
strokeWidth: "1.8",
|
|
258
|
+
strokeLinecap: "round",
|
|
259
|
+
strokeLinejoin: "round"
|
|
260
|
+
}
|
|
261
|
+
) });
|
|
262
|
+
}
|
|
263
|
+
function EyeIcon(props) {
|
|
264
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("svg", { ...iconProps4(props), children: [
|
|
265
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
266
|
+
"path",
|
|
267
|
+
{
|
|
268
|
+
d: "M2.9 12s3.1-5 9.1-5 9.1 5 9.1 5-3.1 5-9.1 5-9.1-5-9.1-5Z",
|
|
269
|
+
stroke: "currentColor",
|
|
270
|
+
strokeWidth: "1.8",
|
|
271
|
+
strokeLinecap: "round",
|
|
272
|
+
strokeLinejoin: "round"
|
|
273
|
+
}
|
|
274
|
+
),
|
|
275
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)("circle", { cx: "12", cy: "12", r: "2.4", stroke: "currentColor", strokeWidth: "1.8" })
|
|
276
|
+
] });
|
|
277
|
+
}
|
|
278
|
+
function EyeOffIcon(props) {
|
|
279
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("svg", { ...iconProps4(props), children: [
|
|
280
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
281
|
+
"path",
|
|
282
|
+
{
|
|
283
|
+
d: "M10.58 7.16A6.1 6.1 0 0 1 12 7c6 0 9.1 5 9.1 5a16.1 16.1 0 0 1-2.54 2.84M13.28 16.83A6.1 6.1 0 0 1 12 17c-6 0-9.1-5-9.1-5a16.1 16.1 0 0 1 2.59-2.87",
|
|
284
|
+
stroke: "currentColor",
|
|
285
|
+
strokeWidth: "1.8",
|
|
286
|
+
strokeLinecap: "round",
|
|
287
|
+
strokeLinejoin: "round"
|
|
288
|
+
}
|
|
289
|
+
),
|
|
290
|
+
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
291
|
+
"path",
|
|
292
|
+
{
|
|
293
|
+
d: "m3.5 3.5 17 17M10.1 10.1a2.7 2.7 0 0 0 3.8 3.8",
|
|
294
|
+
stroke: "currentColor",
|
|
295
|
+
strokeWidth: "1.8",
|
|
296
|
+
strokeLinecap: "round"
|
|
297
|
+
}
|
|
298
|
+
)
|
|
299
|
+
] });
|
|
300
|
+
}
|
|
221
301
|
// Annotate the CommonJS export names for ESM import in node:
|
|
222
302
|
0 && (module.exports = {
|
|
223
303
|
ChevronDownIcon,
|
|
224
304
|
ChevronUpIcon,
|
|
225
305
|
CloseIcon,
|
|
306
|
+
EyeIcon,
|
|
307
|
+
EyeOffIcon,
|
|
308
|
+
MailboxIcon,
|
|
226
309
|
MoreHorizontalIcon,
|
|
227
310
|
MoreVerticalIcon,
|
|
311
|
+
PhoneIcon,
|
|
228
312
|
PlusIcon,
|
|
229
313
|
SearchIcon,
|
|
230
314
|
arrow_left,
|
package/dist/icons.mjs
CHANGED
|
@@ -2,8 +2,12 @@ import {
|
|
|
2
2
|
ChevronDownIcon,
|
|
3
3
|
ChevronUpIcon,
|
|
4
4
|
CloseIcon,
|
|
5
|
+
EyeIcon,
|
|
6
|
+
EyeOffIcon,
|
|
7
|
+
MailboxIcon,
|
|
5
8
|
MoreHorizontalIcon,
|
|
6
9
|
MoreVerticalIcon,
|
|
10
|
+
PhoneIcon,
|
|
7
11
|
PlusIcon,
|
|
8
12
|
SearchIcon,
|
|
9
13
|
arrow_left,
|
|
@@ -23,13 +27,17 @@ import {
|
|
|
23
27
|
search,
|
|
24
28
|
trash,
|
|
25
29
|
x_close
|
|
26
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-BAZJ5UJ5.mjs";
|
|
27
31
|
export {
|
|
28
32
|
ChevronDownIcon,
|
|
29
33
|
ChevronUpIcon,
|
|
30
34
|
CloseIcon,
|
|
35
|
+
EyeIcon,
|
|
36
|
+
EyeOffIcon,
|
|
37
|
+
MailboxIcon,
|
|
31
38
|
MoreHorizontalIcon,
|
|
32
39
|
MoreVerticalIcon,
|
|
40
|
+
PhoneIcon,
|
|
33
41
|
PlusIcon,
|
|
34
42
|
SearchIcon,
|
|
35
43
|
arrow_left,
|