@quidgest/ui 0.18.0 → 0.20.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 (164) hide show
  1. package/CHANGELOG.md +89 -0
  2. package/dist/json/api.json +1328 -215
  3. package/dist/manifest/components.json +3 -1
  4. package/dist/ui.css +1448 -185
  5. package/dist/ui.esm.js +1448 -825
  6. package/dist/ui.js +1411 -788
  7. package/dist/ui.min.css +2 -1
  8. package/dist/ui.min.js +1411 -788
  9. package/dist/ui.scss +597 -157
  10. package/esm/components/QField/QField.d.ts.map +1 -1
  11. package/esm/components/QField/QField.vue.js +1 -1
  12. package/esm/components/QGrid/QCol.vue.js +1 -1
  13. package/esm/components/QInputGroup/QInputGroup.d.ts +147 -3
  14. package/esm/components/QInputGroup/QInputGroup.d.ts.map +1 -1
  15. package/esm/components/QInputGroup/QInputGroup.vue.js +32 -23
  16. package/esm/components/QInputGroup/index.d.ts +81 -4
  17. package/esm/components/QInputGroup/index.d.ts.map +1 -1
  18. package/esm/components/QList/QList.d.ts.map +1 -1
  19. package/esm/components/QList/QList.vue.js +3 -1
  20. package/esm/components/QList/QListItem.d.ts.map +1 -1
  21. package/esm/components/QList/QListItem.vue.js +24 -28
  22. package/esm/components/QList/types.d.ts +1 -1
  23. package/esm/components/QOverlay/types.d.ts +3 -1
  24. package/esm/components/QOverlay/types.d.ts.map +1 -1
  25. package/esm/components/QPhoneField/QPhoneField.d.ts +2263 -0
  26. package/esm/components/QPhoneField/QPhoneField.d.ts.map +1 -0
  27. package/esm/components/QPhoneField/QPhoneField.vue.js +478 -0
  28. package/esm/components/QPhoneField/QPhoneField2.vue.js +5 -0
  29. package/esm/components/QPhoneField/constants.d.ts +11 -0
  30. package/esm/components/QPhoneField/constants.d.ts.map +1 -0
  31. package/esm/components/QPhoneField/constants.js +14 -0
  32. package/esm/components/QPhoneField/index.d.ts +1253 -0
  33. package/esm/components/QPhoneField/index.d.ts.map +1 -0
  34. package/esm/components/QPhoneField/index.js +6 -0
  35. package/esm/components/QPhoneField/types.d.ts +108 -0
  36. package/esm/components/QPhoneField/types.d.ts.map +1 -0
  37. package/esm/components/{QGroupBox/QGroupBox.d.ts → QSection/QSection.d.ts} +4 -4
  38. package/esm/components/QSection/QSection.d.ts.map +1 -0
  39. package/esm/components/{QGroupBox/QGroupBox.vue.js → QSection/QSection.vue.js} +8 -8
  40. package/esm/components/QSection/QSection2.vue.js +5 -0
  41. package/esm/components/{QGroupBox → QSection}/index.d.ts +8 -8
  42. package/esm/components/QSection/index.d.ts.map +1 -0
  43. package/esm/components/QSection/index.js +6 -0
  44. package/esm/components/QSection/types.d.ts +32 -0
  45. package/esm/components/QSection/types.d.ts.map +1 -0
  46. package/esm/components/QSelect/QSelect.d.ts +16 -1
  47. package/esm/components/QSelect/QSelect.d.ts.map +1 -1
  48. package/esm/components/QSelect/QSelect.vue.js +158 -129
  49. package/esm/components/QSelect/index.d.ts +31 -3
  50. package/esm/components/QSelect/index.d.ts.map +1 -1
  51. package/esm/components/QSelect/types.d.ts +13 -0
  52. package/esm/components/QSelect/types.d.ts.map +1 -1
  53. package/esm/components/QSidebar/QSidebar.d.ts +53 -6
  54. package/esm/components/QSidebar/QSidebar.d.ts.map +1 -1
  55. package/esm/components/QSidebar/QSidebar.vue.js +76 -106
  56. package/esm/components/QSidebar/QSidebarAnchor.d.ts +24 -210
  57. package/esm/components/QSidebar/QSidebarAnchor.d.ts.map +1 -1
  58. package/esm/components/QSidebar/QSidebarAnchor.vue.js +47 -59
  59. package/esm/components/QSidebar/QSidebarItem.d.ts +213 -0
  60. package/esm/components/QSidebar/QSidebarItem.d.ts.map +1 -0
  61. package/esm/components/QSidebar/QSidebarItem.vue.js +130 -0
  62. package/esm/components/QSidebar/QSidebarItem2.vue.js +5 -0
  63. package/esm/components/QSidebar/QSidebarPanel.d.ts +1 -7
  64. package/esm/components/QSidebar/QSidebarPanel.d.ts.map +1 -1
  65. package/esm/components/QSidebar/QSidebarPanel.vue.js +4 -10
  66. package/esm/components/QSidebar/context.d.ts +108 -0
  67. package/esm/components/QSidebar/context.d.ts.map +1 -0
  68. package/esm/components/QSidebar/context.js +4 -0
  69. package/esm/components/QSidebar/index.d.ts +166 -8
  70. package/esm/components/QSidebar/index.d.ts.map +1 -1
  71. package/esm/components/QSidebar/index.js +3 -2
  72. package/esm/components/QSidebar/types.d.ts +77 -42
  73. package/esm/components/QSidebar/types.d.ts.map +1 -1
  74. package/esm/components/QTabs/QTab.d.ts +1 -0
  75. package/esm/components/QTabs/QTab.d.ts.map +1 -1
  76. package/esm/components/QTabs/QTab.vue.js +2 -1
  77. package/esm/components/QTabs/QTabs.d.ts +2 -0
  78. package/esm/components/QTabs/QTabs.d.ts.map +1 -1
  79. package/esm/components/QTabs/QTabs.vue.js +125 -46
  80. package/esm/components/QTabs/context.d.ts +10 -3
  81. package/esm/components/QTabs/context.d.ts.map +1 -1
  82. package/esm/components/QTabs/index.d.ts +2 -0
  83. package/esm/components/QTabs/index.d.ts.map +1 -1
  84. package/esm/components/QTabs/types.d.ts +3 -1
  85. package/esm/components/QTabs/types.d.ts.map +1 -1
  86. package/esm/components/index.d.ts +2 -1
  87. package/esm/components/index.d.ts.map +1 -1
  88. package/esm/components/index.js +48 -45
  89. package/esm/composables/useDialog/index.d.ts +2 -88
  90. package/esm/composables/useDialog/index.d.ts.map +1 -1
  91. package/esm/composables/useDialog/index.js +6 -6
  92. package/esm/composables/useDialog/types.d.ts +14 -4
  93. package/esm/composables/useDialog/types.d.ts.map +1 -1
  94. package/esm/index.d.ts +3 -1
  95. package/esm/vendors/country-flag-icons/modules/countries.json.js +4 -0
  96. package/esm/vendors/country-flag-icons/modules/hasFlag.js +7 -0
  97. package/esm/vendors/libphonenumber-js/es6/AsYouType.js +312 -0
  98. package/esm/vendors/libphonenumber-js/es6/AsYouTypeFormatter.PatternMatcher.js +142 -0
  99. package/esm/vendors/libphonenumber-js/es6/AsYouTypeFormatter.PatternParser.js +145 -0
  100. package/esm/vendors/libphonenumber-js/es6/AsYouTypeFormatter.complete.js +45 -0
  101. package/esm/vendors/libphonenumber-js/es6/AsYouTypeFormatter.js +258 -0
  102. package/esm/vendors/libphonenumber-js/es6/AsYouTypeFormatter.util.js +57 -0
  103. package/esm/vendors/libphonenumber-js/es6/AsYouTypeParser.js +242 -0
  104. package/esm/vendors/libphonenumber-js/es6/AsYouTypeState.js +115 -0
  105. package/esm/vendors/libphonenumber-js/es6/ParseError.js +116 -0
  106. package/esm/vendors/libphonenumber-js/es6/PhoneNumber.js +164 -0
  107. package/esm/vendors/libphonenumber-js/es6/constants.js +4 -0
  108. package/esm/vendors/libphonenumber-js/es6/format.js +77 -0
  109. package/esm/vendors/libphonenumber-js/es6/formatIncompletePhoneNumber.js +7 -0
  110. package/esm/vendors/libphonenumber-js/es6/getCountries.js +7 -0
  111. package/esm/vendors/libphonenumber-js/es6/getExampleNumber.js +7 -0
  112. package/esm/vendors/libphonenumber-js/es6/helpers/RFC3966.js +9 -0
  113. package/esm/vendors/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.js +7 -0
  114. package/esm/vendors/libphonenumber-js/es6/helpers/checkNumberLength.js +21 -0
  115. package/esm/vendors/libphonenumber-js/es6/helpers/extension/createExtensionPattern.js +11 -0
  116. package/esm/vendors/libphonenumber-js/es6/helpers/extension/extractExtension.js +16 -0
  117. package/esm/vendors/libphonenumber-js/es6/helpers/extractCountryCallingCode.js +36 -0
  118. package/esm/vendors/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js +21 -0
  119. package/esm/vendors/libphonenumber-js/es6/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js +18 -0
  120. package/esm/vendors/libphonenumber-js/es6/helpers/extractNationalNumber.js +27 -0
  121. package/esm/vendors/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.js +27 -0
  122. package/esm/vendors/libphonenumber-js/es6/helpers/extractPhoneContext.js +15 -0
  123. package/esm/vendors/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.js +11 -0
  124. package/esm/vendors/libphonenumber-js/es6/helpers/getCountryAndCallingCodeFromOneOfThem.js +13 -0
  125. package/esm/vendors/libphonenumber-js/es6/helpers/getCountryByCallingCode.js +12 -0
  126. package/esm/vendors/libphonenumber-js/es6/helpers/getCountryByNationalNumber.js +43 -0
  127. package/esm/vendors/libphonenumber-js/es6/helpers/getIddPrefix.js +10 -0
  128. package/esm/vendors/libphonenumber-js/es6/helpers/getNumberType.js +61 -0
  129. package/esm/vendors/libphonenumber-js/es6/helpers/getPossibleCountriesForNumber.js +14 -0
  130. package/esm/vendors/libphonenumber-js/es6/helpers/isCallingCode.js +7 -0
  131. package/esm/vendors/libphonenumber-js/es6/helpers/isCountryCode.js +7 -0
  132. package/esm/vendors/libphonenumber-js/es6/helpers/isObject.js +7 -0
  133. package/esm/vendors/libphonenumber-js/es6/helpers/isViablePhoneNumber.js +12 -0
  134. package/esm/vendors/libphonenumber-js/es6/helpers/matchesEntirely.js +6 -0
  135. package/esm/vendors/libphonenumber-js/es6/helpers/mergeArrays.js +39 -0
  136. package/esm/vendors/libphonenumber-js/es6/helpers/parseDigits.js +82 -0
  137. package/esm/vendors/libphonenumber-js/es6/helpers/stripIddPrefix.js +18 -0
  138. package/esm/vendors/libphonenumber-js/es6/isPossible.js +32 -0
  139. package/esm/vendors/libphonenumber-js/es6/isValid.js +11 -0
  140. package/esm/vendors/libphonenumber-js/es6/metadata.js +474 -0
  141. package/esm/vendors/libphonenumber-js/es6/normalizeArguments.js +110 -0
  142. package/esm/vendors/libphonenumber-js/es6/parse.js +103 -0
  143. package/esm/vendors/libphonenumber-js/es6/parseIncompletePhoneNumber.js +48 -0
  144. package/esm/vendors/libphonenumber-js/es6/parsePhoneNumber.js +9 -0
  145. package/esm/vendors/libphonenumber-js/es6/parsePhoneNumberWithError_.js +58 -0
  146. package/esm/vendors/libphonenumber-js/es6/parsePhoneNumber_.js +66 -0
  147. package/esm/vendors/libphonenumber-js/es6/tools/semver-compare.js +14 -0
  148. package/esm/vendors/libphonenumber-js/examples.mobile.json.js +250 -0
  149. package/esm/vendors/libphonenumber-js/max/exports/AsYouType.js +9 -0
  150. package/esm/vendors/libphonenumber-js/max/exports/formatIncompletePhoneNumber.js +8 -0
  151. package/esm/vendors/libphonenumber-js/max/exports/getCountries.js +8 -0
  152. package/esm/vendors/libphonenumber-js/max/exports/getCountryCallingCode.js +8 -0
  153. package/esm/vendors/libphonenumber-js/max/exports/getExampleNumber.js +8 -0
  154. package/esm/vendors/libphonenumber-js/max/exports/isSupportedCountry.js +8 -0
  155. package/esm/vendors/libphonenumber-js/max/exports/parsePhoneNumber.js +8 -0
  156. package/esm/vendors/libphonenumber-js/max/exports/withMetadataArgument.js +8 -0
  157. package/esm/vendors/libphonenumber-js/metadata.max.json.js +10489 -0
  158. package/package.json +9 -6
  159. package/esm/components/QGroupBox/QGroupBox.d.ts.map +0 -1
  160. package/esm/components/QGroupBox/QGroupBox2.vue.js +0 -5
  161. package/esm/components/QGroupBox/index.d.ts.map +0 -1
  162. package/esm/components/QGroupBox/index.js +0 -6
  163. package/esm/components/QGroupBox/types.d.ts +0 -32
  164. package/esm/components/QGroupBox/types.d.ts.map +0 -1
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.18.0",
2
+ "version": "0.20.0",
3
3
  "components": [
4
4
  {
5
5
  "name": "QAccordion",
@@ -3857,110 +3857,6 @@
3857
3857
  }
3858
3858
  ]
