@quidgest/ui 0.5.13 → 0.5.15

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 CHANGED
@@ -1,6 +1,6 @@
1
- # Quidgest UI
1
+ # @quidgest/ui
2
2
 
3
- Quidgest Vue 3 component framework.
3
+ Quidgest's UI framework.
4
4
 
5
5
  ## Features
6
6
 
@@ -42,7 +42,7 @@ import framework from './plugins/quidgest-ui'
42
42
  createApp(App).use(framework).mount('#app')
43
43
  ```
44
44
 
45
- Once installed, the components become globally available and can be used like so:
45
+ Once installed, components can be used like so:
46
46
 
47
47
  ```ts
48
48
  <template>
@@ -50,6 +50,8 @@ Once installed, the components become globally available and can be used like so
50
50
  </template>
51
51
 
52
52
  <script setup lang="ts">
53
+ import { QButton } from '@quidgest/ui'
54
+
53
55
  function handleClick() {
54
56
  console.log("Parallel lines have so much in common. It's a shame they'll never meet.")
55
57
  }
package/dist/index.d.ts CHANGED
@@ -74,6 +74,8 @@ declare type ComponentDefaults = Record<string | symbol, unknown>;
74
74
 
75
75
  export declare function createFramework(config?: FrameworkConfig): Plugin_2;
76
76
 
77
+ declare const DEFAULT_ICONS: Record<string, Icon>;
78
+
77
79
  export declare const defaultDarkColorScheme: ColorScheme;
78
80
 
79
81
  export declare const defaultLightColorScheme: ColorScheme;
@@ -106,15 +108,7 @@ export declare type Icon = {
106
108
  size?: number;
107
109
  };
108
110
 
109
- export declare type InputSize = 'mini' | 'small' | 'medium' | 'large' | 'x-large' | 'xx-large' | 'block';
110
-
111
- export declare type ListItem = {
112
- [key: string]: any;
113
- icon?: Icon;
114
- selected?: boolean;
115
- group?: string;
116
- disabled?: boolean;
117
- };
111
+ declare type Icons = typeof DEFAULT_ICONS;
118
112
 
119
113
  declare type Placement = 'top' | 'bottom' | 'left' | 'right';
120
114
 
