@quidgest/ui 0.16.58 → 0.16.60

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/dist/ui.scss CHANGED
@@ -1,9 +1,10 @@
1
1
  /*!
2
- * Quidgest UI v0.16.58
2
+ * Quidgest UI v0.16.60
3
3
  * (c) 2026 Quidgest - Consultores de Gestão, S.A.
4
4
  * Released under the MIT License.
5
5
  */
6
6
  @use 'sass:math';
7
+ @use 'sass:map';
7
8
 
8
9
  *,
9
10
  ::before,
@@ -1990,7 +1991,7 @@ $q-carousel-height-md: 300px;
1990
1991
  .q-col-auto {
1991
1992
  flex: 0 0 auto;
1992
1993
  width: auto;
1993
- max-width: none;
1994
+ max-width: 100%;
1994
1995
  }
1995
1996
  @mixin generate-cols($infix: '') {
1996
1997
  @for $i from 1 through 12 {
@@ -2017,9 +2018,6 @@ $q-carousel-height-md: 300px;
2017
2018
  @media (min-width: $breakpoint-xxl) {
2018
2019
  @include generate-cols('-xxl');
2019
2020
  }
2020
- .q-spacer {
2021
- flex: 1 1 0;
2022
- }
2023
2021
  .q-group-box {
2024
2022
  $this: &;
2025
2023
  display: inline-block;
@@ -3559,3 +3557,111 @@ $q-toast-slide-distance: clamp(1rem, 3vw, 1.5rem) !default;
3559
3557
  max-width: 200px;
3560
3558
  }
3561
3559
  }
3560
+ 
3561
+ .q-spacer {
3562
+ flex: 1 1 0;
3563
+ }
3564
+ $q-spacers: (
3565
+ 0: 0,
3566
+ 1: $space-base * 0.25,
3567
+ 2: $space-base * 0.5,
3568
+ 3: $space-base,
3569
+ 4: $space-base * 1.5,
3570
+ 5: $space-base * 3
3571
+ ) !default;
3572
+ $q-breakpoints: (
3573
+ sm: $breakpoint-sm,
3574
+ md: $breakpoint-md,
3575
+ lg: $breakpoint-lg,
3576
+ xl: $breakpoint-xl,
3577
+ xxl: $breakpoint-xxl
3578
+ ) !default;
3579
+ $q-spacing-sides: (
3580
+ null: '',
3581
+
3582
+ t: 't',
3583
+
3584
+ b: 'b',
3585
+
3586
+ l: 'l',
3587
+
3588
+ r: 'r',
3589
+
3590
+ x: 'x',
3591
+
3592
+ y: 'y'
3593
+ ) !default;
3594
+ @mixin q-media-up($breakpoint) {
3595
+ $value: map.get($q-breakpoints, $breakpoint);
3596
+ @if $value {
3597
+ @media (min-width: $value) {
3598
+ @content;
3599
+ }
3600
+ } @else {
3601
+ @warn "Breakpoint `#{$breakpoint}` not found in $q-breakpoints.";
3602
+ }
3603
+ }
3604
+ @mixin q-emit-spacing($property, $side, $value) {
3605
+ @if not $side {
3606
+ #{$property}: $value;
3607
+ } @else if $side == t {
3608
+ #{$property}-top: $value;
3609
+ } @else if $side == b {
3610
+ #{$property}-bottom: $value;
3611
+ } @else if $side == l {
3612
+ #{$property}-left: $value;
3613
+ } @else if $side == r {
3614
+ #{$property}-right: $value;
3615
+ } @else if $side == x {
3616
+ #{$property}-left: $value;
3617
+ #{$property}-right: $value;
3618
+ } @else if $side == y {
3619
+ #{$property}-top: $value;
3620
+ #{$property}-bottom: $value;
3621
+ } @else {
3622
+ @warn "Unknown side `#{$side}` used for spacing generation.";
3623
+ }
3624
+ }
3625
+ @mixin q-generate-responsive-spacing($property, $short) {
3626
+
3627
+ @each $size, $length in $q-spacers {
3628
+ @each $sideKey, $sideSuffix in $q-spacing-sides {
3629
+ .q-#{$short}#{$sideSuffix}-#{$size} {
3630
+ @include q-emit-spacing($property, $sideKey, $length);
3631
+ }
3632
+ }
3633
+ }
3634
+
3635
+ @each $breakpoint, $bpValue in $q-breakpoints {
3636
+ @include q-media-up($breakpoint) {
3637
+ @each $size, $length in $q-spacers {
3638
+ @each $sideKey, $sideSuffix in $q-spacing-sides {
3639
+ .q-#{$short}#{$sideSuffix}-#{$breakpoint}-#{$size} {
3640
+ @include q-emit-spacing($property, $sideKey, $length);
3641
+ }
3642
+ }
3643
+ }
3644
+ }
3645
+ }
3646
+ }
3647
+ @mixin q-generate-margin-auto() {
3648
+
3649
+ @each $sideKey, $sideSuffix in $q-spacing-sides {
3650
+ .q-m#{$sideSuffix}-auto {
3651
+ @include q-emit-spacing(margin, $sideKey, auto);
3652
+ }
3653
+ }
3654
+
3655
+ @each $breakpoint, $bpValue in $q-breakpoints {
3656
+ @include q-media-up($breakpoint) {
3657
+ @each $sideKey, $sideSuffix in $q-spacing-sides {
3658
+ .q-m#{$sideSuffix}-#{$breakpoint}-auto {
3659
+ @include q-emit-spacing(margin, $sideKey, auto);
3660
+ }
3661
+ }
3662
+ }
3663
+ }
3664
+ }
3665
+ @include q-generate-responsive-spacing(margin, m);
3666
+ @include q-generate-responsive-spacing(padding, p);
3667
+ @include q-generate-margin-auto;
@@ -147,6 +147,18 @@ export type DialogButton = {
147
147
  props: QButtonProps;
148
148
  };