3859
3859
  },
3860
- {
3861
- "name": "QGroupBox",
3862
- "description": "A container with a title that groups related content.",
3863
- "meta": {
3864
- "props": [
3865
- {
3866
- "name": "id",
3867
- "type": {
3868
- "kind": "primitive",
3869
- "name": "string"
3870
- },
3871
- "description": "The component unique identifier.",
3872
- "required": false,
3873
- "category": "Identification"
3874
- },
3875
- {
3876
- "name": "title",
3877
- "type": {
3878
- "kind": "primitive",
3879
- "name": "string"
3880
- },
3881
- "description": "The title of the group box.",
3882
- "required": false,
3883
- "category": "Content"
3884
- },
3885
- {
3886
- "name": "borderless",
3887
- "type": {
3888
- "kind": "primitive",
3889
- "name": "boolean"
3890
- },
3891
- "description": "If true, the group box has no borders.",
3892
- "required": false,
3893
- "category": "Presentation"
3894
- },
3895
- {
3896
- "name": "variant",
3897
- "type": {
3898
- "kind": "enum",
3899
- "values": [
3900
- "default",
3901
- "background",
3902
- "title-background",
3903
- "minor",
3904
- "minor-border-top"
3905
- ]
3906
- },
3907
- "description": "The styling variant of the group box.",
3908
- "default": "default",
3909
- "required": false,
3910
- "category": "Presentation"
3911
- },
3912
- {
3913
- "name": "block",
3914
- "type": {
3915
- "kind": "primitive",
3916
- "name": "boolean"
3917
- },
3918
- "description": "If true, the group box spans the full width of its container.",
3919
- "required": false,
3920
- "category": "Presentation"
3921
- }
3922
- ],
3923
- "events": [],
3924
- "slots": [
3925
- {
3926
- "name": "default",
3927
- "description": ""
3928
- }
3929
- ]
3930
- },
3931
- "examples": [
3932
- {
3933
- "title": "Default",
3934
- "description": "A basic group box with a title and example content.",
3935
- "code": "<q-group-box v-bind=\"args\">\n\t\t\t\t<span>Example of a group box</span>\n\t\t\t</q-group-box>"
3936
- },
3937
- {
3938
- "title": "No Title",
3939
- "description": "A group box without a title.",
3940
- "code": "<QGroupBox />"
3941
- },
3942
- {
3943
- "title": "Borderless",
3944
- "description": "A group box without borders.",
3945
- "code": "<QGroupBox :title=\"Borderless\" :borderless=\"true\" />"
3946
- },
3947
- {
3948
- "title": "Block",
3949
- "description": "A group box spanning full width of its container.",
3950
- "code": "<QGroupBox :title=\"Block Group Box\" :block=\"true\" />"
3951
- },
3952
- {
3953
- "title": "Variants",
3954
- "description": "Group box with different styling variants.",
3955
- "code": "<div style=\"display: flex; flex-direction: column; gap: 1rem;\">\n\t\t\t\t<q-group-box title=\"Default\" variant=\"default\">\n\t\t\t\t\t<p>Default variant content</p>\n\t\t\t\t</q-group-box>\n\t\t\t\t<q-group-box title=\"Background\" variant=\"background\">\n\t\t\t\t\t<p>Background variant content</p>\n\t\t\t\t</q-group-box>\n\t\t\t\t<q-group-box title=\"Minor\" variant=\"minor\">\n\t\t\t\t\t<p>Minor variant content</p>\n\t\t\t\t</q-group-box>\n\t\t\t\t<q-group-box title=\"Minor Border Top\" variant=\"minor-border-top\">\n\t\t\t\t\t<p>Minor with border top variant content</p>\n\t\t\t\t</q-group-box>\n\t\t\t\t<q-group-box title=\"Title Background\" variant=\"title-background\">\n\t\t\t\t\t<p>Title background variant content</p>\n\t\t\t\t</q-group-box>\n\t\t\t</div>"
3956
- },
3957
- {
3958
- "title": "Nested Groups",
3959
- "description": "Nested group boxes demonstrating hierarchy.",
3960
- "code": "<q-group-box v-bind=\"args\">\n\t\t\t\t<p>Top-level content</p>\n\t\t\t\t<q-group-box variant=\"minor\" title=\"Mid Level\">\n\t\t\t\t\t<p>Mid-level content</p>\n\t\t\t\t\t<q-group-box variant=\"minor-border-top\" title=\"Leaf\">\n\t\t\t\t\t\t<p>Leaf content</p>\n\t\t\t\t\t</q-group-box>\n\t\t\t\t</q-group-box>\n\t\t\t</q-group-box>"
3961
- }
3962
- ]
3963
- },
3964
3860
  {
3965
3861
  "name": "QIcon",
3966
3862
  "description": "Displays an icon. Note: This Storybook includes a Material Design Icons v7.3.67 SVG bundle for demonstration purposes. For the complete list of available icons, visit the official [Material Design Icons](https://pictogrammers.com/library/mdi/) page.",
@@ -5737,180 +5633,1235 @@
5737
5633
  ]
5738
5634
  },
