quasar 2.13.0 → 2.14.0

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 (199) hide show
  1. package/dist/api/BottomSheet.json +7 -2
  2. package/dist/api/Dialog.json +7 -2
  3. package/dist/api/QBanner.json +7 -2
  4. package/dist/api/QBar.json +7 -2
  5. package/dist/api/QBtn.json +7 -2
  6. package/dist/api/QBtnDropdown.json +7 -2
  7. package/dist/api/QCard.json +7 -2
  8. package/dist/api/QCarousel.json +7 -2
  9. package/dist/api/QCheckbox.json +8 -3
  10. package/dist/api/QChip.json +13 -3
  11. package/dist/api/QColor.json +7 -2
  12. package/dist/api/QDate.json +7 -2
  13. package/dist/api/QDrawer.json +7 -2
  14. package/dist/api/QEditor.json +7 -2
  15. package/dist/api/QExpansionItem.json +7 -2
  16. package/dist/api/QFab.json +7 -2
  17. package/dist/api/QFabAction.json +7 -2
  18. package/dist/api/QField.json +28 -4
  19. package/dist/api/QFile.json +14 -4
  20. package/dist/api/QImg.json +3 -3
  21. package/dist/api/QInnerLoading.json +7 -2
  22. package/dist/api/QInput.json +16 -5
  23. package/dist/api/QIntersection.json +7 -2
  24. package/dist/api/QItem.json +12 -4
  25. package/dist/api/QLinearProgress.json +7 -2
  26. package/dist/api/QList.json +7 -2
  27. package/dist/api/QMarkupTable.json +7 -2
  28. package/dist/api/QMenu.json +21 -6
  29. package/dist/api/QOptionGroup.json +7 -2
  30. package/dist/api/QPagination.json +37 -11
  31. package/dist/api/QRadio.json +7 -2
  32. package/dist/api/QRange.json +7 -2
  33. package/dist/api/QScrollArea.json +14 -4
  34. package/dist/api/QSelect.json +23 -7
  35. package/dist/api/QSeparator.json +7 -2
  36. package/dist/api/QSkeleton.json +7 -2
  37. package/dist/api/QSlideItem.json +7 -2
  38. package/dist/api/QSlider.json +7 -2
  39. package/dist/api/QStepper.json +7 -2
  40. package/dist/api/QTabPanel.json +7 -2
  41. package/dist/api/QTable.json +70 -20
  42. package/dist/api/QTime.json +17 -6
  43. package/dist/api/QTimeline.json +7 -2
  44. package/dist/api/QToggle.json +8 -3
  45. package/dist/api/QTooltip.json +14 -4
  46. package/dist/api/QTree.json +7 -2
  47. package/dist/api/QUploader.json +7 -2
  48. package/dist/api/QVirtualScroll.json +2 -1
  49. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  50. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  51. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  52. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  53. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  54. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  55. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  56. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  57. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  58. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  59. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  60. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  61. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  62. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  63. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  64. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  65. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  66. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  67. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  68. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  69. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +2 -2
  70. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  71. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  72. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  73. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  74. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  75. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  76. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  77. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  78. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  79. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  80. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  81. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +2 -2
  82. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +2 -2
  83. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +2 -2
  84. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  85. package/dist/icon-set/svg-mdi-v7.umd.prod.js +2 -2
  86. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  87. package/dist/icon-set/themify.umd.prod.js +1 -1
  88. package/dist/lang/ar-TN.umd.prod.js +1 -1
  89. package/dist/lang/ar.umd.prod.js +1 -1
  90. package/dist/lang/az-Latn.umd.prod.js +1 -1
  91. package/dist/lang/bg.umd.prod.js +1 -1
  92. package/dist/lang/bn.umd.prod.js +1 -1
  93. package/dist/lang/ca.umd.prod.js +1 -1
  94. package/dist/lang/cs.umd.prod.js +1 -1
  95. package/dist/lang/da.umd.prod.js +1 -1
  96. package/dist/lang/de-CH.umd.prod.js +1 -1
  97. package/dist/lang/de-DE.umd.prod.js +1 -1
  98. package/dist/lang/de.umd.prod.js +1 -1
  99. package/dist/lang/el.umd.prod.js +1 -1
  100. package/dist/lang/en-GB.umd.prod.js +1 -1
  101. package/dist/lang/en-US.umd.prod.js +1 -1
  102. package/dist/lang/eo.umd.prod.js +1 -1
  103. package/dist/lang/es.umd.prod.js +1 -1
  104. package/dist/lang/et.umd.prod.js +1 -1
  105. package/dist/lang/eu.umd.prod.js +1 -1
  106. package/dist/lang/fa-IR.umd.prod.js +1 -1
  107. package/dist/lang/fa.umd.prod.js +1 -1
  108. package/dist/lang/fi.umd.prod.js +1 -1
  109. package/dist/lang/fr.umd.prod.js +1 -1
  110. package/dist/lang/gn.umd.prod.js +1 -1
  111. package/dist/lang/he.umd.prod.js +1 -1
  112. package/dist/lang/hi.umd.prod.js +1 -1
  113. package/dist/lang/hr.umd.prod.js +1 -1
  114. package/dist/lang/hu.umd.prod.js +1 -1
  115. package/dist/lang/id.umd.prod.js +1 -1
  116. package/dist/lang/is.umd.prod.js +1 -1
  117. package/dist/lang/it.umd.prod.js +1 -1
  118. package/dist/lang/ja.umd.prod.js +1 -1
  119. package/dist/lang/kk.umd.prod.js +1 -1
  120. package/dist/lang/km.umd.prod.js +1 -1
  121. package/dist/lang/ko-KR.umd.prod.js +1 -1
  122. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  123. package/dist/lang/lt.umd.prod.js +1 -1
  124. package/dist/lang/lu.umd.prod.js +1 -1
  125. package/dist/lang/lv.umd.prod.js +1 -1
  126. package/dist/lang/mk.umd.prod.js +2 -2
  127. package/dist/lang/ml.umd.prod.js +1 -1
  128. package/dist/lang/mm.umd.prod.js +1 -1
  129. package/dist/lang/ms.umd.prod.js +1 -1
  130. package/dist/lang/my.umd.prod.js +1 -1
  131. package/dist/lang/nb-NO.umd.prod.js +1 -1
  132. package/dist/lang/nl.umd.prod.js +1 -1
  133. package/dist/lang/pl.umd.prod.js +1 -1
  134. package/dist/lang/pt-BR.umd.prod.js +1 -1
  135. package/dist/lang/pt.umd.prod.js +1 -1
  136. package/dist/lang/ro.umd.prod.js +1 -1
  137. package/dist/lang/ru.umd.prod.js +1 -1
  138. package/dist/lang/sk.umd.prod.js +1 -1
  139. package/dist/lang/sl.umd.prod.js +1 -1
  140. package/dist/lang/sm.umd.prod.js +1 -1
  141. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  142. package/dist/lang/sr.umd.prod.js +1 -1
  143. package/dist/lang/sv.umd.prod.js +1 -1
  144. package/dist/lang/ta.umd.prod.js +1 -1
  145. package/dist/lang/th.umd.prod.js +1 -1
  146. package/dist/lang/tr.umd.prod.js +1 -1
  147. package/dist/lang/ug.umd.prod.js +1 -1
  148. package/dist/lang/uk.umd.prod.js +1 -1
  149. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  150. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  151. package/dist/lang/vi.umd.prod.js +1 -1
  152. package/dist/lang/zh-CN.umd.prod.js +1 -1
  153. package/dist/lang/zh-TW.umd.prod.js +1 -1
  154. package/dist/quasar.addon.css +0 -940
  155. package/dist/quasar.addon.prod.css +1 -1
  156. package/dist/quasar.addon.rtl.prod.css +1 -1
  157. package/dist/quasar.cjs.prod.js +2 -2
  158. package/dist/quasar.css +3 -138
  159. package/dist/quasar.esm.js +43 -18
  160. package/dist/quasar.esm.prod.js +2 -2
  161. package/dist/quasar.prod.css +1 -1
  162. package/dist/quasar.rtl.css +3 -6
  163. package/dist/quasar.rtl.prod.css +1 -1
  164. package/dist/quasar.sass +17 -13
  165. package/dist/quasar.umd.js +43 -18
  166. package/dist/quasar.umd.prod.js +2 -2
  167. package/dist/types/api/qtree.d.ts +115 -21
  168. package/dist/types/index.d.ts +85 -80
  169. package/dist/vetur/quasar-attributes.json +69 -65
  170. package/dist/vetur/quasar-tags.json +2 -1
  171. package/dist/web-types/web-types.json +135 -181
  172. package/lang/mk.js +4 -4
  173. package/lang/mk.mjs +4 -4
  174. package/package.json +1 -1
  175. package/src/api.extends.json +2 -1
  176. package/src/components/btn/use-btn.json +2 -1
  177. package/src/components/checkbox/use-checkbox.json +1 -1
  178. package/src/components/chip/QChip.json +2 -1
  179. package/src/components/date/QDate.js +4 -4
  180. package/src/components/fab/use-fab.json +2 -1
  181. package/src/components/field/QField.js +14 -2
  182. package/src/components/field/QField.json +7 -0
  183. package/src/components/img/QImg.json +3 -3
  184. package/src/components/input/QInput.json +2 -1
  185. package/src/components/intersection/QIntersection.json +2 -1
  186. package/src/components/item/QItem.js +1 -1
  187. package/src/components/item/QItem.json +3 -3
  188. package/src/components/menu/QMenu.json +4 -0
  189. package/src/components/pagination/QPagination.json +9 -5
  190. package/src/components/scroll-area/QScrollArea.json +2 -1
  191. package/src/components/select/QSelect.json +2 -1
  192. package/src/components/time/QTime.json +4 -3
  193. package/src/components/tooltip/QTooltip.json +4 -0
  194. package/src/components/virtual-scroll/use-virtual-scroll.json +1 -1
  195. package/src/composables/private/use-field.js +21 -8
  196. package/src/composables/private/use-validate.json +2 -1
  197. package/src/css/core/flex.sass +5 -3
  198. package/src/css/flex-addon.sass +3 -1
  199. package/src/css/helpers/math.sass +7 -5