149
149
  export type QDialogOptions = {
150
+ /**
151
+ * The size category of the dialog.
152
+ *
153
+ * @category Presentation
154
+ */
155
+ size?: QDialogSize;
156
+ /**
157
+ * True if the dialog window can be closed, false otherwise.
158
+ *
159
+ * @category Behavior
160
+ */
161
+ dismissible?: boolean;
150
162
  /**
151
163
  * Options for input control to add.
152
164
  */
@@ -174,4 +186,18 @@ export type QDialogProviderProps = {
174
186
  */
175
187
  inline?: boolean;
176
188
  };
189
+ export type QDialogHandlers = {
190
+ /**
191
+ * Handler for 'enter' event.
192
+ *
193
+ * @category Behavior
194
+ */
195
+ onEnter: () => void;
196
+ /**
197
+ * Handler for 'leave' event.
198
+ *
199
+ * @category Behavior
200
+ */
201
+ onLeave: () => boolean | void;
202
+ };
177
203
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/QDialog/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEjE,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG;IAChD;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;;;OAIG;IACH,IAAI,CAAC,EAAE,IAAI,CAAA;IAEX;;;;OAIG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IAExB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAA;IAElB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAE1B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAAA;IAE1C;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAE/B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,MAAM,CAAA;IAEnC;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IAEjC;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;;;OAIG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd;;;;OAIG;IACH,KAAK,CAAC,EAAE,kBAAkB,CAAA;IAE1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,aAAa,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IAC1B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,IAAI,CAAC,EAAE,IAAI,CAAA;IAEX;;OAEG;IACH,MAAM,CAAC,EAAE;QAAE,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;IAEnC;;OAEG;IACH,KAAK,EAAE,YAAY,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC5B;;OAEG;IACH,KAAK,CAAC,EAAE,kBAAkB,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;CACjD,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IAClC;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/QDialog/types.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { QDialogProps, QDialogOptions } from '../../components/QDialog/types.ts';
1
+ import { QDialogProps, QDialogOptions, QDialogHandlers } from '../../components/QDialog/types.ts';
2
2
  /**
3
3
  * Manager for dialog models
4
4
  *
5
5
  * @returns Dialog state and functions
6
6
  */
7
7
  export declare function useDialog(): {
8
- addDialog: (props: QDialogProps, id?: string, options?: QDialogOptions) => string;
8
+ addDialog: (props: QDialogProps, id?: string, options?: QDialogOptions, handlers?: QDialogHandlers) => string;
9
9
  removeDialog: (id: string) => void;
10
10
  dialogs: {
11
11
  id: string;
@@ -76,12 +76,18 @@ export declare function useDialog(): {
76
76
  } | undefined;
77
77
  };
78
78
  options?: {
79
+ size?: import('../../components/index.ts').QDialogSize | undefined;
80
+ dismissible?: boolean | undefined;
79
81
  input?: {
80
82
  type: string;
81
83
  placeholder?: string | undefined;
82
84
  validator?: ((value: string) => string | undefined) | undefined;
83
85
  } | undefined;
84
86
  } | undefined;
87
+ handlers?: {
88
+ onEnter: () => void;
89
+ onLeave: () => boolean | void;
90
+ } | undefined;
85
91
  }[];
86
92
  };