5739
5635
  {
5740
- "name": "QPopover",
5741
- "description": "A floating container that displays contextual content, triggered by a button.",
5636
+ "name": "QPhoneField",
5637
+ "description": "Collects and formats international telephone numbers while keeping the country calling code and national number visually distinct. Strict validation uses the `libphonenumber-js/max` metadata, while flags use the complete 3:2 stylesheet from `country-flag-icons`. Restricting `countries` filters runtime options but does not reduce either dependency's bundle contribution.",
5742
5638
  "meta": {
5743
5639
  "props": [
5744
5640
  {
5745
5641
  "name": "modelValue",
5746
5642
  "type": {
5747
5643
  "kind": "primitive",
5748
- "name": "boolean"
5644
+ "name": "string"
5749
5645
  },
5750
5646
  "description": "",
5751
5647
  "required": false
5752
5648
  },
5753
5649
  {
5754
- "name": "id",
5650
+ "name": "country",
5755
5651
  "type": {
5756
- "kind": "primitive",
5757
- "name": "string"
5652
+ "kind": "enum",
5653
+ "values": [
5654
+ "AM",
5655
+ "PM",
5656
+ "AC",
5657
+ "AD",
5658
+ "AE",
5659
+ "AF",
5660
+ "AG",
5661
+ "AI",
5662
+ "AL",
5663
+ "AO",
5664
+ "AR",
5665
+ "AS",
5666
+ "AT",
5667
+ "AU",
5668
+ "AW",
5669
+ "AX",
5670
+ "AZ",
5671
+ "BA",
5672
+ "BB",
5673
+ "BD",
5674
+ "BE",
5675
+ "BF",
5676
+ "BG",
5677
+ "BH",
5678
+ "BI",
5679
+ "BJ",
5680
+ "BL",
5681
+ "BM",
5682
+ "BN",
5683
+ "BO",
5684
+ "BQ",
5685
+ "BR",
5686
+ "BS",
5687
+ "BT",
5688
+ "BW",
5689
+ "BY",
5690
+ "BZ",
5691
+ "CA",
5692
+ "CC",
5693
+ "CD",
5694
+ "CF",
5695
+ "CG",
5696
+ "CH",
5697
+ "CI",
5698
+ "CK",
5699
+ "CL",
5700
+ "CM",
5701
+ "CN",
5702
+ "CO",
5703
+ "CR",
5704
+ "CU",
5705
+ "CV",
5706
+ "CW",
5707
+ "CX",
5708
+ "CY",
5709
+ "CZ",
5710
+ "DE",
5711
+ "DJ",
5712
+ "DK",
5713
+ "DM",
5714
+ "DO",
5715
+ "DZ",
5716
+ "EC",
5717
+ "EE",
5718
+ "EG",
5719
+ "EH",
5720
+ "ER",
5721
+ "ES",
5722
+ "ET",
5723
+ "FI",
5724
+ "FJ",
5725
+ "FK",
5726
+ "FM",
5727
+ "FO",
5728
+ "FR",
5729
+ "GA",
5730
+ "GB",
5731
+ "GD",
5732
+ "GE",
5733
+ "GF",
5734
+ "GG",
5735
+ "GH",
5736
+ "GI",
5737
+ "GL",
5738
+ "GM",
5739
+ "GN",
5740
+ "GP",
5741
+ "GQ",
5742
+ "GR",
5743
+ "GT",
5744
+ "GU",
5745
+ "GW",
5746
+ "GY",
5747
+ "HK",
5748
+ "HN",
5749
+ "HR",
5750
+ "HT",
5751
+ "HU",
5752
+ "ID",
5753
+ "IE",
5754
+ "IL",
5755
+ "IM",
5756
+ "IN",
5757
+ "IO",
5758
+ "IQ",
5759
+ "IR",
5760
+ "IS",
5761
+ "IT",
5762
+ "JE",
5763
+ "JM",
5764
+ "JO",
5765
+ "JP",
5766
+ "KE",
5767
+ "KG",
5768
+ "KH",
5769
+ "KI",
5770
+ "KM",
5771
+ "KN",
5772
+ "KP",
5773
+ "KR",
5774
+ "KW",
5775
+ "KY",
5776
+ "KZ",
5777
+ "LA",
5778
+ "LB",
5779
+ "LC",
5780
+ "LI",
5781
+ "LK",
5782
+ "LR",
5783
+ "LS",
5784
+ "LT",
5785
+ "LU",
5786
+ "LV",
5787
+ "LY",
5788
+ "MA",
5789
+ "MC",
5790
+ "MD",
5791
+ "ME",
5792
+ "MF",
5793
+ "MG",
5794
+ "MH",
5795
+ "MK",
5796
+ "ML",
5797
+ "MM",
5798
+ "MN",
5799
+ "MO",
5800
+ "MP",
5801
+ "MQ",
5802
+ "MR",
5803
+ "MS",
5804
+ "MT",
5805
+ "MU",
5806
+ "MV",
5807
+ "MW",
5808
+ "MX",
5809
+ "MY",
5810
+ "MZ",
5811
+ "NA",
5812
+ "NC",
5813
+ "NE",
5814
+ "NF",
5815
+ "NG",
5816
+ "NI",
5817
+ "NL",
5818
+ "NO",
5819
+ "NP",
5820
+ "NR",
5821
+ "NU",
5822
+ "NZ",
5823
+ "OM",
5824
+ "PA",
5825
+ "PE",
5826
+ "PF",
5827
+ "PG",
5828
+ "PH",
5829
+ "PK",
5830
+ "PL",
5831
+ "PR",
5832
+ "PS",
5833
+ "PT",
5834
+ "PW",
5835
+ "PY",
5836
+ "QA",
5837
+ "RE",
5838
+ "RO",
5839
+ "RS",
5840
+ "RU",
5841
+ "RW",
5842
+ "SA",
5843
+ "SB",
5844
+ "SC",
5845
+ "SD",
5846
+ "SE",
5847
+ "SG",
5848
+ "SH",
5849
+ "SI",
5850
+ "SJ",
5851
+ "SK",
5852
+ "SL",
5853
+ "SM",
5854
+ "SN",
5855
+ "SO",
5856
+ "SR",
5857
+ "SS",
5858
+ "ST",
5859
+ "SV",
5860
+ "SX",
5861
+ "SY",
5862
+ "SZ",
5863
+ "TA",
5864
+ "TC",
5865
+ "TD",
5866
+ "TG",
5867
+ "TH",
5868
+ "TJ",
5869
+ "TK",
5870
+ "TL",
5871
+ "TM",
5872
+ "TN",
5873
+ "TO",
5874
+ "TR",
5875
+ "TT",
5876
+ "TV",
5877
+ "TW",
5878
+ "TZ",
5879
+ "UA",
5880
+ "UG",
5881
+ "US",
5882
+ "UY",
5883
+ "UZ",
5884
+ "VA",
5885
+ "VC",
5886
+ "VE",
5887
+ "VG",
5888
+ "VI",
5889
+ "VN",
5890
+ "VU",
5891
+ "WF",
5892
+ "WS",
5893
+ "XK",
5894
+ "YE",
5895
+ "YT",
5896
+ "ZA",
5897
+ "ZM",
5898
+ "ZW"
5899
+ ]
5758
5900
  },
5759
- "description": "The component unique identifier.",
5760
- "required": false,
5761
- "category": "Identification"
5901
+ "description": "",
5902
+ "required": false
5762
5903
  },
5763
5904
  {
5764
- "name": "anchor",
5905
+ "name": "open",
5765
5906
  "type": {
5766
- "kind": "union",
5767
- "types": [
5768
- {
5769
- "name": "string"
5770
- },
5771
- {
5772
- "name": "object",
5773
- "value": {}
5774
- }
5775
- ]
5907
+ "kind": "primitive",
5908
+ "name": "boolean"
5776
5909
  },
5777
- "description": "The DOM element the popover should be anchored to.",
5778
- "required": true,
5779
- "category": "Identification"
5910
+ "description": "",
5911
+ "required": false
5780
5912
  },
5781
5913
  {
5782
- "name": "text",
5914
+ "name": "id",
5783
5915
  "type": {
5784
5916
  "kind": "primitive",
5785
5917
  "name": "string"
5786
5918
  },
5787
- "description": "The text of the popover.",
5919
+ "description": "The component unique identifier.",
5788
5920
  "required": false,
5789
- "category": "Content"
5921
+ "category": "Identification"
5790
5922
  },
5791
5923
  {
5792
- "name": "title",
5924
+ "name": "label",
5793
5925
  "type": {
5794
5926
  "kind": "primitive",
5795
5927
  "name": "string"
5796
5928
  },
5797
- "description": "The title of the popover.",
5929
+ "description": "The label of the input.",
5798
5930
  "required": false,
5799
5931
  "category": "Content"
5800
5932
  },
5801
5933
  {
5802
- "name": "headingLevel",
5934
+ "name": "required",
5803
5935
  "type": {
5804
5936
  "kind": "primitive",
5805
- "name": "number"
5937
+ "name": "boolean"
5806
5938
  },
5807
- "description": "The heading level of the title of the popover.",
5808
- "default": "2",
5939
+ "description": "If set to true, an asterisk (*) is displayed\nto indicate that the associated field is required.\n\nThe asterisk is decorative (`aria-hidden`). Required state for assistive\ntech should come from the associated control (e.g. native `required` on inputs).\nIf set to true, an asterisk (*) is displayed\nto indicate that the field is required.",
5809
5940
  "required": false,
5810
- "category": "Content"
5941
+ "category": "State"
5811
5942
  },
5812
5943
  {
5813
- "name": "arrow",
5944
+ "name": "for",
5814
5945
  "type": {
5815
5946
  "kind": "primitive",
5816
- "name": "boolean"
5947
+ "name": "string"
5817
5948
  },
5818
- "description": "Whether the popover has an arrow pointing to the target.",
5819
- "default": "true",
5949
+ "description": "The form field associated with the label.",
5820
5950
  "required": false,
5821
- "category": "Presentation"
5951
+ "category": "Accessibility"
5822
5952
  },
5823
5953
  {
5824
- "name": "placement",
5954
+ "name": "labelPosition",
5825
5955
  "type": {
5826
5956
  "kind": "enum",
5827
5957
  "values": [
5828
- "top",
5829
- "bottom",
5830
5958
  "right",
5831
5959
  "left",
5832
- "top-start",
5833
- "top-end",
5834
- "bottom-start",
5835
- "bottom-end",
5836
- "right-start",
5837
- "right-end",
5838
- "left-start",
5839
- "left-end"
5960
+ "center",
5961
+ "topleft",
5962
+ "topright"
5840
5963
  ]
5841
5964
  },
5842
- "description": "The placement of the popover.",
5843
- "default": "right",
5965
+ "description": "Position of the label relative to the input field.\n- 'left': Label appears to the left of the input\n- 'center': Label appears above the input, centered\n- 'right': Label appears to the right of the input\n- 'topleft': Label appears above the input, aligned to the left\n- 'topright': Label appears above the input, aligned to the right",
5844
5966
  "required": false,
5845
5967
  "category": "Presentation"
5846
5968
  },
5847
5969
  {
5848
- "name": "attach",
5970
+ "name": "size",
5849
5971
  "type": {
5850
- "kind": "primitive",
5851
- "name": "string"
5972
+ "kind": "enum",
5973
+ "values": [
5974
+ "medium",
5975
+ "small",
5976
+ "large",
5977
+ "block",
5978
+ "xlarge",
5979
+ "xxlarge",
5980
+ "mini"
5981
+ ]
5852
5982
  },
5853
- "description": "The DOM element the popover should be teleported to.\nDefaults to the body of the document.",
5854
- "default": "body",
5983
+ "description": "The size category of the field.",
5855
5984
  "required": false,
5856
- "category": "Behavior"
5985
+ "category": "Presentation"
5857
5986
  },
5858
5987
  {
5859
- "name": "inline",
5988
+ "name": "readonly",
5860
5989
  "type": {
5861
5990
  "kind": "primitive",
5862
5991
  "name": "boolean"
5863
5992
  },
5864
- "description": "Whether to disable teleport.\nIf enabled, the prop `attach` is ignored.",
5993
+ "description": "Whether the input is readonly.",
5865
5994
  "required": false,
5866
- "category": "Behavior"
5995
+ "category": "State"
5867
5996
  },
5868
5997
  {
5869
- "name": "html",
5998
+ "name": "disabled",
5870
5999
  "type": {
5871
6000
  "kind": "primitive",
5872
6001
  "name": "boolean"
5873
6002
  },
5874
- "description": "Whether the popover's content is treated as HTML.",
5875
- "default": "true",
6003
+ "description": "Whether the input is disabled.",
5876
6004
  "required": false,
5877
- "category": "Behavior"
6005
+ "category": "State"
5878
6006
  },
5879
6007
  {
5880
- "name": "disabled",
6008
+ "name": "invalid",
5881
6009
  "type": {
5882
6010
  "kind": "primitive",
5883
6011
  "name": "boolean"
5884
6012
  },
5885
- "description": "Whether the popover is disabled.",
6013
+ "description": "Whether the input is invalid.",
5886
6014
  "required": false,
5887
6015
  "category": "State"
5888
- }
5889
- ],
5890
- "events": [
6016
+ },
5891
6017
  {
5892
- "name": "update:modelValue",
5893
- "description": "",
5894
- "type": "[value: boolean]"
5895
- }
5896
- ],
5897
- "slots": [
6018
+ "name": "placeholder",
6019
+ "type": {
6020
+ "kind": "primitive",
6021
+ "name": "string"
6022
+ },
6023
+ "description": "Overrides the placeholder for the national number input. When omitted, the component\ndisplays zeros using the telephone format of the selected country.",
6024
+ "required": false,
6025
+ "category": "Content"
6026
+ },
5898
6027
  {
5899
- "name": "header",
5900
- "description": ""
6028
+ "name": "defaultCountry",
6029
+ "type": {
6030
+ "kind": "enum",
6031
+ "values": [
6032
+ "AM",
6033
+ "PM",
6034
+ "AC",
6035
+ "AD",
6036
+ "AE",
6037
+ "AF",
6038
+ "AG",
6039
+ "AI",
6040
+ "AL",
6041
+ "AO",
6042
+ "AR",
6043
+ "AS",
6044
+ "AT",
6045
+ "AU",
6046
+ "AW",
6047
+ "AX",
6048
+ "AZ",
6049
+ "BA",
6050
+ "BB",
6051
+ "BD",
6052
+ "BE",
6053
+ "BF",
6054
+ "BG",
6055
+ "BH",
6056
+ "BI",
6057
+ "BJ",
6058
+ "BL",
6059
+ "BM",
6060
+ "BN",
6061
+ "BO",
6062
+ "BQ",
6063
+ "BR",
6064
+ "BS",
6065
+ "BT",
6066
+ "BW",
6067
+ "BY",
6068
+ "BZ",
6069
+ "CA",
6070
+ "CC",
6071
+ "CD",
6072
+ "CF",
6073
+ "CG",
6074
+ "CH",
6075
+ "CI",
6076
+ "CK",
6077
+ "CL",
6078
+ "CM",
6079
+ "CN",
6080
+ "CO",
6081
+ "CR",
6082
+ "CU",
6083
+ "CV",
6084
+ "CW",
6085
+ "CX",
6086
+ "CY",
6087
+ "CZ",
6088
+ "DE",
6089
+ "DJ",
6090
+ "DK",
6091
+ "DM",
6092
+ "DO",
6093
+ "DZ",
6094
+ "EC",
6095
+ "EE",
6096
+ "EG",
6097
+ "EH",
6098
+ "ER",
6099
+ "ES",
6100
+ "ET",
6101
+ "FI",
6102
+ "FJ",
6103
+ "FK",
6104
+ "FM",
6105
+ "FO",
6106
+ "FR",
6107
+ "GA",
6108
+ "GB",
6109
+ "GD",
6110
+ "GE",
6111
+ "GF",
6112
+ "GG",
6113
+ "GH",
6114
+ "GI",
6115
+ "GL",
6116
+ "GM",
6117
+ "GN",
6118
+ "GP",
6119
+ "GQ",
6120
+ "GR",
6121
+ "GT",
6122
+ "GU",
6123
+ "GW",
6124
+ "GY",
6125
+ "HK",
6126
+ "HN",
6127
+ "HR",
6128
+ "HT",
6129
+ "HU",
6130
+ "ID",
6131
+ "IE",
6132
+ "IL",
6133
+ "IM",
6134
+ "IN",
6135
+ "IO",
6136
+ "IQ",
6137
+ "IR",
6138
+ "IS",
6139
+ "IT",
6140
+ "JE",
6141
+ "JM",
6142
+ "JO",
6143
+ "JP",
6144
+ "KE",
6145
+ "KG",
6146
+ "KH",
6147
+ "KI",
6148
+ "KM",
6149
+ "KN",
6150
+ "KP",
6151
+ "KR",
6152
+ "KW",
6153
+ "KY",
6154
+ "KZ",
6155
+ "LA",
6156
+ "LB",
6157
+ "LC",
6158
+ "LI",
6159
+ "LK",
6160
+ "LR",
6161
+ "LS",
6162
+ "LT",
6163
+ "LU",
6164
+ "LV",
6165
+ "LY",
6166
+ "MA",
6167
+ "MC",
6168
+ "MD",
6169
+ "ME",
6170
+ "MF",
6171
+ "MG",
6172
+ "MH",
6173
+ "MK",
6174
+ "ML",
6175
+ "MM",
6176
+ "MN",
6177
+ "MO",
6178
+ "MP",
6179
+ "MQ",
6180
+ "MR",
6181
+ "MS",
6182
+ "MT",
6183
+ "MU",
6184
+ "MV",
6185
+ "MW",
6186
+ "MX",
6187
+ "MY",
6188
+ "MZ",
6189
+ "NA",
6190
+ "NC",
6191
+ "NE",
6192
+ "NF",
6193
+ "NG",
6194
+ "NI",
6195
+ "NL",
6196
+ "NO",
6197
+ "NP",
6198
+ "NR",
6199
+ "NU",
6200
+ "NZ",
6201
+ "OM",
6202
+ "PA",
6203
+ "PE",
6204
+ "PF",
6205
+ "PG",
6206
+ "PH",
6207
+ "PK",
6208
+ "PL",
6209
+ "PR",
6210
+ "PS",
6211
+ "PT",
6212
+ "PW",
6213
+ "PY",
6214
+ "QA",
6215
+ "RE",
6216
+ "RO",
6217
+ "RS",
6218
+ "RU",
6219
+ "RW",
6220
+ "SA",
6221
+ "SB",
6222
+ "SC",
6223
+ "SD",
6224
+ "SE",
6225
+ "SG",
6226
+ "SH",
6227
+ "SI",
6228
+ "SJ",
6229
+ "SK",
6230
+ "SL",
6231
+ "SM",
6232
+ "SN",
6233
+ "SO",
6234
+ "SR",
6235
+ "SS",
6236
+ "ST",
6237
+ "SV",
6238
+ "SX",
6239
+ "SY",
6240
+ "SZ",
6241
+ "TA",
6242
+ "TC",
6243
+ "TD",
6244
+ "TG",
6245
+ "TH",
6246
+ "TJ",
6247
+ "TK",
6248
+ "TL",
6249
+ "TM",
6250
+ "TN",
6251
+ "TO",
6252
+ "TR",
6253
+ "TT",
6254
+ "TV",
6255
+ "TW",
6256
+ "TZ",
6257
+ "UA",
6258
+ "UG",
6259
+ "US",
6260
+ "UY",
6261
+ "UZ",
6262
+ "VA",
6263
+ "VC",
6264
+ "VE",
6265
+ "VG",
6266
+ "VI",
6267
+ "VN",
6268
+ "VU",
6269
+ "WF",
6270
+ "WS",
6271
+ "XK",
6272
+ "YE",
6273
+ "YT",
6274
+ "ZA",
6275
+ "ZM",
6276
+ "ZW"
6277
+ ]
6278
+ },
6279
+ "description": "The fallback country used when no country can be derived from `modelValue` and no\ncontrolled `country` is provided. Its precedence is after `country` and before\n`locale` and the first available country.",
6280
+ "required": false,
6281
+ "category": "Configuration"
5901
6282
  },
5902
6283
  {
5903
- "name": "header.prepend",
5904
- "description": ""
6284
+ "name": "countries",
6285
+ "type": {
6286
+ "kind": "array",
6287
+ "elementType": {
6288
+ "name": "enum",
6289
+ "value": [
6290
+ "AM",
6291
+ "PM",
6292
+ "AC",
6293
+ "AD",
6294
+ "AE",
6295
+ "AF",
6296
+ "AG",
6297
+ "AI",
6298
+ "AL",
6299
+ "AO",
6300
+ "AR",
6301
+ "AS",
6302
+ "AT",
6303
+ "AU",
6304
+ "AW",
6305
+ "AX",
6306
+ "AZ",
6307
+ "BA",
6308
+ "BB",
6309
+ "BD",
6310
+ "BE",
6311
+ "BF",
6312
+ "BG",
6313
+ "BH",
6314
+ "BI",
6315
+ "BJ",
6316
+ "BL",
6317
+ "BM",
6318
+ "BN",
6319
+ "BO",
6320
+ "BQ",
6321
+ "BR",
6322
+ "BS",
6323
+ "BT",
6324
+ "BW",
6325
+ "BY",
6326
+ "BZ",
6327
+ "CA",
6328
+ "CC",
6329
+ "CD",
6330
+ "CF",
6331
+ "CG",
6332
+ "CH",
6333
+ "CI",
6334
+ "CK",
6335
+ "CL",
6336
+ "CM",
6337
+ "CN",
6338
+ "CO",
6339
+ "CR",
6340
+ "CU",
6341
+ "CV",
6342
+ "CW",
6343
+ "CX",
6344
+ "CY",
6345
+ "CZ",
6346
+ "DE",
6347
+ "DJ",
6348
+ "DK",
6349
+ "DM",
6350
+ "DO",
6351
+ "DZ",
6352
+ "EC",
6353
+ "EE",
6354
+ "EG",
6355
+ "EH",
6356
+ "ER",
6357
+ "ES",
6358
+ "ET",
6359
+ "FI",
6360
+ "FJ",
6361
+ "FK",
6362
+ "FM",
6363
+ "FO",
6364
+ "FR",
6365
+ "GA",
6366
+ "GB",
6367
+ "GD",
6368
+ "GE",
6369
+ "GF",
6370
+ "GG",
6371
+ "GH",
6372
+ "GI",
6373
+ "GL",
6374
+ "GM",
6375
+ "GN",
6376
+ "GP",
6377
+ "GQ",
6378
+ "GR",
6379
+ "GT",
6380
+ "GU",
6381
+ "GW",
6382
+ "GY",
6383
+ "HK",
6384
+ "HN",
6385
+ "HR",
6386
+ "HT",
6387
+ "HU",
6388
+ "ID",
6389
+ "IE",
6390
+ "IL",
6391
+ "IM",
6392
+ "IN",
6393
+ "IO",
6394
+ "IQ",
6395
+ "IR",
6396
+ "IS",
6397
+ "IT",
6398
+ "JE",
6399
+ "JM",
6400
+ "JO",
6401
+ "JP",
6402
+ "KE",
6403
+ "KG",
6404
+ "KH",
6405
+ "KI",
6406
+ "KM",
6407
+ "KN",
6408
+ "KP",
6409
+ "KR",
6410
+ "KW",
6411
+ "KY",
6412
+ "KZ",
6413
+ "LA",
6414
+ "LB",
6415
+ "LC",
6416
+ "LI",
6417
+ "LK",
6418
+ "LR",
6419
+ "LS",
6420
+ "LT",
6421
+ "LU",
6422
+ "LV",
6423
+ "LY",
6424
+ "MA",
6425
+ "MC",
6426
+ "MD",
6427
+ "ME",
6428
+ "MF",
6429
+ "MG",
6430
+ "MH",
6431
+ "MK",
6432
+ "ML",
6433
+ "MM",
6434
+ "MN",
6435
+ "MO",
6436
+ "MP",
6437
+ "MQ",
6438
+ "MR",
6439
+ "MS",
6440
+ "MT",
6441
+ "MU",
6442
+ "MV",
6443
+ "MW",
6444
+ "MX",
6445
+ "MY",
6446
+ "MZ",
6447
+ "NA",
6448
+ "NC",
6449
+ "NE",
6450
+ "NF",
6451
+ "NG",
6452
+ "NI",
6453
+ "NL",
6454
+ "NO",
6455
+ "NP",
6456
+ "NR",
6457
+ "NU",
6458
+ "NZ",
6459
+ "OM",
6460
+ "PA",
6461
+ "PE",
6462
+ "PF",
6463
+ "PG",
6464
+ "PH",
6465
+ "PK",
6466
+ "PL",
6467
+ "PR",
6468
+ "PS",
6469
+ "PT",
6470
+ "PW",
6471
+ "PY",
6472
+ "QA",
6473
+ "RE",
6474
+ "RO",
6475
+ "RS",
6476
+ "RU",
6477
+ "RW",
6478
+ "SA",
6479
+ "SB",
6480
+ "SC",
6481
+ "SD",
6482
+ "SE",
6483
+ "SG",
6484
+ "SH",
6485
+ "SI",
6486
+ "SJ",
6487
+ "SK",
6488
+ "SL",
6489
+ "SM",
6490
+ "SN",
6491
+ "SO",
6492
+ "SR",
6493
+ "SS",
6494
+ "ST",
6495
+ "SV",
6496
+ "SX",
6497
+ "SY",
6498
+ "SZ",
6499
+ "TA",
6500
+ "TC",
6501
+ "TD",
6502
+ "TG",
6503
+ "TH",
6504
+ "TJ",
6505
+ "TK",
6506
+ "TL",
6507
+ "TM",
6508
+ "TN",
6509
+ "TO",
6510
+ "TR",
6511
+ "TT",
6512
+ "TV",
6513
+ "TW",
6514
+ "TZ",
6515
+ "UA",
6516
+ "UG",
6517
+ "US",
6518
+ "UY",
6519
+ "UZ",
6520
+ "VA",
6521
+ "VC",
6522
+ "VE",
6523
+ "VG",
6524
+ "VI",
6525
+ "VN",
6526
+ "VU",
6527
+ "WF",
6528
+ "WS",
6529
+ "XK",
6530
+ "YE",
6531
+ "YT",
6532
+ "ZA",
6533
+ "ZM",
6534
+ "ZW"
6535
+ ]
6536
+ }
6537
+ },
6538
+ "description": "The countries available for selection, in display order.\nAll supported countries are shown when this property is omitted.\nValid non-geographic numbers (for example, `+800`) are accepted only when this\nproperty is omitted because they do not map to a selectable country.\nThis filters the options at runtime; it does not reduce the bundled flag stylesheet.",
6539
+ "required": false,
6540
+ "category": "Configuration"
5905
6541
  },
5906
6542
  {
5907
- "name": "header.append",
5908
- "description": ""
6543
+ "name": "locale",
6544
+ "type": {
6545
+ "kind": "primitive",
6546
+ "name": "string"
6547
+ },
6548
+ "description": "The locale used to display, sort, and search country names. Its region is also used\nas a fallback country after `country` and `defaultCountry`. When omitted, `en-US`\nis used for deterministic server rendering.",
6549
+ "default": "en-US",
6550
+ "required": false,
6551
+ "category": "Configuration"
5909
6552
  },
5910
6553
  {
5911
- "name": "default",
5912
- "description": ""
5913
- }
6554
+ "name": "clearable",
6555
+ "type": {
6556
+ "kind": "primitive",
6557
+ "name": "boolean"
6558
+ },
6559
+ "description": "Whether the value of the field can be cleared.",
6560
+ "required": false,
6561
+ "category": "Behavior"
6562
+ },
6563
+ {
6564
+ "name": "autoValidate",
6565
+ "type": {
6566
+ "kind": "primitive",
6567
+ "name": "boolean"
6568
+ },
6569
+ "description": "Whether the component automatically displays validation feedback after blur.\nDisable this property when validation is managed externally through `invalid`.",
6570
+ "default": "true",
6571
+ "required": false,
6572
+ "category": "Behavior"
6573
+ },
6574
+ {
6575
+ "name": "inline",
6576
+ "type": {
6577
+ "kind": "primitive",
6578
+ "name": "boolean"
6579
+ },
6580
+ "description": "Whether to disable teleporting the country selector overlay.",
6581
+ "required": false,
6582
+ "category": "Behavior"
6583
+ },
6584
+ {
6585
+ "name": "texts",
6586
+ "type": {
6587
+ "kind": "object",
6588
+ "fields": {}
6589
+ },
6590
+ "description": "Custom text configurations.",
6591
+ "default": "DEFAULT_TEXTS",
6592
+ "required": false,
6593
+ "category": "Configuration"
6594
+ }
6595
+ ],
6596
+ "events": [
6597
+ {
6598
+ "name": "update:modelValue",
6599
+ "description": "",
6600
+ "type": "[value: string]"
6601
+ },
6602
+ {
6603
+ "name": "update:open",
6604
+ "description": "",
6605
+ "type": "[value: boolean]"
6606
+ },
6607
+ {
6608
+ "name": "click:clear",
6609
+ "description": "",
6610
+ "type": "[event: Event]"
6611
+ },
6612
+ {
6613
+ "name": "update:country",
6614
+ "description": "",
6615
+ "type": "[value: CountryCode | undefined]"
6616
+ },
6617
+ {
6618
+ "name": "validity-change",
6619
+ "description": "",
6620
+ "type": "[validity: QPhoneFieldValidity]"
6621
+ }
6622
+ ],
6623
+ "slots": [
6624
+ {
6625
+ "name": "label.prepend",
6626
+ "description": "Content before the field label."
6627
+ },
6628
+ {
6629
+ "name": "label.append",
6630
+ "description": "Content after the field label."
6631
+ },
6632
+ {
6633
+ "name": "append",
6634
+ "description": "Content after the telephone input and before the clear button."
6635
+ },
6636
+ {
6637
+ "name": "extras",
6638
+ "description": "Supporting or validation content associated with the input through `aria-describedby`.\nApply `validationId` to a more specific descendant only when an additional association\nis needed; the component always provides a wrapper with this ID."
6639
+ }
6640
+ ]
6641
+ },
6642
+ "examples": [
6643
+ {
6644
+ "title": "Default",
6645
+ "description": "Uses the default `en-US` locale and emits a complete international value.",
6646
+ "code": "<QPhoneField :label=\"Phone number\" :clearable=\"true\" :size=\"large\" />"
6647
+ },
6648
+ {
6649
+ "title": "International Value",
6650
+ "description": "Derives the country, flag, calling code, and national presentation from an E.164 value.",
6651
+ "code": "<QPhoneField :model-value=\"+442079460018\" />"
6652
+ },
6653
+ {
6654
+ "title": "Restricted Countries",
6655
+ "description": "Restricts and orders the countries shown in the searchable selector. This is a runtime filter; the component still includes the complete flag stylesheet.",
6656
+ "code": "<QPhoneField :countries=\"['PT', 'ES', 'FR', 'GB']\" :model-value=\"+351912345678\" />"
6657
+ },
6658
+ {
6659
+ "title": "Paste Detection",
6660
+ "description": "Paste a number beginning with `+` or `00` to update the country automatically.",
6661
+ "code": "<QPhoneField :label=\"Paste an international number\" />"
6662
+ },
6663
+ {
6664
+ "title": "Required Validation",
6665
+ "description": "Shows the built-in validation message after the required field loses focus.",
6666
+ "code": "<QPhoneField :required=\"true\" :clearable=\"false\" />"
6667
+ },
6668
+ {
6669
+ "title": "External Validation",
6670
+ "description": "Keeps the required semantics while delegating validation feedback to the application.",
6671
+ "code": "<QPhoneField :required=\"true\" :auto-validate=\"false\" :clearable=\"false\" />"
6672
+ },
6673
+ {
6674
+ "title": "Readonly",
6675
+ "description": "Prevents editing and country selection while retaining the formatted value.",
6676
+ "code": "<QPhoneField :model-value=\"+351912345678\" :readonly=\"true\" />"
6677
+ },
6678
+ {
6679
+ "title": "Disabled",
6680
+ "description": "Disables all interaction with the field.",
6681
+ "code": "<QPhoneField :model-value=\"+351912345678\" :disabled=\"true\" />"
6682
+ },
6683
+ {
6684
+ "title": "Invalid",
6685
+ "description": "Combines an application-provided invalid state with the component validation styling.",
6686
+ "code": "<QPhoneField :model-value=\"+35191\" :invalid=\"true\" />"
6687
+ }
6688
+ ]
6689
+ },
6690
+ {
6691
+ "name": "QPopover",
6692
+ "description": "A floating container that displays contextual content, triggered by a button.",
6693
+ "meta": {
6694
+ "props": [
6695
+ {
6696
+ "name": "modelValue",
6697
+ "type": {
6698
+ "kind": "primitive",
6699
+ "name": "boolean"
6700
+ },
6701
+ "description": "",
6702
+ "required": false
6703
+ },
6704
+ {
6705
+ "name": "id",
6706
+ "type": {
6707
+ "kind": "primitive",
6708
+ "name": "string"
6709
+ },
6710
+ "description": "The component unique identifier.",
6711
+ "required": false,
6712
+ "category": "Identification"
6713
+ },
6714
+ {
6715
+ "name": "anchor",
6716
+ "type": {
6717
+ "kind": "union",
6718
+ "types": [
6719
+ {
6720
+ "name": "string"
6721
+ },
6722
+ {
6723
+ "name": "object",
6724
+ "value": {}
6725
+ }
6726
+ ]
6727
+ },
6728
+ "description": "The DOM element the popover should be anchored to.",
6729
+ "required": true,
6730
+ "category": "Identification"
6731
+ },
6732
+ {
6733
+ "name": "text",
6734
+ "type": {
6735
+ "kind": "primitive",
6736
+ "name": "string"
6737
+ },
6738
+ "description": "The text of the popover.",
6739
+ "required": false,
6740
+ "category": "Content"
6741
+ },
6742
+ {
6743
+ "name": "title",
6744
+ "type": {
6745
+ "kind": "primitive",
6746
+ "name": "string"
6747
+ },
6748
+ "description": "The title of the popover.",
6749
+ "required": false,
6750
+ "category": "Content"
6751
+ },
6752
+ {
6753
+ "name": "headingLevel",
6754
+ "type": {
6755
+ "kind": "primitive",
6756
+ "name": "number"
6757
+ },
6758
+ "description": "The heading level of the title of the popover.",
6759
+ "default": "2",
6760
+ "required": false,
6761
+ "category": "Content"
6762
+ },
6763
+ {
6764
+ "name": "arrow",
6765
+ "type": {
6766
+ "kind": "primitive",
6767
+ "name": "boolean"
6768
+ },
6769
+ "description": "Whether the popover has an arrow pointing to the target.",
6770
+ "default": "true",
6771
+ "required": false,
6772
+ "category": "Presentation"
6773
+ },
6774
+ {
6775
+ "name": "placement",
6776
+ "type": {
6777
+ "kind": "enum",
6778
+ "values": [
6779
+ "top",
6780
+ "bottom",
6781
+ "right",
6782
+ "left",
6783
+ "top-start",
6784
+ "top-end",
6785
+ "bottom-start",
6786
+ "bottom-end",
6787
+ "right-start",
6788
+ "right-end",
6789
+ "left-start",
6790
+ "left-end"
6791
+ ]
6792
+ },
6793
+ "description": "The placement of the popover.",
6794
+ "default": "right",
6795
+ "required": false,
6796
+ "category": "Presentation"
6797
+ },
6798
+ {
6799
+ "name": "attach",
6800
+ "type": {
6801
+ "kind": "primitive",
6802
+ "name": "string"
6803
+ },
6804
+ "description": "The DOM element the popover should be teleported to.\nDefaults to the body of the document.",
6805
+ "default": "body",
6806
+ "required": false,
6807
+ "category": "Behavior"
6808
+ },
6809
+ {
6810
+ "name": "inline",
6811
+ "type": {
6812
+ "kind": "primitive",
6813
+ "name": "boolean"
6814
+ },
6815
+ "description": "Whether to disable teleport.\nIf enabled, the prop `attach` is ignored.",
6816
+ "required": false,
6817
+ "category": "Behavior"
6818
+ },
6819
+ {
6820
+ "name": "html",
6821
+ "type": {
6822
+ "kind": "primitive",
6823
+ "name": "boolean"
6824
+ },
6825
+ "description": "Whether the popover's content is treated as HTML.",
6826
+ "default": "true",
6827
+ "required": false,
6828
+ "category": "Behavior"
6829
+ },
6830
+ {
6831
+ "name": "disabled",
6832
+ "type": {
6833
+ "kind": "primitive",
6834
+ "name": "boolean"
6835
+ },
6836
+ "description": "Whether the popover is disabled.",
6837
+ "required": false,
6838
+ "category": "State"
6839
+ }
6840
+ ],
6841
+ "events": [
6842
+ {
6843
+ "name": "update:modelValue",
6844
+ "description": "",
6845
+ "type": "[value: boolean]"
6846
+ }
6847
+ ],
6848
+ "slots": [
6849
+ {
6850
+ "name": "header",
6851
+ "description": ""
6852
+ },
6853
+ {
6854
+ "name": "header.prepend",
6855
+ "description": ""
6856
+ },
6857
+ {
6858
+ "name": "header.append",
6859
+ "description": ""
6860
+ },
6861
+ {
6862
+ "name": "default",
6863
+ "description": ""
6864
+ }
5914
6865
  ]
5915
6866
  },
5916
6867
  "examples": [
@@ -6427,6 +7378,110 @@
6427
7378
  }
6428
7379
  ]