@@ -1,24 +1,118 @@
1
- // We can't set QTreeNode as default assignment for the generics param,
2
- // we use unknown and use conditional types to set it
3
- export interface QTreeNode<Node = unknown> {
4
- label?: string;
5
- icon?: string;
6
- iconColor?: string;
7
- img?: string;
8
- avatar?: string;
9
- children?: (Node extends unknown ? QTreeNode : Node)[];
10
- disabled?: boolean;
11
- expandable?: boolean;
12
- selectable?: boolean;
13
- handler?: (node: Node extends unknown ? QTreeNode : Node) => void;
14
- tickable?: boolean;
15
- noTick?: boolean;
16
- tickStrategy?: "leaf" | "leaf-filtered" | "string" | "none";
17
- lazy?: boolean;
18
- header?: string;
19
- body?: string;
20
- [index: string]: any;
21
- }
1
+ /**
2
+ * Node type to be used with QTree's `nodes` prop
3
+ *
4
+ * @see https://v2.quasar.dev/vue-components/tree#qtree-api
5
+ *
6
+ * @template TExtra Object type to add extra properties for the node, overrides the existing ones as well
7
+ *
8
+ * @example
9
+ * Basic usage
10
+ * ```ts
11
+ * const nodes: QTreeNode[] = [
12
+ * // ...
13
+ * ];
14
+ * // <q-tree :nodes="nodes" />
15
+ * ```
16
+ *
17
+ * @example
18
+ * Making some properties required
19
+ * ```ts
20
+ * // make label and icon required, the rest will stay optional
21
+ * const nodes: QTreeNode<{ label: string; icon: string }>[] = [
22
+ * // ...
23
+ * ];
24
+ * ```
25
+ *
26
+ * @example
27
+ * Adding extra properties
28
+ * ```ts
29
+ * // on top of the existing properties, add a foo property
30
+ * const nodes: QTreeNode<{ foo: number }>[] = [
31
+ * // ...
32
+ * ];
33
+ * ```
34
+ *
35
+ * @example
36
+ * Using different label/children properties
37
+ * ```ts
38
+ * type Node = QTreeNode<{ name: string; subNodes: Node[] }>;
39
+ * const nodes: Node[] = [
40
+ * // ...
41
+ * ];
42
+ * // <q-tree :nodes="nodes" label-key="name" children-key="subNodes" />
43
+ * ```
44
+ *
45
+ * @example
46
+ * Using a different child node type
47
+ * ```ts
48
+ * type ChildNode = QTreeNode<{ foo: number }>;
49
+ * type ParentNode = QTreeNode<{ bar: string; children?: ChildNode[] }>;
50
+ *
51
+ * const nodes: ParentNode[] = [
52
+ * // ...
53
+ * ];
54
+ * ```
55
+ *
56
+ * @example
57
+ * A very basic file system tree
58
+ * ```ts
59
+ * interface FileInfo {
60
+ * path: string;
61
+ * size: number;
62
+ * lastModified: number;
63
+ * }
64
+ * type FileNode = QTreeNode<FileInfo & { type: "file", children?: never }>;
65
+ * type DirectoryNode = QTreeNode<FileInfo & { type: "directory", children?: (FileNode | DirectoryNode)[] }>;
66
+ *
67
+ * const nodes: DirectoryNode[] = [
68
+ * {
69
+ * type: "directory",
70
+ * path: "/",
71
+ * size: 0,
72
+ * lastModified: 0,
73
+ * // allows both file and directory as children
74
+ * children: [
75
+ * {
76
+ * type: "file",
77
+ * path: "/foo.txt",
78
+ * size: 100,
79
+ * lastModified: 1000,
80
+ * // does not allow children
81
+ * },
82
+ * {
83
+ * type: "directory",
84
+ * path: "/bar",
85
+ * size: 0,
86
+ * lastModified: 0,
87
+ * // empty folder - doesn't have children
88
+ * }
89
+ * ]
90
+ * }
91
+ * ]
92
+ * ```
93
+ */
94
+ export type QTreeNode<TExtra = unknown> = Omit<
95
+ {
96
+ label?: string;
97
+ icon?: string;
98
+ iconColor?: string;
99
+ img?: string;
100
+ avatar?: string;
101
+ children?: QTreeNode<TExtra>[];
102
+ disabled?: boolean;
103
+ expandable?: boolean;
104
+ selectable?: boolean;
105
+ handler?: (node: QTreeNode<TExtra>) => void;
106
+ tickable?: boolean;
107
+ noTick?: boolean;
108
+ tickStrategy?: "leaf" | "leaf-filtered" | "string" | "none";
109
+ lazy?: boolean;
110
+ header?: string;
111
+ body?: string;
112
+ },
113
+ unknown extends TExtra ? "" : keyof TExtra
114
+ > &
115
+ (unknown extends TExtra ? Record<string, any> : TExtra);
22
116
 
23
117
  export interface QTreeLazyLoadParams<
24
118
  Node extends QTreeNode = QTreeNode,