87
93
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/composables/useDialog/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AASrF;;;;GAIG;AACH,wBAAgB,SAAS;uBASE,YAAY,OAAO,MAAM,YAAY,cAAc;uBAgBnD,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAas4C,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EADv6C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/composables/useDialog/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,YAAY,EACZ,cAAc,EACd,eAAe,EACf,MAAM,mCAAmC,CAAA;AAS1C;;;;GAIG;AACH,wBAAgB,SAAS;uBAWhB,YAAY,OACd,MAAM,YACD,cAAc,aACb,eAAe;uBAyBD,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAmBm7B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EADp9B"}
@@ -1,21 +1,28 @@
1
- import { reactive as r } from "vue";
2
- import { useId as s } from "../uid.js";
3
- const i = r({ dialogs: [] });
4
- function c() {
5
- function n(e, o, d) {
6
- const t = s(o).value;
7
- return i.dialogs.push({ id: t, props: { ...e, modelValue: !0 }, options: d }), t;
1
+ import { reactive as s } from "vue";
2
+ import { useId as g } from "../uid.js";
3
+ const t = s({ dialogs: [] });
4
+ function m() {
5
+ function r(n, e, u, o) {
6
+ const i = g(e).value;
7
+ return t.dialogs.push({
8
+ id: i,
9
+ props: { ...n, modelValue: !0 },
10
+ options: u,
11
+ handlers: o
12
+ }), o != null && o.onEnter && o.onEnter(), i;
8
13
  }
9
- function a(e) {
10
- const o = i.dialogs.findIndex((d) => d.id === e);
11
- o !== -1 && i.dialogs.splice(o, 1);
14
+ function a(n) {
15
+ var o, i, d;
16
+ const e = t.dialogs.findIndex((l) => l.id === n);
17
+ if (e === -1) return;
18
+ (((d = (i = (o = t.dialogs[e]) == null ? void 0 : o.handlers) == null ? void 0 : i.onLeave) == null ? void 0 : d.call(i)) ?? !0) && t.dialogs.splice(e, 1);
12
19
  }
13
20
  return {
14
- ...i,
15
- addDialog: n,
21
+ ...t,
22
+ addDialog: r,
16
23
  removeDialog: a
17
24
  };
18
25
  }
19
26
  export {
20
- c as useDialog
27
+ m as useDialog
21
28
  };
@@ -1,4 +1,4 @@
1
- import { QDialogProps, QDialogOptions } from '../../components/QDialog/types.ts';
1
+ import { QDialogProps, QDialogOptions, QDialogHandlers } from '../../components/QDialog/types.ts';
2
2
  /**
3
3
  * Represents an instance of a dialog component.
4
4
  */
@@ -15,6 +15,10 @@ export type DialogInstance = {
15
15
  * The options applied to the dialog, conforming to `QDialogOptions`.
16
16
  */
17
17
  options?: QDialogOptions;
18
+ /**
19
+ * Event handlers, conforming to `QDialogHandlers`.
20
+ */
21
+ handlers?: QDialogHandlers;
18
22
  };
19
23
  /**
20
24
  * Represents the state for dialog management.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/composables/useDialog/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAErF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,KAAK,EAAE,YAAY,CAAA;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;CACxB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB;;OAEG;IACH,OAAO,EAAE,cAAc,EAAE,CAAA;CACzB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/composables/useDialog/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,YAAY,EACZ,cAAc,EACd,eAAe,EACf,MAAM,mCAAmC,CAAA;AAE1C;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,KAAK,EAAE,YAAY,CAAA;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAA;CAC1B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACzB;;OAEG;IACH,OAAO,EAAE,cAAc,EAAE,CAAA;CACzB,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@quidgest/ui",
3
3
  "description": "Quidgest's UI framework",
4
- "version": "0.16.58",
4
+ "version": "0.16.60",
5
5
  "private": false,
6
6
  "type": "module",
7
7
  "author": "Quidgest",