6429
7380
  },
7381
+ {
7382
+ "name": "QSection",
7383
+ "description": "A container with a title that groups related content.",
7384
+ "meta": {
7385
+ "props": [
7386
+ {
7387
+ "name": "id",
7388
+ "type": {
7389
+ "kind": "primitive",
7390
+ "name": "string"
7391
+ },
7392
+ "description": "The component unique identifier.",
7393
+ "required": false,
7394
+ "category": "Identification"
7395
+ },
7396
+ {
7397
+ "name": "title",
7398
+ "type": {
7399
+ "kind": "primitive",
7400
+ "name": "string"
7401
+ },
7402
+ "description": "The title of the section.",
7403
+ "required": false,
7404
+ "category": "Content"
7405
+ },
7406
+ {
7407
+ "name": "borderless",
7408
+ "type": {
7409
+ "kind": "primitive",
7410
+ "name": "boolean"
7411
+ },
7412
+ "description": "If true, the section has no borders.",
7413
+ "required": false,
7414
+ "category": "Presentation"
7415
+ },
7416
+ {
7417
+ "name": "variant",
7418
+ "type": {
7419
+ "kind": "enum",
7420
+ "values": [
7421
+ "default",
7422
+ "background",
7423
+ "title-background",
7424
+ "minor",
7425
+ "minor-border-top"
7426
+ ]
7427
+ },
7428
+ "description": "The styling variant of the section.",
7429
+ "default": "default",
7430
+ "required": false,
7431
+ "category": "Presentation"
7432
+ },
7433
+ {
7434
+ "name": "block",
7435
+ "type": {
7436
+ "kind": "primitive",
7437
+ "name": "boolean"
7438
+ },
7439
+ "description": "If true, the section spans the full width of its container.",
7440
+ "required": false,
7441
+ "category": "Presentation"
7442
+ }
7443
+ ],
7444
+ "events": [],
7445
+ "slots": [
7446
+ {
7447
+ "name": "default",
7448
+ "description": ""
7449
+ }
7450
+ ]
7451
+ },
7452
+ "examples": [
7453
+ {
7454
+ "title": "Default",
7455
+ "description": "A basic group box with a title and example content.",
7456
+ "code": "<q-section v-bind=\"args\">\n\t\t\t\t<span>Example of a group box</span>\n\t\t\t</q-section>"
7457
+ },
7458
+ {
7459
+ "title": "No Title",
7460
+ "description": "A group box without a title.",
7461
+ "code": "<QSection />"
7462
+ },
7463
+ {
7464
+ "title": "Borderless",
7465
+ "description": "A group box without borders.",
7466
+ "code": "<QSection :title=\"Borderless\" :borderless=\"true\" />"
7467
+ },
7468
+ {
7469
+ "title": "Block",
7470
+ "description": "A group box spanning full width of its container.",
7471
+ "code": "<QSection :title=\"Block Group Box\" :block=\"true\" />"
7472
+ },
7473
+ {
7474
+ "title": "Variants",
7475
+ "description": "Group box with different styling variants.",
7476
+ "code": "<div style=\"display: flex; flex-direction: column; gap: 1rem;\">\n\t\t\t\t<q-section title=\"Default\" variant=\"default\">\n\t\t\t\t\t<p>Default variant content</p>\n\t\t\t\t</q-section>\n\t\t\t\t<q-section title=\"Background\" variant=\"background\">\n\t\t\t\t\t<p>Background variant content</p>\n\t\t\t\t</q-section>\n\t\t\t\t<q-section title=\"Minor\" variant=\"minor\">\n\t\t\t\t\t<p>Minor variant content</p>\n\t\t\t\t</q-section>\n\t\t\t\t<q-section title=\"Minor Border Top\" variant=\"minor-border-top\">\n\t\t\t\t\t<p>Minor with border top variant content</p>\n\t\t\t\t</q-section>\n\t\t\t\t<q-section title=\"Title Background\" variant=\"title-background\">\n\t\t\t\t\t<p>Title background variant content</p>\n\t\t\t\t</q-section>\n\t\t\t</div>"
7477
+ },
7478
+ {
7479
+ "title": "Nested Groups",
7480
+ "description": "Nested group boxes demonstrating hierarchy.",
7481
+ "code": "<q-section v-bind=\"args\">\n\t\t\t\t<p>Top-level content</p>\n\t\t\t\t<q-section variant=\"minor\" title=\"Mid Level\">\n\t\t\t\t\t<p>Mid-level content</p>\n\t\t\t\t\t<q-section variant=\"minor-border-top\" title=\"Leaf\">\n\t\t\t\t\t\t<p>Leaf content</p>\n\t\t\t\t\t</q-section>\n\t\t\t\t</q-section>\n\t\t\t</q-section>"
7482
+ }
7483
+ ]
7484
+ },
6430
7485
  {
6431
7486
  "name": "QSelect",
6432
7487
  "description": "A list of selectable items, activated by clicking on the main field.",
@@ -6441,6 +7496,15 @@
6441
7496
  "description": "",
6442
7497
  "required": false
6443
7498
  },