@@ -785,7 +779,7 @@ export declare const QInput: {
785
779
  $: ComponentInternalInstance;
786
780
  $data: {};
787
781
  $props: {
788
- size?: InputSize | undefined;
782
+ size?: QInputSize | undefined;
789
783
  disabled?: boolean | undefined;
790
784
  readonly?: boolean | undefined;
791
785
  style?: unknown;
@@ -848,7 +842,7 @@ export declare const QInput: {
848
842
  $el: any;
849
843
  $options: ComponentOptionsBase<Readonly<ExtractPropTypes<{
850
844
  size: {
851
- type: PropType<InputSize>;
845
+ type: PropType<QInputSize>;
852
846
  default: string;
853
847
  };
854
848
  disabled: {
@@ -860,7 +854,7 @@ export declare const QInput: {
860
854
  default: boolean;
861
855
  };
862
856
  }>>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
863
- size: InputSize;
857
+ size: QInputSize;
864
858
  disabled: boolean;
865
859
  readonly: boolean;
866
860
  }, {}, string, {}> & {
@@ -885,7 +879,7 @@ export declare const QInput: {
885
879
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: WatchOptions<boolean> | undefined): WatchStopHandle;
886
880
  } & Readonly<ExtractPropTypes<{
887
881
  size: {
888
- type: PropType<InputSize>;
882
+ type: PropType<QInputSize>;
889
883
  default: string;
890
884
  };
891
885
  disabled: {
@@ -902,7 +896,7 @@ export declare const QInput: {
902
896
  __isSuspense?: undefined;
903
897
  } & ComponentOptionsBase<Readonly<ExtractPropTypes<{
904
898
  size: {
905
- type: PropType<InputSize>;
899
+ type: PropType<QInputSize>;
906
900
  default: string;
907
901
  };
908
902
  disabled: {
@@ -914,7 +908,7 @@ export declare const QInput: {
914
908
  default: boolean;
915
909
  };
916
910
  }>>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
917
- size: InputSize;
911
+ size: QInputSize;
918
912
  disabled: boolean;
919
913
  readonly: boolean;
920
914
  }, {}, string, {}> & VNodeProps & AllowedComponentProps & ComponentCustomProps & (new () => {
@@ -925,6 +919,23 @@ export declare const QInput: {
925
919
  };
926
920
  });
927
921
 
922
+ export declare type QInputProps = {
923
+ /**
924
+ * The size category of the input.
925
+ */
926
+ size?: QInputSize;
927
+ /**
928
+ * Whether the input is readonly.
929
+ */
930
+ readonly?: boolean;
931
+ /**
932
+ * Whether the input is disabled.
933
+ */
934
+ disabled?: boolean;
935
+ };
936
+
937
+ export declare type QInputSize = 'mini' | 'small' | 'medium' | 'large' | 'x-large' | 'xx-large' | 'block';
938
+
928
939
  export declare const QLineLoader: DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{}>>, {}, {}>;
929
940
 
930
941
  export declare const QList: DefineComponent<{
@@ -936,11 +947,15 @@ export declare const QList: DefineComponent<{
936
947
  default: undefined;
937
948
  };
938
949
  items: {
939
- type: PropType<ListItem[]>;
950
+ type: PropType<(Omit<QListItemProps, "label" | "value"> & {
951
+ [key: string]: any;
952
+ })[]>;
940
953
  required: true;
941
954
  };
942
955
  groups: {
943
- type: PropType<QListItemGroupProps[]>;
956
+ type: PropType<(QListItemGroupProps & {
957
+ id: string;
958
+ })[]>;
944
959
  default: () => never[];
945
960
  };
946
961
  itemValue: {
@@ -964,11 +979,15 @@ export declare const QList: DefineComponent<{
964
979
  default: undefined;
965
980
  };
966
981
  items: {
967
- type: PropType<ListItem[]>;
982
+ type: PropType<(Omit<QListItemProps, "label" | "value"> & {
983
+ [key: string]: any;
984
+ })[]>;
968
985
  required: true;
969
986
  };
970
987
  groups: {
971
- type: PropType<QListItemGroupProps[]>;
988
+ type: PropType<(QListItemGroupProps & {
989
+ id: string;
990
+ })[]>;
972
991
  default: () => never[];
973
992
  };
974
993
  itemValue: {
@@ -983,7 +1002,9 @@ export declare const QList: DefineComponent<{
983
1002
  "onUpdate:modelValue"?: ((value: Primitive) => any) | undefined;
984
1003
  }, {
985
1004
  modelValue: Primitive;
986
- groups: QListItemGroupProps[];
1005
+ groups: (QListItemGroupProps & {
1006
+ id: string;
1007
+ })[];
987
1008
  itemValue: string;
988
1009
  itemLabel: string;
989
1010
  }, {}>;
@@ -1065,7 +1086,6 @@ export declare const QListItemGroup: {
1065
1086
  $props: {
1066
1087
  title?: string | undefined;
1067
1088
  disabled?: boolean | undefined;
1068
- id?: string | undefined;
1069
1089
  style?: unknown;
1070
1090
  class?: unknown;
1071
1091
  key?: string | number | symbol | undefined;
@@ -1133,14 +1153,9 @@ export declare const QListItemGroup: {
1133
1153
  type: PropType<boolean>;
1134
1154
  default: boolean;
1135
1155
  };
1136
- id: {
1137
- type: PropType<string>;
1138
- default: () => string;
1139
- };
1140
1156
  }>>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
1141
1157
  title: string;
1142
1158
  disabled: boolean;
1143
- id: string;
1144
1159
  }, {}, string, {}> & {
1145
1160
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
1146
1161
  created?: ((() => void) | (() => void)[]) | undefined;
@@ -1170,10 +1185,6 @@ export declare const QListItemGroup: {
1170
1185
  type: PropType<boolean>;
1171
1186
  default: boolean;
1172
1187
  };
1173
- id: {
1174
- type: PropType<string>;
1175
- default: () => string;
1176
- };
1177
1188
  }>> & ShallowUnwrapRef<{}> & {} & ComponentCustomProperties & {};
1178
1189
  __isFragment?: undefined;
1179
1190
  __isTeleport?: undefined;
@@ -1187,14 +1198,9 @@ export declare const QListItemGroup: {
1187
1198
  type: PropType<boolean>;
1188
1199
  default: boolean;
1189
1200
  };
1190
- id: {
1191
- type: PropType<string>;
1192
- default: () => string;
1193
- };
1194
1201
  }>>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
1195
1202
  title: string;
1196
1203
  disabled: boolean;
1197
- id: string;
1198
1204
  }, {}, string, {}> & VNodeProps & AllowedComponentProps & ComponentCustomProps & (new () => {
1199
1205
  $slots: {
1200
1206
  default?(_: {}): any;
@@ -1202,10 +1208,6 @@ export declare const QListItemGroup: {
1202
1208
  });
1203
1209
 
1204
1210
  export declare type QListItemGroupProps = {
1205
- /**
1206
- * The identifier of the list item group.
1207
- */
1208
- id?: string;
1209
1211
  /**
1210
1212
  * The title of the group.
1211
1213
  */
@@ -1216,6 +1218,68 @@ export declare type QListItemGroupProps = {
1216
1218
  disabled?: boolean;
1217
1219
  };
1218
1220
 
1221
+ export declare type QListItemProps = {
1222
+ /**
1223
+ * The value of the item.
1224
+ */
1225
+ value: Primitive;
1226
+ /**
1227
+ * The label of the item.
1228
+ */
1229
+ label: string;
1230
+ /**
1231
+ * The icon of the item.
1232
+ */
1233
+ icon?: Icon;
1234
+ /**
1235
+ * Whether this item is selected.
1236
+ */
1237
+ selected?: boolean;
1238
+ /**
1239
+ * Whether this item is highlighted.
1240
+ */
1241
+ highlighted?: boolean;
1242
+ /**
1243
+ * The icons of the component.
1244
+ */
1245
+ icons?: Icons;
1246
+ /**
1247
+ * Whether the item is disabled.
1248
+ */
1249
+ disabled?: boolean;
1250
+ };
1251
+
1252
+ export declare type QListProps = {
1253
+ /**
1254
+ * The value of the currently selected item.
1255
+ */
1256
+ modelValue?: Primitive;
1257
+ /**
1258
+ * The list of available items for selection.
1259
+ */
1260
+ items: (Omit<QListItemProps, 'value' | 'label'> & {
1261
+ [key: string]: any;
1262
+ })[];
1263
+ /**
1264
+ * The item groups used for organizing the available items.
1265
+ */
1266
+ groups?: (QListItemGroupProps & {
1267
+ id: string;
1268
+ })[];
1269
+ /**
1270
+ * The property of each item object that holds its value.
1271
+ */
1272
+ itemValue?: string;
1273
+ /**
1274
+ * The property of each item object that holds its title.
1275
+ */
1276
+ itemLabel?: string;
1277
+ /**
1278
+ * Indicates whether the list is disabled.
1279
+ */
1280
+ disabled?: boolean;
1281
+ };
1282
+
1219
1283
  export declare const QOverlay: {
1220
1284
  new (...args: any[]): {
1221
1285
  $: ComponentInternalInstance;
@@ -1770,12 +1834,14 @@ export declare const QSelect: {
1770
1834
  $: ComponentInternalInstance;
1771
1835
  $data: {};
1772
1836
  $props: {
1773
- size?: InputSize | undefined;
1837
+ size?: QInputSize | undefined;
1774
1838
  disabled?: boolean | undefined;
1775
1839
  loading?: boolean | undefined;
1776
1840
  modelValue?: Primitive | undefined;
1777
1841
  icons?: Record<string, Icon> | undefined;
1778
- groups?: QListItemGroupProps[] | undefined;
1842
+ groups?: (QListItemGroupProps & {
1843
+ id: string;
1844
+ })[] | undefined;
1779
1845
  itemValue?: string | undefined;
1780
1846
  itemLabel?: string | undefined;
1781
1847
  clearable?: boolean | undefined;
@@ -1826,7 +1892,9 @@ export declare const QSelect: {
1826
1892
  }>) => void)[] | undefined;
1827
1893
  "onUpdate:modelValue"?: ((value: Primitive | undefined) => any) | undefined;
1828
1894
  readonly readonly?: boolean | undefined;
1829
- readonly items: ListItem[];
1895
+ readonly items: (Omit<QListItemProps, "label" | "value"> & {
1896
+ [key: string]: any;
1897
+ })[];
1830
1898
  "onBefore-show"?: (() => any) | undefined;
1831
1899
  "onBefore-hide"?: (() => any) | undefined;
1832
1900
  onShow?: (() => any) | undefined;
@@ -1847,7 +1915,7 @@ export declare const QSelect: {
1847
1915
  $el: any;
1848
1916
  $options: ComponentOptionsBase<Readonly<ExtractPropTypes<{
1849
1917
  size: {
1850
- type: PropType<InputSize>;
1918
+ type: PropType<QInputSize>;
1851
1919
  default: string;
1852
1920
  };
1853
1921
  disabled: {
@@ -1870,11 +1938,15 @@ export declare const QSelect: {
1870
1938
  default: () => Record<string, Icon>;
1871
1939
  };
1872
1940
  items: {
1873
- type: PropType<ListItem[]>;
1941
+ type: PropType<(Omit<QListItemProps, "label" | "value"> & {
1942
+ [key: string]: any;
1943
+ })[]>;
1874
1944
  required: true;
1875
1945
  };
1876
1946
  groups: {
1877
- type: PropType<QListItemGroupProps[]>;
1947
+ type: PropType<(QListItemGroupProps & {
1948
+ id: string;
1949
+ })[]>;
1878
1950
  default: () => never[];
1879
1951
  };
1880
1952
  itemValue: {
@@ -1906,12 +1978,14 @@ export declare const QSelect: {
1906
1978
  show: () => void;
1907
1979
  hide: () => void;
1908
1980
  }, string, {
1909
- size: InputSize;
1981
+ size: QInputSize;
1910
1982
  disabled: boolean;
1911
1983
  loading: boolean;
1912
1984
  modelValue: Primitive;
1913
1985
  icons: Record<string, Icon>;
1914
- groups: QListItemGroupProps[];
1986
+ groups: (QListItemGroupProps & {
1987
+ id: string;
1988
+ })[];
1915
1989
  itemValue: string;
1916
1990
  itemLabel: string;
1917
1991
  clearable: boolean;
@@ -1938,7 +2012,7 @@ export declare const QSelect: {
1938
2012
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: WatchOptions<boolean> | undefined): WatchStopHandle;
1939
2013
  } & Readonly<ExtractPropTypes<{
1940
2014
  size: {
1941
- type: PropType<InputSize>;
2015
+ type: PropType<QInputSize>;
1942
2016
  default: string;
1943
2017
  };
1944
2018
  disabled: {
@@ -1961,11 +2035,15 @@ export declare const QSelect: {
1961
2035
  default: () => Record<string, Icon>;
1962
2036
  };
1963
2037
  items: {
1964
- type: PropType<ListItem[]>;
2038
+ type: PropType<(Omit<QListItemProps, "label" | "value"> & {
2039
+ [key: string]: any;
2040
+ })[]>;
1965
2041
  required: true;
1966
2042
  };
1967
2043
  groups: {
1968
- type: PropType<QListItemGroupProps[]>;
2044
+ type: PropType<(QListItemGroupProps & {
2045
+ id: string;
2046
+ })[]>;
1969
2047
  default: () => never[];
1970
2048
  };
1971
2049
  itemValue: {
@@ -1996,7 +2074,7 @@ export declare const QSelect: {
1996
2074
  __isSuspense?: undefined;
1997
2075
  } & ComponentOptionsBase<Readonly<ExtractPropTypes<{
1998
2076
  size: {
1999
- type: PropType<InputSize>;
2077
+ type: PropType<QInputSize>;
2000
2078
  default: string;
2001
2079
  };
2002
2080
  disabled: {
@@ -2019,11 +2097,15 @@ export declare const QSelect: {
2019
2097
  default: () => Record<string, Icon>;
2020
2098
  };
2021
2099
  items: {
2022
- type: PropType<ListItem[]>;
2100
+ type: PropType<(Omit<QListItemProps, "label" | "value"> & {
2101
+ [key: string]: any;
2102
+ })[]>;
2023
2103
  required: true;
2024
2104
  };
2025
2105
  groups: {
2026
- type: PropType<QListItemGroupProps[]>;
2106
+ type: PropType<(QListItemGroupProps & {
2107
+ id: string;
2108
+ })[]>;
2027
2109
  default: () => never[];
2028
2110
  };
2029
2111
  itemValue: {
@@ -2055,12 +2137,14 @@ export declare const QSelect: {
2055
2137
  show: () => void;
2056
2138
  hide: () => void;
2057
2139
  }, string, {
2058
- size: InputSize;
2140
+ size: QInputSize;
2059
2141
  disabled: boolean;
2060
2142
  loading: boolean;
2061
2143
  modelValue: Primitive;
2062
2144
  icons: Record<string, Icon>;
2063
- groups: QListItemGroupProps[];
2145
+ groups: (QListItemGroupProps & {
2146
+ id: string;
2147
+ })[];
2064
2148
  itemValue: string;
2065
2149
  itemLabel: string;
2066
2150
  clearable: boolean;
package/dist/ui.css CHANGED
@@ -599,8 +599,10 @@ body {
599
599
  font-style: normal;
600
600
  text-decoration: underline;
601
601
  }
602
- .q-list-item__check {
602
+ .q-list-item__check-container {
603
+ display: flex;
603
604
  margin-left: auto;
605
+ min-width: 1em;
604
606
  }
605
607
  .q-list-item + .q-list-item {
606
608
  margin-top: 1px;
@@ -616,6 +618,8 @@ body {
616
618
  .q-overlay__content {
617
619
  display: block;
618
620
  position: relative;
621
+ min-width: -moz-fit-content;
622
+ min-width: fit-content;
619
623
  width: 100%;
620
624
  background-color: var(--q-overlay-bg);
621
625
  color: var(--q-overlay-color);
@@ -746,6 +750,11 @@ body {
746
750
  .q-select:not(.q-select--readonly):not(.q-select--disabled) {
747
751
  cursor: pointer;
748
752
  }
753
+ .q-select__value, .q-select__placeholder {
754
+ white-space: nowrap;
755
+ overflow: hidden;
756
+ text-overflow: ellipsis;
757
+ }
749
758
  .q-select__placeholder {
750
759
  font-style: italic;
751
760
  color: rgb(var(--q-theme-on-background-rgb)/0.5);
@@ -759,8 +768,7 @@ body {
759
768
  }
760
769
 
761
770
  .q-select__clear,
762
- .q-select__chevron,
763
- .q-select__search-icon {
771
+ .q-select__chevron {
764
772
  opacity: 0.5;
765
773
  }
766
774
 
@@ -783,17 +791,16 @@ body {
783
791
  }
784
792
  .q-select__body .q-list-item {
785
793
  width: calc(100% - 0.5rem);
786
- }
787
-
788
- .q-select__search {
789
- width: calc(100% - 0.5rem);
790
- }
791
- .q-select__search:focus-within {
792
- outline: none;
794
+ margin-left: 0.25rem;
795
+ margin-right: 0.25rem;
793
796
  }
794
797
 
795
798
  .q-select__items {
799
+ min-width: -moz-fit-content;
800
+ min-width: fit-content;
801
+ width: 100%;
796
802
  max-height: 240px;
803
+ align-items: start;
797
804
  }
798
805
 
799
806
  .q-select__loader,