@pequity/squirrel 6.0.2 → 6.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/cjs/chunks/p-date-picker.js +1 -0
  2. package/dist/cjs/chunks/p-icon.js +24 -221
  3. package/dist/cjs/chunks/p-inline-date-picker.js +1 -0
  4. package/dist/cjs/p-icon.js +27 -2
  5. package/dist/cjs/p-loading.js +2 -2
  6. package/dist/cjs/p-modal.js +3 -3
  7. package/dist/es/chunks/p-date-picker.js +1 -0
  8. package/dist/es/chunks/p-icon.js +25 -222
  9. package/dist/es/chunks/p-inline-date-picker.js +1 -0
  10. package/dist/es/p-icon.js +27 -2
  11. package/dist/es/p-loading.js +2 -2
  12. package/dist/es/p-modal.js +3 -3
  13. package/dist/squirrel/components/p-checkbox/p-checkbox.vue.d.ts +1 -1
  14. package/dist/squirrel/components/p-date-picker/p-date-picker.vue.d.ts +1 -0
  15. package/dist/squirrel/components/p-drawer/p-drawer.vue.d.ts +1 -1
  16. package/dist/squirrel/components/p-dropdown-select/p-dropdown-select.vue.d.ts +192 -1
  17. package/dist/squirrel/components/p-file-upload/p-file-upload.vue.d.ts +3 -1
  18. package/dist/squirrel/components/p-icon/p-icon.types.d.ts +26 -1
  19. package/dist/squirrel/components/p-icon/p-icon.vue.d.ts +3 -3
  20. package/dist/squirrel/components/p-loading/p-loading.vue.d.ts +3 -1
  21. package/dist/squirrel/components/p-modal/p-modal.vue.d.ts +7 -4
  22. package/dist/squirrel/components/p-pagination-info/p-pagination-info.vue.d.ts +1 -1
  23. package/dist/squirrel/components/p-select-list/p-select-list.vue.d.ts +191 -1
  24. package/dist/squirrel/components/p-table/p-table.vue.d.ts +4 -1
  25. package/dist/squirrel.css +20 -20
  26. package/package.json +19 -19
  27. package/squirrel/components/p-dropdown/p-dropdown.vue +1 -0
  28. package/squirrel/components/p-icon/p-icon.stories.js +1 -1
  29. package/squirrel/components/p-icon/p-icon.types.ts +26 -1
  30. package/squirrel/components/p-icon/p-icon.vue +4 -4
  31. package/squirrel/components/p-loading/p-loading.vue +1 -1
  32. package/squirrel/components/p-modal/p-modal.vue +1 -1
@@ -1,7 +1,32 @@
1
1
  export declare const P_ICON_ALIASES: {
2
2
  readonly delete: "octicon:trash-24";
3
3
  readonly edit: "simple-line-icons:pencil";
4
- readonly send: "fa:paper-plane";
4
+ readonly send: "mingcute:send-plane-fill";
5
5
  readonly settings: "heroicons:cog-8-tooth-20-solid";
6
+ readonly empty: "ph:empty";
7
+ readonly 'chevron-left': "material-symbols:chevron-left-rounded";
8
+ readonly 'chevron-right': "material-symbols:chevron-right-rounded";
9
+ readonly 'chevron-up': "ph:caret-up";
10
+ readonly 'chevron-down': "ph:caret-down";
11
+ readonly 'ok-circle': "material-symbols:check-circle";
12
+ readonly 'cancel-circle': "material-symbols:cancel";
13
+ readonly ok: "material-symbols:check";
14
+ readonly cancel: "material-symbols:close";
15
+ readonly 'ok-bold': "fa:check";
16
+ readonly 'cancel-bold': "fa:close";
17
+ readonly archive: "solar:archive-outline";
18
+ readonly lock: "material-symbols:lock";
19
+ readonly 'drag-horizontal': "ci:drag-horizontal";
20
+ readonly email: "tabler:mail-filled";
21
+ readonly location: "gridicons:location";
22
+ readonly calendar: "mdi:calendar-today";
23
+ readonly save: "material-symbols:save-rounded";
24
+ readonly copy: "ph:copy";
25
+ readonly plus: "ic:outline-plus";
26
+ readonly add: "ic:outline-plus";
27
+ readonly more: "lineicons:more-alt";
28
+ readonly filters: "mage:filter";
29
+ readonly 'bar-chart': "material-symbols:bar-chart-4-bars-rounded";
30
+ readonly list: "material-symbols:format-list-bulleted";
6
31
  };