7499
+ {
7500
+ "name": "open",
7501
+ "type": {
7502
+ "kind": "primitive",
7503
+ "name": "boolean"
7504
+ },
7505
+ "description": "",
7506
+ "required": false
7507
+ },
6444
7508
  {
6445
7509
  "name": "id",
6446
7510
  "type": {
@@ -6592,6 +7656,39 @@
6592
7656
  "required": false,
6593
7657
  "category": "Behavior"
6594
7658
  },
7659
+ {
7660
+ "name": "overlayAnchor",
7661
+ "type": {
7662
+ "kind": "union",
7663
+ "types": [
7664
+ {
7665
+ "name": "other",
7666
+ "value": "null"
7667
+ },
7668
+ {
7669
+ "name": "string"
7670
+ },
7671
+ {
7672
+ "name": "object",
7673
+ "value": {}
7674
+ }
7675
+ ]
7676
+ },
7677
+ "description": "An alternative element used to anchor and size the options overlay.",
7678
+ "required": false,
7679
+ "category": "Identification"
7680
+ },
7681
+ {
7682
+ "name": "selectOnTab",
7683
+ "type": {
7684
+ "kind": "primitive",
7685
+ "name": "boolean"
7686
+ },
7687
+ "description": "Whether pressing Tab while an option is focused selects it before focus moves away.",
7688
+ "default": "true",
7689
+ "required": false,
7690
+ "category": "Behavior"
7691
+ },
6595
7692
  {
6596
7693
  "name": "multiple",
6597
7694
  "type": {
@@ -6683,6 +7780,11 @@
6683
7780
  "description": "",
6684
7781
  "type": "[value: any]"
6685
7782
  },
7783
+ {
7784
+ "name": "update:open",
7785
+ "description": "",
7786
+ "type": "[value: boolean]"
7787
+ },
6686
7788
  {
6687
7789
  "name": "before-show",
6688
7790
  "description": "",
@@ -6709,6 +7811,10 @@
6709
7811
  "name": "prepend",
6710
7812
  "description": ""
6711
7813
  },
7814
+ {
7815
+ "name": "value",
7816
+ "description": ""
7817
+ },
6712
7818
  {
6713
7819
  "name": "append",
6714
7820
  "description": ""
@@ -6809,17 +7915,14 @@
6809
7915
  "required": false
6810
7916
  },
6811
7917
  {
6812
- "name": "panels",
7918
+ "name": "id",
6813
7919
  "type": {
6814
- "kind": "array",
6815
- "elementType": {
6816
- "name": "object",
6817
- "value": {}
6818
- }
7920
+ "kind": "primitive",
7921
+ "name": "string"
6819
7922
  },
6820
- "description": "List of panels that can be anchored in the sidebar.",
7923
+ "description": "The component unique identifier.",
6821
7924
  "required": false,
6822
- "category": "Content"
7925
+ "category": "Identification"
6823
7926
  },
6824
7927
  {
6825
7928
  "name": "anchorWidth",
@@ -6884,13 +7987,18 @@
6884
7987
  "type": "[finalWidth: number]"
6885
7988
  }
6886
7989
  ],
6887
- "slots": []
7990
+ "slots": [
7991
+ {
7992
+ "name": "default",
7993
+ "description": ""
7994
+ }
7995
+ ]
6888
7996
  },
