@frollo/frollo-web-ui 0.0.21 → 0.1.1
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/cjs/index.js +1141 -476
- package/esm/{add-to-unscopables-874257d1.js → add-to-unscopables-81c17489.js} +139 -99
- package/esm/{es.array.includes-ef2f18f4.js → es.array.includes-debcb50f.js} +9 -3
- package/esm/{es.function.name-43e1ffbd.js → es.function.name-e746680f.js} +1 -1
- package/esm/{function-name-a620492a.js → function-name-f0c1223e.js} +52 -61
- package/esm/{fw-button-fee2541f.js → fw-button-bba6ac88.js} +14 -6
- package/esm/fw-button.js +4 -4
- package/esm/fw-card.js +7 -4
- package/esm/fw-checkbox.js +11 -6
- package/esm/fw-form.js +1 -1
- package/esm/fw-input.js +10 -8
- package/esm/fw-modal.js +7 -0
- package/esm/fw-navigation-menu.js +16 -15
- package/esm/fw-tabs.js +3 -3
- package/esm/{index-5430e7a3.js → index-0e14da44.js} +18 -22
- package/esm/index-1813012f.js +474 -0
- package/esm/index.js +185 -26
- package/esm/{vee-validate.esm-028c6424.js → vee-validate.esm-b64acab1.js} +62 -9
- package/frollo-web-ui.esm.js +1218 -488
- package/index.d.ts +217 -27
- package/package.json +22 -17
- package/styles/tailwind.scss +58 -0
- package/styles/transitions.scss +20 -0
- package/styles/typography.scss +38 -0
- package/tailwind.config.js +10 -10
- package/types/components/fw-button/fw-button.vue.d.ts +2 -21
- package/types/components/fw-button/index.types.d.ts +29 -0
- package/types/components/fw-card/fw-card.vue.d.ts +1 -0
- package/types/components/fw-card/index.types.d.ts +6 -0
- package/types/components/fw-checkbox/fw-checkbox.vue.d.ts +0 -6
- package/types/components/fw-checkbox/index.types.d.ts +6 -0
- package/types/components/fw-input/fw-input.vue.d.ts +5 -14
- package/types/components/fw-input/index.types.d.ts +14 -0
- package/types/components/fw-modal/fw-modal.vue.d.ts +145 -0
- package/types/components/fw-modal/index.d.ts +2 -0
- package/types/components/fw-modal/index.types.d.ts +12 -0
- package/types/components/fw-navigation-menu/fw-navigation-menu.vue.d.ts +2 -5
- package/types/components/fw-navigation-menu/index.types.d.ts +5 -0
- package/types/components/index.d.ts +1 -0
- package/types/components/index.types.d.ts +6 -0
- package/types/index-types.esm.d.ts +2 -7
- package/types/index.d.ts +1 -0
- package/types/index.esm.d.ts +1 -0
- package/types/services/index.d.ts +1 -0
- package/types/services/modal.d.ts +9 -0
package/index.d.ts
CHANGED
|
@@ -2,18 +2,22 @@ import * as vue from 'vue';
|
|
|
2
2
|
import { PropType, Plugin } from 'vue';
|
|
3
3
|
export { Form as FwForm } from 'vee-validate';
|
|
4
4
|
|
|
5
|
-
declare
|
|
6
|
-
|
|
5
|
+
declare enum FwInputType {
|
|
6
|
+
text = "text",
|
|
7
|
+
password = "password"
|
|
8
|
+
}
|
|
9
|
+
declare interface FwInputProps {
|
|
7
10
|
value: string;
|
|
8
11
|
name: string;
|
|
9
|
-
type?:
|
|
12
|
+
type?: FwInputType;
|
|
10
13
|
label?: string;
|
|
11
14
|
placeholder?: string;
|
|
12
15
|
rules?: string | object | Function;
|
|
13
16
|
readonly?: boolean;
|
|
14
17
|
hint?: string;
|
|
15
|
-
}
|
|
16
|
-
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
declare const _default$7: vue.DefineComponent<{
|
|
17
21
|
/**
|
|
18
22
|
* The input v-model
|
|
19
23
|
*/
|
|
@@ -32,7 +36,7 @@ declare const _default$6: vue.DefineComponent<{
|
|
|
32
36
|
* The input type. Accepts `text` | `password`
|
|
33
37
|
*/
|
|
34
38
|
type: {
|
|
35
|
-
type: PropType<
|
|
39
|
+
type: PropType<FwInputType>;
|
|
36
40
|
default: string;
|
|
37
41
|
validator: (value: string) => boolean;
|
|
38
42
|
};
|
|
@@ -69,6 +73,7 @@ declare const _default$6: vue.DefineComponent<{
|
|
|
69
73
|
type: StringConstructor;
|
|
70
74
|
};
|
|
71
75
|
}, {
|
|
76
|
+
inputBaseClass: vue.Ref<string>;
|
|
72
77
|
inputValue: vue.WritableComputedRef<string>;
|
|
73
78
|
}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
|
|
74
79
|
/**
|
|
@@ -89,7 +94,7 @@ declare const _default$6: vue.DefineComponent<{
|
|
|
89
94
|
* The input type. Accepts `text` | `password`
|
|
90
95
|
*/
|
|
91
96
|
type: {
|
|
92
|
-
type: PropType<
|
|
97
|
+
type: PropType<FwInputType>;
|
|
93
98
|
default: string;
|
|
94
99
|
validator: (value: string) => boolean;
|
|
95
100
|
};
|
|
@@ -129,18 +134,12 @@ declare const _default$6: vue.DefineComponent<{
|
|
|
129
134
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
130
135
|
}, {
|
|
131
136
|
modelValue: string;
|
|
132
|
-
type:
|
|
137
|
+
type: FwInputType;
|
|
133
138
|
placeholder: string;
|
|
134
139
|
readonly: boolean;
|
|
135
140
|
}>;
|
|
136
141
|
|
|
137
|
-
|
|
138
|
-
name: string;
|
|
139
|
-
label?: string;
|
|
140
|
-
rules?: string | object | Function;
|
|
141
|
-
hint?: string;
|
|
142
|
-
}
|
|
143
|
-
declare const _default$5: vue.DefineComponent<{
|
|
142
|
+
declare const _default$6: vue.DefineComponent<{
|
|
144
143
|
/**
|
|
145
144
|
* The name of the input field. Must be unique per form.
|
|
146
145
|
*/
|
|
@@ -194,7 +193,7 @@ declare const _default$5: vue.DefineComponent<{
|
|
|
194
193
|
};
|
|
195
194
|
}>>, {}>;
|
|
196
195
|
|
|
197
|
-
declare const _default$
|
|
196
|
+
declare const _default$5: vue.DefineComponent<{
|
|
198
197
|
/**
|
|
199
198
|
* The header title of the card
|
|
200
199
|
*/
|
|
@@ -219,6 +218,7 @@ declare const _default$4: vue.DefineComponent<{
|
|
|
219
218
|
href: StringConstructor;
|
|
220
219
|
}, {
|
|
221
220
|
componentName: vue.ComputedRef<"router-link" | "a" | "div">;
|
|
221
|
+
linkClass: vue.Ref<string>;
|
|
222
222
|
}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
|
|
223
223
|
/**
|
|
224
224
|
* The header title of the card
|
|
@@ -244,8 +244,16 @@ declare const _default$4: vue.DefineComponent<{
|
|
|
244
244
|
href: StringConstructor;
|
|
245
245
|
}>>, {}>;
|
|
246
246
|
|
|
247
|
-
declare
|
|
248
|
-
|
|
247
|
+
declare enum ButtonVariantName {
|
|
248
|
+
primary = "primary",
|
|
249
|
+
secondary = "secondary",
|
|
250
|
+
tertiary = "tertiary",
|
|
251
|
+
error = "error",
|
|
252
|
+
success = "success",
|
|
253
|
+
text = "text",
|
|
254
|
+
link = "link"
|
|
255
|
+
}
|
|
256
|
+
declare interface ButtonDefinition {
|
|
249
257
|
text: string;
|
|
250
258
|
background: string;
|
|
251
259
|
border: string;
|
|
@@ -258,14 +266,15 @@ declare type ButtonSizes = {
|
|
|
258
266
|
[key in ButtonSize]: string;
|
|
259
267
|
};
|
|
260
268
|
declare type ButtonTypeAttribute = 'button' | 'submit' | 'reset';
|
|
261
|
-
interface FwButtonProps {
|
|
269
|
+
declare interface FwButtonProps {
|
|
262
270
|
to?: string | object;
|
|
263
271
|
href?: string;
|
|
264
272
|
size?: ButtonSize;
|
|
265
273
|
variant?: ButtonVariantName;
|
|
266
274
|
buttonType?: ButtonTypeAttribute;
|
|
267
|
-
}
|
|
268
|
-
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
declare const _default$4: vue.DefineComponent<{
|
|
269
278
|
/**
|
|
270
279
|
* A `router-link` path or object
|
|
271
280
|
*/
|
|
@@ -302,6 +311,7 @@ declare const _default$3: vue.DefineComponent<{
|
|
|
302
311
|
validator: (value: string) => boolean;
|
|
303
312
|
};
|
|
304
313
|
}, {
|
|
314
|
+
baseClass: vue.Ref<string>;
|
|
305
315
|
textColorClass: vue.ComputedRef<string>;
|
|
306
316
|
bgColorClass: vue.ComputedRef<string>;
|
|
307
317
|
sizeClass: vue.ComputedRef<string>;
|
|
@@ -360,12 +370,13 @@ declare const _default$3: vue.DefineComponent<{
|
|
|
360
370
|
buttonType: ButtonTypeAttribute;
|
|
361
371
|
}>;
|
|
362
372
|
|
|
363
|
-
interface NavMenuItem {
|
|
373
|
+
declare interface NavMenuItem {
|
|
364
374
|
to?: string | object;
|
|
365
375
|
href?: string;
|
|
366
376
|
label: string;
|
|
367
|
-
}
|
|
368
|
-
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
declare const _default$3: vue.DefineComponent<{
|
|
369
380
|
/**
|
|
370
381
|
* An array of menu items
|
|
371
382
|
* `{ to?: string | object; href?: string; label: string; }`
|
|
@@ -381,6 +392,7 @@ declare const _default$2: vue.DefineComponent<{
|
|
|
381
392
|
type: StringConstructor;
|
|
382
393
|
};
|
|
383
394
|
}, {
|
|
395
|
+
mobileMenuClass: vue.Ref<string>;
|
|
384
396
|
isMobileMenuOpen: vue.Ref<boolean>;
|
|
385
397
|
toggleMobileMenu: () => boolean;
|
|
386
398
|
actionClicked: () => void;
|
|
@@ -403,7 +415,7 @@ declare const _default$2: vue.DefineComponent<{
|
|
|
403
415
|
onAction?: ((...args: any[]) => any) | undefined;
|
|
404
416
|
}, {}>;
|
|
405
417
|
|
|
406
|
-
declare const _default$
|
|
418
|
+
declare const _default$2: vue.DefineComponent<{
|
|
407
419
|
/**
|
|
408
420
|
* The active tab v-model
|
|
409
421
|
*/
|
|
@@ -427,7 +439,7 @@ declare const _default$1: vue.DefineComponent<{
|
|
|
427
439
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
428
440
|
}, {}>;
|
|
429
441
|
|
|
430
|
-
declare const _default: vue.DefineComponent<{
|
|
442
|
+
declare const _default$1: vue.DefineComponent<{
|
|
431
443
|
/**
|
|
432
444
|
* The label of the tab component used as the button panel label
|
|
433
445
|
*/
|
|
@@ -448,8 +460,186 @@ declare const _default: vue.DefineComponent<{
|
|
|
448
460
|
};
|
|
449
461
|
}>>, {}>;
|
|
450
462
|
|
|
463
|
+
declare const _default: vue.DefineComponent<{
|
|
464
|
+
/**
|
|
465
|
+
* The header title of the modal
|
|
466
|
+
*/
|
|
467
|
+
header: {
|
|
468
|
+
type: StringConstructor;
|
|
469
|
+
};
|
|
470
|
+
/**
|
|
471
|
+
* The body description of the modal
|
|
472
|
+
*/
|
|
473
|
+
body: {
|
|
474
|
+
type: StringConstructor;
|
|
475
|
+
};
|
|
476
|
+
/**
|
|
477
|
+
* The aria role of the modal container. Defaults to `dialog`
|
|
478
|
+
*/
|
|
479
|
+
role: {
|
|
480
|
+
type: StringConstructor;
|
|
481
|
+
default: string;
|
|
482
|
+
};
|
|
483
|
+
/**
|
|
484
|
+
* Whether to show the cancel button
|
|
485
|
+
*/
|
|
486
|
+
showCancel: {
|
|
487
|
+
type: BooleanConstructor;
|
|
488
|
+
default: boolean;
|
|
489
|
+
};
|
|
490
|
+
/**
|
|
491
|
+
* Whether to show the confirm button
|
|
492
|
+
*/
|
|
493
|
+
showConfirm: {
|
|
494
|
+
type: BooleanConstructor;
|
|
495
|
+
default: boolean;
|
|
496
|
+
};
|
|
497
|
+
/**
|
|
498
|
+
* Custom text for the cancel button
|
|
499
|
+
*/
|
|
500
|
+
cancelButtonText: {
|
|
501
|
+
type: StringConstructor;
|
|
502
|
+
default: string;
|
|
503
|
+
};
|
|
504
|
+
/**
|
|
505
|
+
* Button variant for the cancel button
|
|
506
|
+
*/
|
|
507
|
+
cancelButtonType: {
|
|
508
|
+
type: PropType<ButtonVariantName>;
|
|
509
|
+
default: string;
|
|
510
|
+
validator: (value: string) => boolean;
|
|
511
|
+
};
|
|
512
|
+
/**
|
|
513
|
+
* Custom text for the confirm button
|
|
514
|
+
*/
|
|
515
|
+
confirmButtonText: {
|
|
516
|
+
type: StringConstructor;
|
|
517
|
+
default: string;
|
|
518
|
+
};
|
|
519
|
+
/**
|
|
520
|
+
* Button variant for the confirm button
|
|
521
|
+
*/
|
|
522
|
+
confirmButtonType: {
|
|
523
|
+
type: PropType<ButtonVariantName>;
|
|
524
|
+
default: string;
|
|
525
|
+
validator: (value: string) => boolean;
|
|
526
|
+
};
|
|
527
|
+
}, {
|
|
528
|
+
uuid: string;
|
|
529
|
+
}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, ("cancel" | "confirm")[], "cancel" | "confirm", vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
|
|
530
|
+
/**
|
|
531
|
+
* The header title of the modal
|
|
532
|
+
*/
|
|
533
|
+
header: {
|
|
534
|
+
type: StringConstructor;
|
|
535
|
+
};
|
|
536
|
+
/**
|
|
537
|
+
* The body description of the modal
|
|
538
|
+
*/
|
|
539
|
+
body: {
|
|
540
|
+
type: StringConstructor;
|
|
541
|
+
};
|
|
542
|
+
/**
|
|
543
|
+
* The aria role of the modal container. Defaults to `dialog`
|
|
544
|
+
*/
|
|
545
|
+
role: {
|
|
546
|
+
type: StringConstructor;
|
|
547
|
+
default: string;
|
|
548
|
+
};
|
|
549
|
+
/**
|
|
550
|
+
* Whether to show the cancel button
|
|
551
|
+
*/
|
|
552
|
+
showCancel: {
|
|
553
|
+
type: BooleanConstructor;
|
|
554
|
+
default: boolean;
|
|
555
|
+
};
|
|
556
|
+
/**
|
|
557
|
+
* Whether to show the confirm button
|
|
558
|
+
*/
|
|
559
|
+
showConfirm: {
|
|
560
|
+
type: BooleanConstructor;
|
|
561
|
+
default: boolean;
|
|
562
|
+
};
|
|
563
|
+
/**
|
|
564
|
+
* Custom text for the cancel button
|
|
565
|
+
*/
|
|
566
|
+
cancelButtonText: {
|
|
567
|
+
type: StringConstructor;
|
|
568
|
+
default: string;
|
|
569
|
+
};
|
|
570
|
+
/**
|
|
571
|
+
* Button variant for the cancel button
|
|
572
|
+
*/
|
|
573
|
+
cancelButtonType: {
|
|
574
|
+
type: PropType<ButtonVariantName>;
|
|
575
|
+
default: string;
|
|
576
|
+
validator: (value: string) => boolean;
|
|
577
|
+
};
|
|
578
|
+
/**
|
|
579
|
+
* Custom text for the confirm button
|
|
580
|
+
*/
|
|
581
|
+
confirmButtonText: {
|
|
582
|
+
type: StringConstructor;
|
|
583
|
+
default: string;
|
|
584
|
+
};
|
|
585
|
+
/**
|
|
586
|
+
* Button variant for the confirm button
|
|
587
|
+
*/
|
|
588
|
+
confirmButtonType: {
|
|
589
|
+
type: PropType<ButtonVariantName>;
|
|
590
|
+
default: string;
|
|
591
|
+
validator: (value: string) => boolean;
|
|
592
|
+
};
|
|
593
|
+
}>> & {
|
|
594
|
+
onCancel?: ((...args: any[]) => any) | undefined;
|
|
595
|
+
onConfirm?: ((...args: any[]) => any) | undefined;
|
|
596
|
+
}, {
|
|
597
|
+
role: string;
|
|
598
|
+
showCancel: boolean;
|
|
599
|
+
showConfirm: boolean;
|
|
600
|
+
cancelButtonText: string;
|
|
601
|
+
cancelButtonType: ButtonVariantName;
|
|
602
|
+
confirmButtonText: string;
|
|
603
|
+
confirmButtonType: ButtonVariantName;
|
|
604
|
+
}>;
|
|
605
|
+
|
|
606
|
+
declare interface FwModalProps {
|
|
607
|
+
header?: string;
|
|
608
|
+
body?: string;
|
|
609
|
+
role?: string;
|
|
610
|
+
showCancel?: boolean;
|
|
611
|
+
showConfirm?: boolean;
|
|
612
|
+
cancelButtonText?: string;
|
|
613
|
+
cancelButtonType?: ButtonVariantName;
|
|
614
|
+
confirmButtonText?: string;
|
|
615
|
+
confirmButtonType?: ButtonVariantName;
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
declare interface ModalServiceProps extends FwModalProps {
|
|
619
|
+
onConfirm?: () => void;
|
|
620
|
+
onCancel?: () => void;
|
|
621
|
+
}
|
|
622
|
+
declare const modalService: (options?: ModalServiceProps, element?: HTMLDivElement) => {
|
|
623
|
+
open: () => void;
|
|
624
|
+
close: () => void;
|
|
625
|
+
};
|
|
626
|
+
|
|
451
627
|
declare const install: Exclude<Plugin['install'], undefined>;
|
|
452
628
|
|
|
629
|
+
declare interface FwCardProps {
|
|
630
|
+
title?: string;
|
|
631
|
+
prefixTitle?: string;
|
|
632
|
+
to?: string | object;
|
|
633
|
+
href?: string;
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
declare interface FwCheckboxProps {
|
|
637
|
+
name: string;
|
|
638
|
+
label?: string;
|
|
639
|
+
rules?: string | object | Function;
|
|
640
|
+
hint?: string;
|
|
641
|
+
}
|
|
642
|
+
|
|
453
643
|
declare module '@frollo/frollo-web-ui/icons' { }
|
|
454
644
|
|
|
455
|
-
export { ButtonDefinition, ButtonDefinitionList, ButtonSize, ButtonSizes, ButtonTypeAttribute, ButtonVariantName, _default$
|
|
645
|
+
export { ButtonDefinition, ButtonDefinitionList, ButtonSize, ButtonSizes, ButtonTypeAttribute, ButtonVariantName, _default$4 as FwButton, FwButtonProps, _default$5 as FwCard, FwCardProps, _default$6 as FwCheckbox, FwCheckboxProps, _default$7 as FwInput, FwInputProps, FwInputType, _default as FwModal, FwModalProps, _default$3 as FwNavigationMenu, _default$1 as FwTab, _default$2 as FwTabs, ModalServiceProps, NavMenuItem, install as default, modalService };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frollo/frollo-web-ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Frollo's UI library for components, utilities and configs",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./icons": "./icons/index.ts",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"build-storybook": "build-storybook"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"vue": "^3.2.
|
|
32
|
+
"vue": "^3.2.37"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@babel/core": "^7.17.5",
|
|
@@ -40,30 +40,35 @@
|
|
|
40
40
|
"@rollup/plugin-node-resolve": "^13.1.3",
|
|
41
41
|
"@rollup/plugin-replace": "^3.1.0",
|
|
42
42
|
"@rollup/plugin-url": "^6.1.0",
|
|
43
|
-
"@storybook/addon-a11y": "
|
|
44
|
-
"@storybook/addon-actions": "
|
|
45
|
-
"@storybook/addon-essentials": "
|
|
46
|
-
"@storybook/addon-links": "
|
|
43
|
+
"@storybook/addon-a11y": "~6.4.22",
|
|
44
|
+
"@storybook/addon-actions": "~6.4.22",
|
|
45
|
+
"@storybook/addon-essentials": "~6.4.22",
|
|
46
|
+
"@storybook/addon-links": "~6.4.22",
|
|
47
47
|
"@storybook/addon-postcss": "^2.0.0",
|
|
48
|
-
"@storybook/addon-storysource": "
|
|
49
|
-
"@storybook/builder-webpack5": "
|
|
50
|
-
"@storybook/manager-webpack5": "
|
|
51
|
-
"@storybook/vue3": "
|
|
48
|
+
"@storybook/addon-storysource": "~6.4.22",
|
|
49
|
+
"@storybook/builder-webpack5": "~6.4.22",
|
|
50
|
+
"@storybook/manager-webpack5": "~6.4.22",
|
|
51
|
+
"@storybook/vue3": "~6.4.22",
|
|
52
52
|
"@types/jest": "^27.4.0",
|
|
53
|
+
"@types/lodash-es": "^4.17.6",
|
|
53
54
|
"@typescript-eslint/eslint-plugin": "^5.12.0",
|
|
54
55
|
"@vue/cli-plugin-babel": "^5.0.1",
|
|
56
|
+
"@vue/eslint-config-prettier": "^7.0.0",
|
|
55
57
|
"@vue/eslint-config-typescript": "^10.0.0",
|
|
56
58
|
"@vue/test-utils": "^2.0.0-rc.17",
|
|
57
|
-
"@vue/vue3-jest": "^
|
|
59
|
+
"@vue/vue3-jest": "^28.0.0",
|
|
58
60
|
"autoprefixer": "^10.4.2",
|
|
59
61
|
"babel-core": "^7.0.0-bridge.0",
|
|
60
|
-
"babel-jest": "^
|
|
61
|
-
"babel-loader": "^8.2.
|
|
62
|
+
"babel-jest": "^28.1.1",
|
|
63
|
+
"babel-loader": "^8.2.5",
|
|
62
64
|
"cross-env": "^7.0.3",
|
|
63
65
|
"css-loader": "^6.6.0",
|
|
64
66
|
"eslint": "^8.9.0",
|
|
65
67
|
"eslint-plugin-vue": "^8.4.1",
|
|
66
|
-
"jest": "^
|
|
68
|
+
"jest": "^28.1.1",
|
|
69
|
+
"jest-environment-jsdom": "^28.1.1",
|
|
70
|
+
"lodash-es": "^4.17.21",
|
|
71
|
+
"prettier": "^2.7.1",
|
|
67
72
|
"rimraf": "^3.0.2",
|
|
68
73
|
"rollup": "^2.67.2",
|
|
69
74
|
"rollup-plugin-dts": "^4.1.0",
|
|
@@ -72,10 +77,10 @@
|
|
|
72
77
|
"rollup-plugin-vue": "^6.0.0",
|
|
73
78
|
"sass": "^1.49.7",
|
|
74
79
|
"sass-loader": "^12.6.0",
|
|
75
|
-
"tailwind-config-viewer": "^1.
|
|
80
|
+
"tailwind-config-viewer": "^1.7.1",
|
|
76
81
|
"tailwindcss": "^3.0.23",
|
|
77
|
-
"ts-jest": "^
|
|
78
|
-
"typescript": "^4.
|
|
82
|
+
"ts-jest": "^28.0.5",
|
|
83
|
+
"typescript": "^4.7.4",
|
|
79
84
|
"vee-validate": "^4.5.9",
|
|
80
85
|
"vue-loader": "^16.8.3",
|
|
81
86
|
"vue-style-loader": "^4.1.3",
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/* Tailwind */
|
|
2
|
+
@tailwind base;
|
|
3
|
+
@tailwind components;
|
|
4
|
+
@tailwind utilities;
|
|
5
|
+
|
|
6
|
+
/*
|
|
7
|
+
* Default theme variables - Frollo branding
|
|
8
|
+
*/
|
|
9
|
+
:root {
|
|
10
|
+
--colorPrimary: #6923ff;
|
|
11
|
+
--colorSecondary: #000;
|
|
12
|
+
--colorTertiary: #fff;
|
|
13
|
+
|
|
14
|
+
--fontFamily: 'Montserrat';
|
|
15
|
+
}
|
|
16
|
+
/*
|
|
17
|
+
* Default font family
|
|
18
|
+
*/
|
|
19
|
+
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,700;1,500&display=swap');
|
|
20
|
+
|
|
21
|
+
/** Typography */
|
|
22
|
+
|
|
23
|
+
@layer base {
|
|
24
|
+
p {
|
|
25
|
+
@apply text-lg font-normal mb-1;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.p2 {
|
|
29
|
+
@apply text-base;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.p-small {
|
|
33
|
+
@apply text-sm;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
h1, .h1 {
|
|
37
|
+
@apply text-2xl font-bold mb-1 lg:text-3xl;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
h2, .h2 {
|
|
41
|
+
@apply text-2xl font-bold mb-1;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
h3, .h3 {
|
|
45
|
+
@apply text-xl font-bold mb-1;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
h4, .h4 {
|
|
49
|
+
@apply text-lg font-bold mb-1;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
h5, .h5 {
|
|
53
|
+
@apply text-base font-bold mb-1;
|
|
54
|
+
}
|
|
55
|
+
h6, .h6 {
|
|
56
|
+
@apply text-base font-bold mb-1;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
$fade-in-animation-duration: 0.35s;
|
|
2
|
+
|
|
3
|
+
.fadeIn-enter-active {
|
|
4
|
+
animation: fadeIn $fade-in-animation-duration;
|
|
5
|
+
transition: opacity $fade-in-animation-duration ease-in;
|
|
6
|
+
}
|
|
7
|
+
.fadeIn-leave-active {
|
|
8
|
+
animation: fadeIn $fade-in-animation-duration reverse;
|
|
9
|
+
transition: opacity $fade-in-animation-duration ease-out;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@keyframes fadeIn {
|
|
13
|
+
from {
|
|
14
|
+
opacity: 0;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
to {
|
|
18
|
+
opacity: 1;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/** Typography */
|
|
2
|
+
|
|
3
|
+
@layer base {
|
|
4
|
+
p {
|
|
5
|
+
@apply text-lg font-normal mb-1;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.p2 {
|
|
9
|
+
@apply text-base;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.p-small {
|
|
13
|
+
@apply text-sm;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
h1, .h1 {
|
|
17
|
+
@apply text-2xl font-bold mb-1 lg:text-3xl;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
h2, .h2 {
|
|
21
|
+
@apply text-2xl font-bold mb-1;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
h3, .h3 {
|
|
25
|
+
@apply text-xl font-bold mb-1;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
h4, .h4 {
|
|
29
|
+
@apply text-lg font-bold mb-1;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
h5, .h5 {
|
|
33
|
+
@apply text-base font-bold mb-1;
|
|
34
|
+
}
|
|
35
|
+
h6, .h6 {
|
|
36
|
+
@apply text-base font-bold mb-1;
|
|
37
|
+
}
|
|
38
|
+
}
|
package/tailwind.config.js
CHANGED
|
@@ -12,8 +12,8 @@ module.exports = {
|
|
|
12
12
|
base: '#4b4b4b',
|
|
13
13
|
light: '#bcbcbc',
|
|
14
14
|
lightest: '#f5f5f5',
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
10: '#f8f8f8',
|
|
16
|
+
20: '#f2f2f2'
|
|
17
17
|
},
|
|
18
18
|
error: '#eb5757',
|
|
19
19
|
success: '#00c48c',
|
|
@@ -25,24 +25,24 @@ module.exports = {
|
|
|
25
25
|
base: ['16px', '1.5'],
|
|
26
26
|
lg: ['18px', '1.5'],
|
|
27
27
|
xl: ['22px', '1.5'],
|
|
28
|
-
'2xl': ['26px', '1.
|
|
29
|
-
'3xl': ['42px', '1.
|
|
28
|
+
'2xl': ['26px', '1.3'],
|
|
29
|
+
'3xl': ['42px', '1.2']
|
|
30
30
|
},
|
|
31
31
|
screens: {
|
|
32
32
|
// @media (min-width: 640px) { ... }
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
sm: '640px',
|
|
34
|
+
md: '768px',
|
|
35
|
+
lg: '1024px',
|
|
36
|
+
xl: '1280px',
|
|
37
37
|
'2xl': '1536px'
|
|
38
38
|
},
|
|
39
39
|
// Extends tailwind's properties
|
|
40
40
|
extend: {
|
|
41
41
|
minWidth: {
|
|
42
|
-
|
|
42
|
+
banner: '420px'
|
|
43
43
|
},
|
|
44
44
|
boxShadow: {
|
|
45
|
-
|
|
45
|
+
card: '0px 1px 7px rgba(0, 0, 0, 0.1714)'
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
}
|
|
@@ -1,25 +1,5 @@
|
|
|
1
1
|
import { PropType } from 'vue';
|
|
2
|
-
|
|
3
|
-
export interface ButtonDefinition {
|
|
4
|
-
text: string;
|
|
5
|
-
background: string;
|
|
6
|
-
border: string;
|
|
7
|
-
}
|
|
8
|
-
export declare type ButtonDefinitionList = {
|
|
9
|
-
[key in ButtonVariantName]: ButtonDefinition;
|
|
10
|
-
};
|
|
11
|
-
export declare type ButtonSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl';
|
|
12
|
-
export declare type ButtonSizes = {
|
|
13
|
-
[key in ButtonSize]: string;
|
|
14
|
-
};
|
|
15
|
-
export declare type ButtonTypeAttribute = 'button' | 'submit' | 'reset';
|
|
16
|
-
export interface FwButtonProps {
|
|
17
|
-
to?: string | object;
|
|
18
|
-
href?: string;
|
|
19
|
-
size?: ButtonSize;
|
|
20
|
-
variant?: ButtonVariantName;
|
|
21
|
-
buttonType?: ButtonTypeAttribute;
|
|
22
|
-
}
|
|
2
|
+
import { ButtonSize, ButtonVariantName, ButtonTypeAttribute } from './index.types';
|
|
23
3
|
declare const _default: import("vue").DefineComponent<{
|
|
24
4
|
/**
|
|
25
5
|
* A `router-link` path or object
|
|
@@ -57,6 +37,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
57
37
|
validator: (value: string) => boolean;
|
|
58
38
|
};
|
|
59
39
|
}, {
|
|
40
|
+
baseClass: import("vue").Ref<string>;
|
|
60
41
|
textColorClass: import("vue").ComputedRef<string>;
|
|
61
42
|
bgColorClass: import("vue").ComputedRef<string>;
|
|
62
43
|
sizeClass: import("vue").ComputedRef<string>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export declare enum ButtonVariantName {
|
|
2
|
+
primary = "primary",
|
|
3
|
+
secondary = "secondary",
|
|
4
|
+
tertiary = "tertiary",
|
|
5
|
+
error = "error",
|
|
6
|
+
success = "success",
|
|
7
|
+
text = "text",
|
|
8
|
+
link = "link"
|
|
9
|
+
}
|
|
10
|
+
export declare interface ButtonDefinition {
|
|
11
|
+
text: string;
|
|
12
|
+
background: string;
|
|
13
|
+
border: string;
|
|
14
|
+
}
|
|
15
|
+
export declare type ButtonDefinitionList = {
|
|
16
|
+
[key in ButtonVariantName]: ButtonDefinition;
|
|
17
|
+
};
|
|
18
|
+
export declare type ButtonSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl';
|
|
19
|
+
export declare type ButtonSizes = {
|
|
20
|
+
[key in ButtonSize]: string;
|
|
21
|
+
};
|
|
22
|
+
export declare type ButtonTypeAttribute = 'button' | 'submit' | 'reset';
|
|
23
|
+
export declare interface FwButtonProps {
|
|
24
|
+
to?: string | object;
|
|
25
|
+
href?: string;
|
|
26
|
+
size?: ButtonSize;
|
|
27
|
+
variant?: ButtonVariantName;
|
|
28
|
+
buttonType?: ButtonTypeAttribute;
|
|
29
|
+
}
|
|
@@ -23,6 +23,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
23
23
|
href: StringConstructor;
|
|
24
24
|
}, {
|
|
25
25
|
componentName: import("vue").ComputedRef<"router-link" | "a" | "div">;
|
|
26
|
+
linkClass: import("vue").Ref<string>;
|
|
26
27
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
27
28
|
/**
|
|
28
29
|
* The header title of the card
|