7
32
  export type PIconAlias = keyof typeof P_ICON_ALIASES;
@@ -1,8 +1,8 @@
1
1
  import 'iconify-icon';
2
2
  import { type PIconAlias } from './p-icon.types';
3
- import { type IconifyIconAttributes } from 'iconify-icon';
4
- interface Props extends /* @vue-ignore */ Omit<IconifyIconAttributes, 'icon'> {
5
- icon: IconifyIconAttributes['icon'] | PIconAlias;
3
+ import { type IconifyIconProperties } from 'iconify-icon';
4
+ interface Props extends /* @vue-ignore */ IconifyIconProperties {
5
+ icon: PIconAlias | (string & {});
6
6
  }
7
7
  declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
8
  export default _default;
@@ -1,2 +1,4 @@
1
- declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {
2
+ dimsReference: HTMLDivElement;
3
+ }, any>;
2
4
  export default _default;
@@ -2,10 +2,10 @@ import { type PropType, type StyleValue } from 'vue';
2
2
  declare function __VLS_template(): {
3
3
  attrs: Partial<{}>;
4
4
  slots: {
5
- "title-wrapper"?(_: {}): any;
6
- "content-wrapper"?(_: {}): any;
5
+ 'title-wrapper'?(_: {}): any;
6
+ 'content-wrapper'?(_: {}): any;
7
7
  default?(_: {}): any;
8
- "footer-wrapper"?(_: {}): any;
8
+ 'footer-wrapper'?(_: {}): any;
9
9
  footer?(_: {}): any;
10
10
  };
11
11
  refs: {
@@ -205,7 +205,10 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
205
205
  modalStyle: StyleValue;
206
206
  bgInClass: string;
207
207
  bgOutClass: string;
208
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
208
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {
209
+ pmWrapper: HTMLDivElement;
210
+ pm: HTMLDivElement;
211
+ }, any>;
209
212
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
210
213
  export default _default;
211
214
  type __VLS_WithTemplateSlots<T, S> = T & {
@@ -1,7 +1,7 @@
1
1
  declare function __VLS_template(): {
2
2
  attrs: Partial<{}>;
3
3
  slots: {
4
- "no-results"?(_: {}): any;
4
+ 'no-results'?(_: {}): any;
5
5
  };
6
6
  refs: {};
7
7
  rootEl: any;
@@ -488,7 +488,197 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
488
488
  topSectionClass: string;
489
489
  closePopperOnSelect: boolean;
490
490
  focusSearchOnMount: boolean;
491
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
491
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {
492
+ formControl: HTMLDivElement;
493
+ actionsContainer: HTMLDivElement;
494
+ inputSearch: import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
495
+ modelValue: {
496
+ type: StringConstructor;
497
+ default: string;
498
+ };
499
+ size: {
500
+ type: PropType<import("../..").InputSize>;
501
+ default: string;
502
+ validator(value: import("../..").InputSize): boolean;
503
+ };
504
+ showEnterIcon: {
505
+ type: BooleanConstructor;
506
+ default: boolean;
507
+ };
508
+ }>> & Readonly<{
509
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
510
+ onEnter?: ((...args: any[]) => any) | undefined;
511
+ }>, {}, {
512
+ query: string;
513
+ showEnterIconOnFocus: boolean;
514
+ }, {
515
+ searchIconClasses(): string;
516
+ enterIconClasses(): string;
517
+ clearIconClasses(): string;
518
+ }, {
519
+ clearSearch(): void;
520
+ keydownEnter(): void;
521
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "enter")[], import("vue").PublicProps, {
522
+ size: "sm" | "md" | "lg";
523
+ modelValue: string;
524
+ showEnterIcon: boolean;
525
+ }, true, {}, {}, {
526
+ PInput: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
527
+ modelValue: {
528
+ type: (StringConstructor | NumberConstructor)[];
529
+ default: string;
530
+ };
531
+ type: {
532
+ type: PropType<string>;
533
+ default: string;
534
+ validator(value: string): boolean;
535
+ };
536
+ label: {
537
+ type: StringConstructor;
538
+ default: string;
539
+ };
540
+ errorMsg: {
541
+ type: StringConstructor;
542
+ default: string;
543
+ };
544
+ required: {
545
+ type: BooleanConstructor;
546
+ default: boolean;
547
+ };
548
+ rounded: {
549
+ type: BooleanConstructor;
550
+ default: boolean;
551
+ };
552
+ }>, {}, {}, {
553
+ attrs(): {
554
+ [x: string]: unknown;
555
+ };
556
+ style(): StyleValue;
557
+ }, {}, import("vue").DefineComponent<import("vue").ExtractPropTypes<{
558
+ size: {
559
+ type: PropType<import("../..").InputSize>;
560
+ default: string;
561
+ validator(value: import("../..").InputSize): boolean;
562
+ };
563
+ errorMsg: {
564
+ type: StringConstructor;
565
+ default: string;
566
+ };
567
+ required: {
568
+ type: BooleanConstructor;
569
+ default: boolean;
570
+ };
571
+ rounded: {
572
+ type: BooleanConstructor;
573
+ default: boolean;
574
+ };
575
+ }>, {}, {
576
+ errorMsgClasses: string;
577
+ }, {
578
+ inputClasses(): string;
579
+ labelClasses(): string;
580
+ selectClasses(): string;
581
+ textareaClasses(): string;
582
+ }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
583
+ size: {
584
+ type: PropType<import("../..").InputSize>;
585
+ default: string;
586
+ validator(value: import("../..").InputSize): boolean;
587
+ };
588
+ errorMsg: {
589
+ type: StringConstructor;
590
+ default: string;
591
+ };
592
+ required: {
593
+ type: BooleanConstructor;
594
+ default: boolean;
595
+ };
596
+ rounded: {
597
+ type: BooleanConstructor;
598
+ default: boolean;
599
+ };
600
+ }>> & Readonly<{}>, {
601
+ size: "sm" | "md" | "lg";
602
+ rounded: boolean;
603
+ required: boolean;
604
+ errorMsg: string;
605
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
606
+ modelValue: {
607
+ type: (StringConstructor | NumberConstructor)[];
608
+ default: string;
609
+ };
610
+ type: {
611
+ type: PropType<string>;
612
+ default: string;
613
+ validator(value: string): boolean;
614
+ };
615
+ label: {
616
+ type: StringConstructor;
617
+ default: string;
618
+ };
619
+ errorMsg: {
620
+ type: StringConstructor;
621
+ default: string;
622
+ };
623
+ required: {
624
+ type: BooleanConstructor;
625
+ default: boolean;
626
+ };
627
+ rounded: {
628
+ type: BooleanConstructor;
629
+ default: boolean;
630
+ };
631
+ }>> & Readonly<{
632
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
633
+ }>, {
634
+ type: string;
635
+ label: string;
636
+ rounded: boolean;
637
+ required: boolean;
638
+ modelValue: string | number;
639
+ errorMsg: string;
640
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
641
+ } & import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
642
+ P: {};
643
+ B: {};
644
+ D: {};
645
+ C: {};
646
+ M: {};
647
+ Defaults: {};
648
+ }, Readonly<import("vue").ExtractPropTypes<{
649
+ modelValue: {
650
+ type: StringConstructor;
651
+ default: string;
652
+ };
653
+ size: {
654
+ type: PropType<import("../..").InputSize>;
655
+ default: string;
656
+ validator(value: import("../..").InputSize): boolean;
657
+ };
658
+ showEnterIcon: {
659
+ type: BooleanConstructor;
660
+ default: boolean;
661
+ };
662
+ }>> & Readonly<{
663
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
664
+ onEnter?: ((...args: any[]) => any) | undefined;
665
+ }>, {}, {
666
+ query: string;
667
+ showEnterIconOnFocus: boolean;
668
+ }, {
669
+ searchIconClasses(): string;
670
+ enterIconClasses(): string;
671
+ clearIconClasses(): string;
672
+ }, {
673
+ clearSearch(): void;
674
+ keydownEnter(): void;
675
+ }, {
676
+ size: "sm" | "md" | "lg";
677
+ modelValue: string;
678
+ showEnterIcon: boolean;
679
+ }> | null;
680
+ virtualizerRef: HTMLDivElement;
681
+ }, any>;
492
682
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
493
683
  export default _default;
494
684
  type __VLS_WithTemplateSlots<T, S> = T & {
@@ -45,7 +45,10 @@ declare const __VLS_component: import("vue").DefineComponent<Props, {
45
45
  paddingTop: number;
46
46
  paddingBottom: number;
47
47
  };
48
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, HTMLDivElement>;
48
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {
49
+ scrollWrapper: HTMLDivElement;
50
+ tbodyElement: HTMLTableSectionElement;
51
+ }, HTMLDivElement>;
49
52
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
50
53
  export default _default;
51
54
  type __VLS_WithTemplateSlots<T, S> = T & {
package/dist/squirrel.css CHANGED
@@ -339,12 +339,12 @@ to {
339
339
  .bg-info-circle-icon[data-v-804e74f5] {
340
340
  background-image: url("data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_4002_33291)'%3e%3cpath%20d='M0.5%206C0.5%207.45869%201.07946%208.85764%202.11091%209.88909C3.14236%2010.9205%204.54131%2011.5%206%2011.5C7.45869%2011.5%208.85764%2010.9205%209.88909%209.88909C10.9205%208.85764%2011.5%207.45869%2011.5%206C11.5%204.54131%2010.9205%203.14236%209.88909%202.11091C8.85764%201.07946%207.45869%200.5%206%200.5C4.54131%200.5%203.14236%201.07946%202.11091%202.11091C1.07946%203.14236%200.5%204.54131%200.5%206Z'%20stroke='%231A123B'%20stroke-miterlimit='10'/%3e%3cpath%20d='M6.5%203.5H5.5V2.5H6.5V3.5Z'%20fill='%231A123B'/%3e%3cpath%20d='M4.5%205H6V9M4.5%208.5H7.5'%20stroke='%231A123B'%20stroke-miterlimit='10'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_4002_33291'%3e%3crect%20width='12'%20height='12'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e");
341
341
  }
342
- .fadeInDown[data-v-b4ee3729] {
342
+ .fadeInDown[data-v-245e3308] {
343
343
  animation-duration: 0.4s;
344
344
  animation-fill-mode: both;
345
- animation-name: fadeInDown-b4ee3729;
345
+ animation-name: fadeInDown-245e3308;
346
346
  }
347
- @keyframes fadeInDown-b4ee3729 {
347
+ @keyframes fadeInDown-245e3308 {
348
348
  0% {
349
349
  opacity: 0;
350
350
  transform: translate3d(0, -100%, 0);
@@ -354,12 +354,12 @@ to {
354
354
  transform: none;
355
355
  }
356
356
  }
357
- .fadeOutUp[data-v-b4ee3729] {
357
+ .fadeOutUp[data-v-245e3308] {
358
358
  animation-duration: 0.25s;
359
359
  animation-fill-mode: both;
360
- animation-name: fadeOutUp-b4ee3729;
360
+ animation-name: fadeOutUp-245e3308;
361
361
  }
362
- @keyframes fadeOutUp-b4ee3729 {
362
+ @keyframes fadeOutUp-245e3308 {
363
363
  0% {
364
364
  opacity: 1;
365
365
  }
@@ -367,33 +367,33 @@ to {
367
367
  opacity: 0;
368
368
  transform: translate3d(0, -100%, 0);
369
369
  }
370
- }.pm[data-v-5fd440a3] {
370
+ }.pm[data-v-c3379c94] {
371
371
  width: calc(100% - 32px);
372
372
  min-width: 110px;
373
- max-width: var(--4895a587);
373
+ max-width: var(--9a05239e);
374
374
  max-height: calc(100vh - 32px);
375
375
  }
376
- .fadeIn[data-v-5fd440a3] {
376
+ .fadeIn[data-v-c3379c94] {
377
377
  animation-duration: 0.4s;
378
- animation-name: fadeInFrames-5fd440a3;
378
+ animation-name: fadeInFrames-c3379c94;
379
379
  animation-fill-mode: both;
380
380
  }
381
- .fadeOut[data-v-5fd440a3] {
381
+ .fadeOut[data-v-c3379c94] {
382
382
  animation-duration: 0.2s;
383
- animation-name: fadeOutFrames-5fd440a3;
383
+ animation-name: fadeOutFrames-c3379c94;
384
384
  animation-fill-mode: both;
385
385
  }
386
- .slideInTop[data-v-5fd440a3] {
386
+ .slideInTop[data-v-c3379c94] {
387
387
  animation-duration: 0.4s;
388
- animation-name: fadeInFrames-5fd440a3,slideInTopFrames-5fd440a3;
388
+ animation-name: fadeInFrames-c3379c94,slideInTopFrames-c3379c94;
389
389
  animation-fill-mode: both;
390
390
  }
391
- .slideOutTop[data-v-5fd440a3] {
391
+ .slideOutTop[data-v-c3379c94] {
392
392
  animation-duration: 0.2s;
393
- animation-name: fadeOutFrames-5fd440a3,slideOutTopFrames-5fd440a3;
393
+ animation-name: fadeOutFrames-c3379c94,slideOutTopFrames-c3379c94;
394
394
  animation-fill-mode: both;
395
395
  }
396
- @keyframes slideInTopFrames-5fd440a3 {
396
+ @keyframes slideInTopFrames-c3379c94 {
397
397
  from {
398
398
  transform: translate(0, -12px);
399
399
  animation-timing-function: cubic-bezier(0, 0, 0, 1);
@@ -402,7 +402,7 @@ to {
402
402
  transform: translate(0, 0);
403
403
  }
404
404
  }
405
- @keyframes slideOutTopFrames-5fd440a3 {
405
+ @keyframes slideOutTopFrames-c3379c94 {
406
406
  from {
407
407
  transform: translate(0, 0);
408
408
  animation-timing-function: cubic-bezier(0.33, 0, 0.67, 1);
@@ -411,7 +411,7 @@ to {
411
411
  transform: translate(0, -12px);
412
412
  }
413
413
  }
414
- @keyframes fadeInFrames-5fd440a3 {
414
+ @keyframes fadeInFrames-c3379c94 {
415
415
  from {
416
416
  opacity: 0;
417
417
  animation-timing-function: cubic-bezier(0, 0, 1, 1);
@@ -420,7 +420,7 @@ to {
420
420
  opacity: 1;
421
421
  }
422
422
  }
423
- @keyframes fadeOutFrames-5fd440a3 {
423
+ @keyframes fadeOutFrames-c3379c94 {
424
424
  from {
425
425
  opacity: 1;
426
426
  animation-timing-function: cubic-bezier(0.33, 0, 0.67, 1);
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@pequity/squirrel",
3
3
  "description": "Squirrel component library",
4
- "version": "6.0.2",
5
- "packageManager": "pnpm@9.15.0",
4
+ "version": "6.0.4",
5
+ "packageManager": "pnpm@9.15.3",
6
6
  "type": "module",
7
7
  "scripts": {
8
8
  "preinstall": "npx only-allow pnpm",
@@ -37,7 +37,7 @@
37
37
  "module": "./dist/es/index.js",
38
38
  "peerDependencies": {
39
39
  "@tanstack/vue-virtual": "^3.8.3",
40
- "@vuepic/vue-datepicker": "^10.0.0",
40
+ "@vuepic/vue-datepicker": "^11.0.1",
41
41
  "dayjs": "^1.11.12",
42
42
  "floating-vue": "^5.2.2",
43
43
  "lodash-es": "^4.17.21",
@@ -49,7 +49,7 @@
49
49
  "devDependencies": {
50
50
  "@commitlint/cli": "^19.6.1",
51
51
  "@commitlint/config-conventional": "^19.6.0",
52
- "@pequity/eslint-config": "^1.0.3",
52
+ "@pequity/eslint-config": "^1.0.4",
53
53
  "@playwright/test": "^1.49.1",
54
54
  "@semantic-release/changelog": "^6.0.3",
55
55
  "@semantic-release/git": "^10.0.1",
@@ -61,48 +61,48 @@
61
61
  "@storybook/blocks": "^8.4.7",
62
62
  "@storybook/manager-api": "^8.4.7",
63
63
  "@storybook/test": "^8.4.7",
64
- "@storybook/test-runner": "^0.20.1",
64
+ "@storybook/test-runner": "^0.21.0",
65
65
  "@storybook/theming": "^8.4.7",
66
66
  "@storybook/vue3": "^8.4.7",
67
67
  "@storybook/vue3-vite": "^8.4.7",
68
68
  "@tanstack/vue-virtual": "3.11.2",
69
69
  "@types/jsdom": "^21.1.7",
70
70
  "@types/lodash-es": "^4.17.12",
71
- "@types/node": "^22.10.2",
71
+ "@types/node": "^22.10.5",
72
72
  "@vitejs/plugin-vue": "^5.2.1",
73
73
  "@vitest/coverage-v8": "^2.1.8",
74
74
  "@vue/compiler-sfc": "3.5.13",
75
75
  "@vue/test-utils": "^2.4.6",
76
- "@vuepic/vue-datepicker": "10.0.0",
76
+ "@vuepic/vue-datepicker": "11.0.1",
77
77
  "autoprefixer": "^10.4.20",
78
78
  "dayjs": "1.11.13",
79
79
  "eslint": "^9.17.0",
80
- "eslint-plugin-storybook": "^0.11.1",
80
+ "eslint-plugin-storybook": "^0.11.2",
81
81
  "floating-vue": "5.2.2",
82
- "glob": "^11.0.0",
82
+ "glob": "^11.0.1",
83
83
  "husky": "^9.1.7",
84
- "iconify-icon": "^2.2.0",
85
- "jsdom": "^25.0.1",
86
- "lint-staged": "^15.2.11",
84
+ "iconify-icon": "^2.3.0",
85
+ "jsdom": "^26.0.0",
86
+ "lint-staged": "^15.3.0",
87
87
  "lodash-es": "4.17.21",
88
88
  "make-coverage-badge": "^1.2.0",
89
89
  "postcss": "^8.4.49",
90
- "prettier": "^3.3.3",
90
+ "prettier": "^3.4.2",
91
91
  "prettier-plugin-tailwindcss": "^0.6.9",
92
92
  "resolve-tspaths": "^0.8.23",
93
93
  "rimraf": "^6.0.1",
94
- "sass": "^1.83.0",
95
- "semantic-release": "^24.2.0",
94
+ "sass": "^1.83.1",
95
+ "semantic-release": "^24.2.1",
96
96
  "storybook": "^8.4.7",
97
97
  "svgo": "^3.3.2",
98
- "tailwindcss": "^3.4.16",
99
- "typescript": "5.6.3",
100
- "vite": "^6.0.3",
98
+ "tailwindcss": "^3.4.17",
99
+ "typescript": "5.7.3",
100
+ "vite": "^6.0.7",
101
101
  "vitest": "^2.1.8",
102
102
  "vue": "3.5.13",
103
103
  "vue-currency-input": "3.1.0",
104
104
  "vue-router": "4.5.0",
105
105
  "vue-toastification": "2.0.0-rc.5",
106
- "vue-tsc": "2.1.10"
106
+ "vue-tsc": "2.2.0"
107
107
  }
108
108
  }
@@ -1,5 +1,6 @@
1
1
  <template>
2
2
  <VDropdown ref="vPopper" v-bind="{ ...defaultAttrs, ...$attrs }" @show="onShow" @hide="destroy">
3
+ <!-- @vue-expect-error -->
3
4
  <template v-for="(_, slot) in $slots" #[slot]="scope">
4
5
  <slot :name="slot" v-bind="scope || {}" />
5
6
  </template>
@@ -105,7 +105,7 @@ export const AllIconAliases = {
105
105
  return { args, P_ICON_ALIASES };
106
106
  },
107
107
  template: `
108
- <div class="mt-2 flex w-full gap-4">
108
+ <div class="mt-2 flex flex-wrap w-full gap-4">
109
109
  <div
110
110
  v-for="(iconClass, iconAlias) in P_ICON_ALIASES"
111
111
  :key="iconAlias"
@@ -1,8 +1,33 @@
1
1
  export const P_ICON_ALIASES = {
2
2
  delete: 'octicon:trash-24',
3
3
  edit: 'simple-line-icons:pencil',
4
- send: 'fa:paper-plane',
4
+ send: 'mingcute:send-plane-fill',
5
5
  settings: 'heroicons:cog-8-tooth-20-solid',
6
+ empty: 'ph:empty',
7
+ 'chevron-left': 'material-symbols:chevron-left-rounded',
8
+ 'chevron-right': 'material-symbols:chevron-right-rounded',
9
+ 'chevron-up': 'ph:caret-up',
10
+ 'chevron-down': 'ph:caret-down',
11
+ 'ok-circle': 'material-symbols:check-circle',
12
+ 'cancel-circle': 'material-symbols:cancel',
13
+ ok: 'material-symbols:check',
14
+ cancel: 'material-symbols:close',
15
+ 'ok-bold': 'fa:check',
16
+ 'cancel-bold': 'fa:close',
17
+ archive: 'solar:archive-outline',
18
+ lock: 'material-symbols:lock',
19
+ 'drag-horizontal': 'ci:drag-horizontal',
20
+ email: 'tabler:mail-filled',
21
+ location: 'gridicons:location',
22
+ calendar: 'mdi:calendar-today',
23
+ save: 'material-symbols:save-rounded',
24
+ copy: 'ph:copy',
25
+ plus: 'ic:outline-plus',
26
+ add: 'ic:outline-plus',
27
+ more: 'lineicons:more-alt',
28
+ filters: 'mage:filter',
29
+ 'bar-chart': 'material-symbols:bar-chart-4-bars-rounded',
30
+ list: 'material-symbols:format-list-bulleted',
6
31
  } as const;
7
32
 
8
33
  export type PIconAlias = keyof typeof P_ICON_ALIASES;
@@ -1,19 +1,19 @@
1
1
  <template>
2
- <iconify-icon v-bind="{ ...$props, icon: isPIcon(icon) ? P_ICON_ALIASES[icon] : icon }" />
2
+ <iconify-icon :icon="isPIcon(icon) ? P_ICON_ALIASES[icon] : icon" />
3
3
  </template>
4
4
 
5
5
  <script setup lang="ts">
6
6
  import 'iconify-icon';
7
7
  import { P_ICON_ALIASES, type PIconAlias } from '@squirrel/components/p-icon/p-icon.types';
8
- import { type IconifyIconAttributes } from 'iconify-icon';
8
+ import { type IconifyIconProperties } from 'iconify-icon';
9
9
 
10
10
  defineOptions({
11
11
  name: 'PIcon',
12
12
  });
13
13
 
14
14
  // eslint-disable-next-line @typescript-eslint/consistent-type-definitions
15
- interface Props extends /* @vue-ignore */ Omit<IconifyIconAttributes, 'icon'> {
16
- icon: IconifyIconAttributes['icon'] | PIconAlias;
15
+ interface Props extends /* @vue-ignore */ IconifyIconProperties {
16
+ icon: PIconAlias | (string & {});
17
17
  }
18
18
 
19
19
  const isPIcon = (icon: string): icon is PIconAlias => !!P_ICON_ALIASES[icon as PIconAlias];
@@ -3,7 +3,7 @@
3
3
  <Transition name="pm-backdrop-transition" enter-active-class="fadeInDown" leave-active-class="fadeOutUp">
4
4
  <div
5
5
  v-if="show"
6
- class="fixed left-0 top-0 z-[120] flex w-full justify-center"
6
+ class="fixed left-0 top-0 z-[9999] flex w-full justify-center"
7
7
  aria-live="polite"
8
8
  aria-busy="true"
9
9
  >
@@ -60,7 +60,7 @@
60
60
  </div>
61
61
  </slot>
62
62
  <slot name="footer-wrapper">
63
- <div v-if="$slots['footer']" class="px-8 pt-6">
63
+ <div v-if="$slots.footer" class="px-8 pt-6">
64
64
  <slot name="footer"></slot>
65
65
  </div>
66
66
  </slot>