6889
7997
  "examples": [
6890
7998
  {
6891
7999
  "title": "Default",
6892
8000
  "description": "Default sidebar with four panels and basic slot content.",
6893
- "code": "<QSidebar :panels=\"[\n\t\t\t{ id: 'activity', icon: { icon: 'bell' }, title: 'Activity' },\n\t\t\t{ id: 'chat', icon: { icon: 'chat' }, title: 'Chat' },\n\t\t\t{ id: 'calendar', icon: { icon: 'calendar' }, title: 'Calendar' },\n\t\t\t{ id: 'calls', icon: { icon: 'phone' }, title: 'Calls' }\n\t\t]\" />"
8001
+ "code": "<QSidebar v-bind=\"args\">\n\t\t\t\t${defaultItems}\n\t\t\t</QSidebar>"
6894
8002
  },
6895
8003
  {
6896
8004
  "title": "With Labels",
@@ -6900,42 +8008,47 @@
6900
8008
  {
6901
8009
  "title": "Right",
6902
8010
  "description": "Sidebar positioned on the right side of the screen.",
6903
- "code": "<QSidebar :position=\"right\" />"
8011
+ "code": "<QSidebar :show-labels=\"true\" :position=\"right\" />"
6904
8012
  },
6905
8013
  {
6906
8014
  "title": "Starts Expanded",
6907
8015
  "description": "Sidebar with a panel expanded by default.",
6908
- "code": "<QSidebar :model-value=\"activity\" />"
8016
+ "code": "<QSidebar :show-labels=\"true\" :model-value=\"activity\" />"
6909
8017
  },
6910
8018
  {
6911
8019
  "title": "Panel Size",
6912
8020
  "description": "Sidebar panels with different predefined initial widths.",
6913
- "code": "<QSidebar v-bind=\"args\">\n <template #content:activity>\n\t\t\t\t\t<div style=\"padding: 0 1rem;\">\n\t\t\t\t\t\t<p>Resize this panel to see how it behaves. Use the toggle group below to set the width of this panel.</p>\n\t\t\t\t\t\t<QToggleGroup v-model=\"args.panels[0].initialWidth\">\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"small\" label=\"Small\" />\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"medium\" label=\"Medium\" />\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"large\" label=\"Large\" />\n\t\t\t\t\t\t</QToggleGroup>\n\t\t\t\t\t</div>\n </template>\n </QSidebar>"
8021
+ "code": "<QSidebar v-bind=\"args\">\n\t\t\t\t<q-sidebar-item\n\t\t\t\t\tvalue=\"activity\"\n\t\t\t\t\ttitle=\"Activity\"\n\t\t\t\t\t:icon=\"{ icon: 'bell' }\"\n\t\t\t\t\t:initial-width=\"activityWidth\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<p>Resize this panel to see how it behaves. Use the toggle group below to set the width of this panel.</p>\n\t\t\t\t\t\t<QToggleGroup v-model=\"activityWidth\">\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"small\" label=\"Small\" />\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"medium\" label=\"Medium\" />\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"large\" label=\"Large\" />\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"xlarge\" label=\"XLarge\" />\n\t\t\t\t\t\t\t<QToggleGroupItem value=\"block\" label=\"Block\" />\n\t\t\t\t\t\t</QToggleGroup>\n\t\t\t\t\t</div>\n\t\t\t\t</q-sidebar-item>\n\t\t\t\t<q-sidebar-item value=\"chat\" title=\"Chat\" :icon=\"{ icon: 'chat' }\" initial-width=\"large\" />\n\t\t\t\t<q-sidebar-item value=\"calendar\" title=\"Calendar\" :icon=\"{ icon: 'calendar' }\" initial-width=\"medium\" />\n\t\t\t\t<q-sidebar-item value=\"calls\" title=\"Calls\" :icon=\"{ icon: 'phone' }\" initial-width=\"small\" />\n\t\t\t</QSidebar>"
8022
+ },
8023
+ {
8024
+ "title": "Fluid Sizes",
8025
+ "description": "Sidebar with fluid panel sizes that fill half or all of the container.",
8026
+ "code": "<QSidebar v-bind=\"args\" show-labels>\n\t\t\t\t<q-sidebar-item value=\"half\" title=\"Half\" :icon=\"{ icon: 'resize' }\" initial-width=\"xlarge\">\n\t\t\t\t\tThis panel occupies half of the container width.\n\t\t\t\t</q-sidebar-item>\n\t\t\t\t<q-sidebar-item value=\"full\" title=\"Full\" :icon=\"{ icon: 'arrow-expand' }\" initial-width=\"block\">\n\t\t\t\t\tThis panel occupies the full container width.\n\t\t\t\t</q-sidebar-item>\n\t\t\t</QSidebar>"
6914
8027
  },
6915
8028
  {
6916
8029
  "title": "Resizable",
6917
8030
  "description": "Sidebar with resizable panels enabled.",
6918
- "code": "<QSidebar :panels=\"[\n\t\t\t{ id: 'activity', icon: { icon: 'bell' }, title: 'Activity', resizable: true },\n\t\t\t{ id: 'chat', icon: { icon: 'chat' }, title: 'Chat', resizable: true },\n\t\t\t{ id: 'calendar', icon: { icon: 'calendar' }, title: 'Calendar', resizable: true },\n\t\t\t{ id: 'calls', icon: { icon: 'phone' }, title: 'Calls', resizable: true }\n\t\t]\" :model-value=\"activity\" />"
8031
+ "code": "<QSidebar v-bind=\"args\">\n\t\t\t\t<q-sidebar-item value=\"activity\" title=\"Activity\" :icon=\"{ icon: 'bell' }\" resizable />\n\t\t\t\t<q-sidebar-item value=\"chat\" title=\"Chat\" :icon=\"{ icon: 'chat' }\" resizable />\n\t\t\t\t<q-sidebar-item value=\"calendar\" title=\"Calendar\" :icon=\"{ icon: 'calendar' }\" resizable />\n\t\t\t\t<q-sidebar-item value=\"calls\" title=\"Calls\" :icon=\"{ icon: 'phone' }\" resizable />\n\t\t\t</QSidebar>"
6919
8032
  },
6920
8033
  {
6921
8034
  "title": "Header",
6922
- "description": "Use the `header:${id}` slot to add a sticky header to a sidebar panel.",
6923
- "code": "<QSidebar v-bind=\"args\">\n <template #header:activity>\n <img src=\"/logo.png\" style=\"max-height: 100px; max-width: 150px;\" />\n </template>\n </QSidebar>"
8035
+ "description": "Use the `header` slot to add a sticky header to a sidebar panel.",
8036
+ "code": "<QSidebar v-bind=\"args\">\n\t\t\t\t<q-sidebar-item value=\"activity\" title=\"Activity\" :icon=\"{ icon: 'bell' }\">\n\t\t\t\t\t<template #header>\n\t\t\t\t\t\t<img src=\"/logo.png\" style=\"max-height: 100px; max-width: 150px;\" />\n\t\t\t\t\t</template>\n\t\t\t\t</q-sidebar-item>\n\t\t\t\t<q-sidebar-item value=\"chat\" title=\"Chat\" :icon=\"{ icon: 'chat' }\" />\n\t\t\t\t<q-sidebar-item value=\"calendar\" title=\"Calendar\" :icon=\"{ icon: 'calendar' }\" />\n\t\t\t\t<q-sidebar-item value=\"calls\" title=\"Calls\" :icon=\"{ icon: 'phone' }\" />\n\t\t\t</QSidebar>"
6924
8037
  },
6925
8038
  {
6926
8039
  "title": "Content",
6927
- "description": "Use the `content:${id}` slot to add main content to a sidebar panel.",
6928
- "code": "<QSidebar v-bind=\"args\">\n <template #content:activity>\n\t\t\t\t\t<div style=\"padding: 0 1rem;\">\n \tActivity content goes here.\n\t\t\t\t\t</div>\n </template>\n </QSidebar>"
8040
+ "description": "Use the default slot to add main content to a sidebar panel.",
8041
+ "code": "<QSidebar :model-value=\"activity\" />"
6929
8042
  },
6930
8043
  {
6931
8044
  "title": "Footer",
6932
- "description": "Use the `footer:${id}` slot to add a sticky footer to a sidebar panel.",
6933
- "code": "<QSidebar v-bind=\"args\">\n <template #footer:chat>\n <QCard\n\t\t\t\t\tclass=\"prompt\"\n\t\t\t\t\twidth=\"block\"\n\t\t\t\t\televation=\"low\">\n <QTextArea\n v-model=\"prompt\"\n class=\"prompt__textarea\"\n placeholder=\"Ask anything\"\n size=\"block\"\n :rows=\"1\"\n resize=\"none\"\n autosize\n />\n\n <template #footer>\n <div class=\"prompt__actions\">\n <QButton ref=\"upload\" pill>\n <QIcon icon=\"plus\" />\n </QButton>\n <QDropdownMenu\n :activator=\"uploadRef?.$el\"\n :items=\"uploadItems\"\n :groups=\"uploadGroups\"\n />\n\n <QToggle ref=\"search\" pill>\n <QIcon icon=\"earth\" />\n Search\n </QToggle>\n\n <QToggle ref=\"reason\" pill>\n <QIcon icon=\"lightbulb-outline\" />\n Reason\n </QToggle>\n\n <QButton ref=\"more\" pill>\n <QIcon icon=\"dots-horizontal\" />\n </QButton>\n <QDropdownMenu :activator=\"moreRef?.$el\" :items=\"moreItems\" />\n\n <QButton\n ref=\"action\"\n class=\"prompt__voice-mode\"\n variant=\"bold\"\n pill\n >\n <QIcon :icon=\"isPromptEmpty ? 'waveform' : 'arrow-up'\" />\n </QButton>\n </div>\n </template>\n </QCard>\n </template>\n </QSidebar>"
8045
+ "description": "Use the `footer` slot to add a sticky footer to a sidebar panel.",
8046
+ "code": "<QSidebar v-bind=\"args\">\n\t\t\t\t<q-sidebar-item\n\t\t\t\t\tvalue=\"chat\"\n\t\t\t\t\ttitle=\"Chat\"\n\t\t\t\t\t:icon=\"{ icon: 'robot-happy' }\"\n\t\t\t\t\tinitial-width=\"large\"\n\t\t\t\t\tmin-width=\"medium\"\n\t\t\t\t\tresizable>\n\t\t\t\t\t<template #footer>\n\t\t\t\t\t\t<QCard class=\"prompt\" width=\"block\" elevation=\"low\">\n\t\t\t\t\t\t\t<QTextArea\n\t\t\t\t\t\t\t\tv-model=\"prompt\"\n\t\t\t\t\t\t\t\tclass=\"prompt__textarea\"\n\t\t\t\t\t\t\t\tplaceholder=\"Ask anything\"\n\t\t\t\t\t\t\t\tsize=\"block\"\n\t\t\t\t\t\t\t\t:rows=\"1\"\n\t\t\t\t\t\t\t\tresize=\"none\"\n\t\t\t\t\t\t\t\tautosize\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<template #footer>\n\t\t\t\t\t\t\t\t<div class=\"prompt__actions\">\n\t\t\t\t\t\t\t\t\t<QButton ref=\"upload\" pill>\n\t\t\t\t\t\t\t\t\t\t<QIcon icon=\"plus\" />\n\t\t\t\t\t\t\t\t\t</QButton>\n\t\t\t\t\t\t\t\t\t<QDropdownMenu\n\t\t\t\t\t\t\t\t\t\t:activator=\"uploadRef?.$el\"\n\t\t\t\t\t\t\t\t\t\t:items=\"uploadItems\"\n\t\t\t\t\t\t\t\t\t\t:groups=\"uploadGroups\"\n\t\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t\t<QToggle ref=\"search\" pill>\n\t\t\t\t\t\t\t\t\t\t<QIcon icon=\"earth\" />\n\t\t\t\t\t\t\t\t\t\tSearch\n\t\t\t\t\t\t\t\t\t</QToggle>\n\n\t\t\t\t\t\t\t\t\t<QToggle ref=\"reason\" pill>\n\t\t\t\t\t\t\t\t\t\t<QIcon icon=\"lightbulb-outline\" />\n\t\t\t\t\t\t\t\t\t\tReason\n\t\t\t\t\t\t\t\t\t</QToggle>\n\n\t\t\t\t\t\t\t\t\t<QButton ref=\"more\" pill>\n\t\t\t\t\t\t\t\t\t\t<QIcon icon=\"dots-horizontal\" />\n\t\t\t\t\t\t\t\t\t</QButton>\n\t\t\t\t\t\t\t\t\t<QDropdownMenu :activator=\"moreRef?.$el\" :items=\"moreItems\" />\n\n\t\t\t\t\t\t\t\t\t<QButton ref=\"action\" class=\"prompt__voice-mode\" variant=\"bold\" pill>\n\t\t\t\t\t\t\t\t\t\t<QIcon :icon=\"isPromptEmpty ? 'waveform' : 'arrow-up'\" />\n\t\t\t\t\t\t\t\t\t</QButton>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</QCard>\n\t\t\t\t\t</template>\n\t\t\t\t</q-sidebar-item>\n\t\t\t</QSidebar>"
6934
8047
  },
6935
8048
  {
6936
8049
  "title": "Custom Anchor Items",
6937
- "description": "Use the `anchor:${id}` slot to customize items of the sidebar anchor.",
6938
- "code": "<QSidebar v-bind=\"args\">\n <template #anchor:activity=\"{ item }\">\n\t\t\t\t\t<QBadgeIndicator color=\"highlight\">\n\t\t\t\t\t\t<QIcon v-bind=\"item.icon\" />\n\t\t\t\t\t</QBadgeIndicator>\n </template>\n\t\t\t\t<template #content:activity>\n\t\t\t\t\t<div style=\"padding: 0 1rem;\">\n\t\t\t\t\t\t<div class=\"alert\">\n\t\t\t\t\t\t\t<QIcon icon=\"alert\" />\n\t\t\t\t\t\t\tHeads up!\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n </template>\n </QSidebar>"
8050
+ "description": "Use the `anchor` slot to customize items of the sidebar anchor.",
8051
+ "code": "<QSidebar v-bind=\"args\">\n\t\t\t\t<q-sidebar-item value=\"activity\" title=\"Activity\" :icon=\"{ icon: 'bell' }\">\n\t\t\t\t\t<template #anchor>\n\t\t\t\t\t\t<QBadgeIndicator color=\"highlight\">\n\t\t\t\t\t\t\t<QIcon icon=\"bell\" />\n\t\t\t\t\t\t</QBadgeIndicator>\n\t\t\t\t\t</template>\n\t\t\t\t\t<div class=\"alert\">\n\t\t\t\t\t\t<QIcon icon=\"alert\" />\n\t\t\t\t\t\tHeads up!\n\t\t\t\t\t</div>\n\t\t\t\t</q-sidebar-item>\n\t\t\t\t<q-sidebar-item value=\"chat\" title=\"Chat\" :icon=\"{ icon: 'chat' }\" />\n\t\t\t\t<q-sidebar-item value=\"calendar\" title=\"Calendar\" :icon=\"{ icon: 'calendar' }\" />\n\t\t\t\t<q-sidebar-item value=\"calls\" title=\"Calls\" :icon=\"{ icon: 'phone' }\" />\n\t\t\t</QSidebar>"
6939
8052
  }
6940
8053
  ]
6941
8054
  },
@@ -7386,8 +8499,8 @@
7386
8499
  },
7387
8500
  {
7388
8501
  "title": "With Title Slots",
7389
- "description": "Tabs with prepend and append title slots.",
7390
- "code": "<q-tabs v-bind=\"args\">\n\t\t\t\t<q-tab title=\"Inbox\" value=\"inbox\">\n\t\t\t\t\t<template #title.prepend>📥</template>\n\t\t\t\t\t<template #title.append>(3)</template>\n\t\t\t\t\tInbox messages.\n\t\t\t\t</q-tab>\n\t\t\t\t<q-tab title=\"Sent\" value=\"sent\">\n\t\t\t\t\t<template #title.prepend>📤</template>\n\t\t\t\t\tSent messages.\n\t\t\t\t</q-tab>\n\t\t\t</q-tabs>"
8502
+ "description": "Tabs with title, prepend, and append slots.",
8503
+ "code": "<q-tabs v-bind=\"args\">\n\t\t\t\t<q-tab title=\"Inbox\" value=\"inbox\">\n\t\t\t\t\t<template #title.prepend>📥</template>\n\t\t\t\t\t<template #title.append>(3)</template>\n\t\t\t\t\tInbox messages.\n\t\t\t\t</q-tab>\n\t\t\t\t<q-tab title=\"Sent\" value=\"sent\">\n\t\t\t\t\t<template #title.prepend>📤</template>\n\t\t\t\t\tSent messages.\n\t\t\t\t</q-tab>\n\t\t\t\t<q-tab value=\"alerts\">\n\t\t\t\t\t<template #title>\n\t\t\t\t\t\t<q-badge\n\t\t\t\t\t\t\tvariant=\"bold\"\n\t\t\t\t\t\t\tpill\n\t\t\t\t\t\t\tstyle=\"height: 1.25rem; margin-block: -0.25rem\">\n\t\t\t\t\t\t\tAlerts\n\t\t\t\t\t\t</q-badge>\n\t\t\t\t\t</template>\n\t\t\t\t\tAlert notifications.\n\t\t\t\t</q-tab>\n\t\t\t</q-tabs>"
7391
8504
  },
7392
8505
  {
7393
8506
  "title": "Disabled",
@@ -7581,9 +8694,9 @@
7581
8694
  "type": {
7582
8695
  "kind": "enum",
7583
8696
  "values": [
8697
+ "off",
7584
8698
  "soft",
7585
- "hard",
7586
- "off"
8699
+ "hard"
7587
8700
  ]
7588
8701
  },
7589
8702
  "description": "Whether the text of the text area field can be wrapped and how.",