@quaffui/quaff 0.1.0-prealpha12 → 0.1.0-prealpha15

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 (188) hide show
  1. package/dist/components/avatar/QAvatar.svelte +37 -29
  2. package/dist/components/avatar/QAvatar.svelte.d.ts +0 -1
  3. package/dist/components/avatar/docs.d.ts +1 -1
  4. package/dist/components/avatar/docs.props.js +2 -0
  5. package/dist/components/avatar/props.d.ts +1 -1
  6. package/dist/components/breadcrumbs/QBreadcrumbs.svelte +3 -8
  7. package/dist/components/breadcrumbs/QBreadcrumbsEl.svelte +12 -20
  8. package/dist/components/breadcrumbs/docs.d.ts +1 -1
  9. package/dist/components/breadcrumbs/docs.props.js +2 -0
  10. package/dist/components/breadcrumbs/props.d.ts +1 -1
  11. package/dist/components/button/QBtn.svelte +23 -27
  12. package/dist/components/button/docs.d.ts +1 -1
  13. package/dist/components/button/docs.props.js +18 -0
  14. package/dist/components/button/props.d.ts +1 -1
  15. package/dist/components/card/QCard.svelte +8 -9
  16. package/dist/components/card/QCardActions.svelte +7 -11
  17. package/dist/components/card/QCardSection.svelte +7 -9
  18. package/dist/components/card/docs.d.ts +1 -1
  19. package/dist/components/card/docs.props.js +3 -1
  20. package/dist/components/card/props.d.ts +2 -2
  21. package/dist/components/checkbox/QCheckbox.svelte +6 -8
  22. package/dist/components/checkbox/docs.d.ts +1 -1
  23. package/dist/components/checkbox/docs.props.js +2 -0
  24. package/dist/components/checkbox/props.d.ts +1 -1
  25. package/dist/components/chip/QChip.svelte +39 -30
  26. package/dist/components/chip/QChip.svelte.d.ts +2 -1
  27. package/dist/components/chip/docs.d.ts +1 -1
  28. package/dist/components/chip/docs.props.js +10 -0
  29. package/dist/components/chip/index.scss +18 -1
  30. package/dist/components/chip/props.d.ts +6 -1
  31. package/dist/components/codeBlock/QCodeBlock.svelte +24 -22
  32. package/dist/components/codeBlock/QCodeBlock.svelte.d.ts +0 -1
  33. package/dist/components/codeBlock/docs.props.js +2 -0
  34. package/dist/components/dialog/QDialog.svelte +40 -49
  35. package/dist/components/dialog/QDialog.svelte.d.ts +6 -5
  36. package/dist/components/dialog/docs.d.ts +1 -1
  37. package/dist/components/dialog/docs.props.js +22 -4
  38. package/dist/components/dialog/index.scss +5 -4
  39. package/dist/components/dialog/props.d.ts +5 -5
  40. package/dist/components/drawer/QDrawer.svelte +3 -3
  41. package/dist/components/drawer/docs.d.ts +1 -1
  42. package/dist/components/drawer/docs.props.js +3 -1
  43. package/dist/components/drawer/props.d.ts +1 -1
  44. package/dist/components/footer/QFooter.svelte +3 -3
  45. package/dist/components/footer/docs.d.ts +1 -1
  46. package/dist/components/footer/docs.props.js +6 -4
  47. package/dist/components/footer/props.d.ts +1 -1
  48. package/dist/components/header/QHeader.svelte +2 -2
  49. package/dist/components/header/docs.props.d.ts +24 -0
  50. package/dist/components/header/docs.props.js +72 -0
  51. package/dist/components/icon/QIcon.svelte +10 -19
  52. package/dist/components/icon/QIcon.svelte.d.ts +0 -1
  53. package/dist/components/icon/docs.d.ts +1 -1
  54. package/dist/components/icon/docs.props.js +6 -4
  55. package/dist/components/icon/props.d.ts +1 -1
  56. package/dist/components/index.d.ts +2 -1
  57. package/dist/components/index.js +2 -1
  58. package/dist/components/input/QInput.svelte +62 -73
  59. package/dist/components/input/QInput.svelte.d.ts +3 -2
  60. package/dist/components/input/docs.d.ts +1 -1
  61. package/dist/components/input/docs.js +1 -7
  62. package/dist/components/input/docs.props.js +7 -13
  63. package/dist/components/input/index.scss +1 -3
  64. package/dist/components/input/props.d.ts +1 -3
  65. package/dist/components/input/props.js +0 -1
  66. package/dist/components/layout/QLayout.svelte +6 -6
  67. package/dist/components/layout/QLayout.svelte.d.ts +2 -2
  68. package/dist/components/layout/docs.d.ts +1 -1
  69. package/dist/components/layout/docs.props.js +9 -7
  70. package/dist/components/layout/index.scss +2 -6
  71. package/dist/components/layout/props.d.ts +1 -1
  72. package/dist/components/list/QItem.svelte +29 -29
  73. package/dist/components/list/QItemSection.svelte +12 -15
  74. package/dist/components/list/QList.svelte +12 -13
  75. package/dist/components/list/docs.d.ts +1 -1
  76. package/dist/components/list/docs.props.js +45 -27
  77. package/dist/components/list/index.scss +1 -0
  78. package/dist/components/list/props.d.ts +1 -1
  79. package/dist/components/list/props.js +1 -1
  80. package/dist/components/private/QApi.svelte +2 -2
  81. package/dist/components/private/QApi.svelte.d.ts +1 -1
  82. package/dist/components/private/QDocs.svelte +2 -2
  83. package/dist/components/private/QDocs.svelte.d.ts +1 -1
  84. package/dist/components/private/QDocsSection.svelte +2 -3
  85. package/dist/components/progress/QCircularProgress.svelte +14 -11
  86. package/dist/components/progress/QLinearProgress.svelte +17 -23
  87. package/dist/components/progress/QLinearProgress.svelte.d.ts +0 -1
  88. package/dist/components/progress/docs.d.ts +1 -1
  89. package/dist/components/progress/docs.props.js +17 -15
  90. package/dist/components/progress/index.scss +20 -3
  91. package/dist/components/progress/props.d.ts +1 -1
  92. package/dist/components/radio/QRadio.svelte +2 -8
  93. package/dist/components/radio/docs.d.ts +1 -1
  94. package/dist/components/radio/docs.props.js +5 -3
  95. package/dist/components/radio/props.d.ts +1 -1
  96. package/dist/components/radio/props.js +1 -1
  97. package/dist/components/railbar/QRailbar.svelte +3 -3
  98. package/dist/components/railbar/docs.d.ts +1 -1
  99. package/dist/components/railbar/docs.props.js +9 -7
  100. package/dist/components/railbar/props.d.ts +1 -1
  101. package/dist/components/select/QSelect.svelte +87 -93
  102. package/dist/components/select/QSelect.svelte.d.ts +2 -1
  103. package/dist/components/select/docs.d.ts +1 -1
  104. package/dist/components/select/docs.js +1 -7
  105. package/dist/components/select/docs.props.js +6 -12
  106. package/dist/components/select/index.scss +17 -4
  107. package/dist/components/select/props.d.ts +1 -3
  108. package/dist/components/select/props.js +0 -1
  109. package/dist/components/separator/QSeparator.svelte +39 -50
  110. package/dist/components/separator/QSeparator.svelte.d.ts +0 -1
  111. package/dist/components/separator/docs.d.ts +1 -1
  112. package/dist/components/separator/docs.props.js +15 -13
  113. package/dist/components/separator/index.scss +52 -0
  114. package/dist/components/separator/props.d.ts +3 -3
  115. package/dist/components/table/QTable.svelte +8 -17
  116. package/dist/components/table/QTable.svelte.d.ts +1 -2
  117. package/dist/components/table/docs.d.ts +1 -1
  118. package/dist/components/table/docs.props.js +3 -1
  119. package/dist/components/table/props.d.ts +1 -1
  120. package/dist/components/tabs/QTab.svelte +50 -43
  121. package/dist/components/tabs/QTab.svelte.d.ts +1 -1
  122. package/dist/components/tabs/QTabs.svelte +61 -42
  123. package/dist/components/tabs/QTabs.svelte.d.ts +11 -1
  124. package/dist/components/tabs/docs.d.ts +1 -1
  125. package/dist/components/tabs/docs.props.js +5 -3
  126. package/dist/components/tabs/index.scss +30 -21
  127. package/dist/components/tabs/props.d.ts +2 -4
  128. package/dist/components/tabs/props.js +1 -13
  129. package/dist/components/toggle/QToggle.svelte +7 -16
  130. package/dist/components/toggle/docs.d.ts +1 -1
  131. package/dist/components/toggle/docs.props.js +2 -0
  132. package/dist/components/toggle/props.d.ts +1 -1
  133. package/dist/components/toggle/props.js +1 -1
  134. package/dist/components/toolbar/QToolbar.svelte +12 -16
  135. package/dist/components/toolbar/QToolbar.svelte.d.ts +0 -1
  136. package/dist/components/toolbar/QToolbarTitle.svelte +1 -1
  137. package/dist/components/toolbar/docs.d.ts +1 -1
  138. package/dist/components/toolbar/docs.props.js +26 -8
  139. package/dist/components/toolbar/props.d.ts +1 -1
  140. package/dist/components/tooltip/QTooltip.svelte +10 -8
  141. package/dist/components/tooltip/docs.d.ts +1 -1
  142. package/dist/components/tooltip/docs.props.js +3 -1
  143. package/dist/components/tooltip/index.scss +1 -0
  144. package/dist/components/tooltip/props.d.ts +1 -1
  145. package/dist/components/tooltip/props.js +1 -1
  146. package/dist/composables/index.d.ts +3 -0
  147. package/dist/composables/index.js +3 -1
  148. package/dist/composables/use-align.d.ts +1 -1
  149. package/dist/composables/use-align.js +1 -1
  150. package/dist/composables/use-router-link.d.ts +1 -1
  151. package/dist/composables/use-router-link.js +2 -2
  152. package/dist/composables/use-size.d.ts +1 -1
  153. package/dist/composables/use-size.js +2 -2
  154. package/dist/css/index.css +1 -1
  155. package/dist/css/index.scss +1 -0
  156. package/dist/css/mixins/field-mixins.scss +53 -0
  157. package/dist/css/mixins.scss +5 -4
  158. package/dist/css/ripple.scss +8 -1
  159. package/dist/css/shared/q-field.scss +318 -0
  160. package/dist/css/theme/colors.module.scss +261 -109
  161. package/dist/css/theme/palette.scss +8 -2
  162. package/dist/helpers/index.d.ts +1 -1
  163. package/dist/helpers/index.js +1 -1
  164. package/dist/helpers/ripple.js +12 -10
  165. package/dist/helpers/version.d.ts +1 -1
  166. package/dist/helpers/version.js +1 -1
  167. package/dist/stores/QTheme.d.ts +8 -7
  168. package/dist/stores/QTheme.js +3 -3
  169. package/dist/stores/Quaff.js +1 -1
  170. package/dist/stores/index.d.ts +2 -0
  171. package/dist/stores/index.js +2 -0
  172. package/dist/utils/clipboard.d.ts +1 -1
  173. package/dist/utils/clipboard.js +1 -2
  174. package/dist/utils/dom.d.ts +1 -0
  175. package/dist/utils/dom.js +4 -0
  176. package/dist/utils/index.d.ts +8 -0
  177. package/dist/utils/index.js +8 -1
  178. package/dist/utils/props.d.ts +1 -1
  179. package/dist/utils/types.d.ts +1 -1
  180. package/dist/utils/types.json +24 -1
  181. package/package.json +23 -24
  182. package/dist/composables/use-index.d.ts +0 -2
  183. package/dist/composables/use-index.js +0 -17
  184. package/dist/css/mixins/field.scss +0 -432
  185. package/dist/helpers/activationHandler.d.ts +0 -9
  186. package/dist/helpers/activationHandler.js +0 -23
  187. package/dist/utils/fields.d.ts +0 -1
  188. package/dist/utils/fields.js +0 -14
@@ -3,7 +3,7 @@ export interface NativeProps {
3
3
  userStyles?: string | null;
4
4
  }
5
5
  export declare const NativePropsDefaults: NativeProps;
6
- export type QuaffSizes = "xs" | "sm" | "md" | "lg" | "xl";
6
+ export type QuaffSizes = "none" | "xs" | "sm" | "md" | "lg" | "xl";
7
7
  export type CssUnit = "px" | "%" | "em" | "ex" | "ch" | "rem" | "vw" | "vh" | "vmin" | "vmax";
8
8
  export type CssValue = `${number}${CssUnit}`;
9
9
  export interface QComponentDocs {
@@ -1 +1,24 @@
1
- {"QAvatarShapeOptions":"type QAvatarShapeOptions =\n | \"circle\"\n | \"rounded\"\n | \"top-round\"\n | \"left-round\"\n | \"right-round\"\n | \"bottom-round\"\n | \"top-left-round\"\n | \"top-right-round\"\n | \"bottom-left-round\"\n | \"bottom-right-round\"","QAvatarSizeOptions":"type QAvatarSizeOptions = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | string","QBreadcrumbsGutterOptions":"type QBreadcrumbsGutterOptions = \"none\" | \"sm\" | \"md\" | \"lg\"","QLayoutEvents":"type QLayoutEvents = \"resize\" | \"scroll\" | \"scrollHeight\"","QSelectOption":"type QSelectOption = string | { label: string, value: string }","QItemSectionTypes":"type QItemSectionTypes =\n | \"thumbnail\"\n | \"video\"\n | \"avatar\"\n | \"toggle\"\n | \"icon\"\n | \"trailingIcon\"\n | \"trailingText\"\n | \"content\"","QBtnSizeOptions":"type QBtnSizeOptions = \"sm\" | \"md\" | \"lg\" | \"xl\"","QDialogPositionOptions":"type QDialogPositionOptions = \"default\" | \"top\" | \"right\" | \"bottom\" | \"left\"","QDrawerSideOptions":"type QDrawerSideOptions = \"left\" | \"right\"","QDrawerBehaviorOptions":"type QDrawerBehaviorOptions = \"default\" | \"desktop\" | \"mobile\"","QIconSizeOptions":"type QIconSizeOptions = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | string | number","QIconTypeOptions":"type QIconTypeOptions = \"outlined\" | \"sharp\" | \"rounded\"","QLayoutViewOptions":"type QLayoutViewOptions = `${\"l\"|\"h\"}${\"h\"|\"H\"}${\"r\"|\"h\"} ${\"l\"|\"L\"}${\"p\"}${\"r\"|\"R\"} ${\"l\"|\"f\"}${\"f\"|\"F\"}${\"r\"|\"f\"}`","QTableColumn":"type QTableColumn = {\n name: string\n required?: boolean;\n label: string;\n align?: \"left\" | \"center\" | \"right\";\n field: string | ((row: QTableRow) => string);\n format?: (val: string) => string;\n sortable?: boolean;\n sort?: (a: string, b: string) => number;\n};","QTableRow":"type QTableRow = {\n [key: string]: string | number\n};","QTableSort":"type QTableSort = {\n columnField: string | ((row: QTableRow) => string)\n type: \"asc\" | \"desc\";\n} | null;","QCardFillColors":"type QCardFillColors = \"primary\" | \"secondary\" | \"tertiary\"","QChipSizeOptions":"type QChipSizeOptions = \"sm\" | \"md\" | \"lg\"","QTabsVariants":"type QTabsVariants = \"primary\" | \"secondary\" | \"vertical\""}
1
+ {
2
+ "QAvatarShapeOptions": "type QAvatarShapeOptions =\n | \"circle\"\n | \"rounded\"\n | \"top-round\"\n | \"left-round\"\n | \"right-round\"\n | \"bottom-round\"\n | \"top-left-round\"\n | \"top-right-round\"\n | \"bottom-left-round\"\n | \"bottom-right-round\"",
3
+ "QAvatarSizeOptions": "type QAvatarSizeOptions = QuaffSizes | CssValue | number",
4
+ "QBreadcrumbsGutterOptions": "type QBreadcrumbsGutterOptions = \"none\" | \"sm\" | \"md\" | \"lg\"",
5
+ "QBtnSizeOptions": "type QBtnSizeOptions = Exclude<QuaffSizes, \"xs\">",
6
+ "QCardFillColors": "type QCardFillColors = \"primary\" | \"secondary\" | \"tertiary\"",
7
+ "QChipSizeOptions": "type QChipSizeOptions = Exclude<QuaffSizes, \"xs\" | \"xl\">",
8
+ "QDialogPositionOptions": "type QDialogPositionOptions = \"default\" | \"top\" | \"right\" | \"bottom\" | \"left\"",
9
+ "QDrawerBehaviorOptions": "type QDrawerBehaviorOptions = \"default\" | \"desktop\" | \"mobile\"",
10
+ "QDrawerSideOptions": "type QDrawerSideOptions = \"left\" | \"right\"",
11
+ "QIconSizeOptions": "type QIconSizeOptions = QuaffSizes | CssValue | number",
12
+ "QIconTypeOptions": "type QIconTypeOptions = \"outlined\" | \"sharp\" | \"rounded\"",
13
+ "QItemSectionTypes": "type QItemSectionTypes =\n | \"thumbnail\"\n | \"video\"\n | \"avatar\"\n | \"toggle\"\n | \"icon\"\n | \"trailingIcon\"\n | \"trailingText\"\n | \"content\"",
14
+ "QLayoutEvents": "type QLayoutEvents = \"resize\" | \"scroll\" | \"scrollHeight\"",
15
+ "QLayoutViewOptions": "type QLayoutViewOptions = `${\"l\"|\"h\"}${\"h\"|\"H\"}${\"r\"|\"h\"} ${\"l\"|\"L\"}${\"p\"}${\"r\"|\"R\"} ${\"l\"|\"f\"}${\"f\"|\"F\"}${\"r\"|\"f\"}`",
16
+ "QSelectMultipleValue": "type QSelectMultipleValue = QSelectSingleValue[]",
17
+ "QSelectOption": "type QSelectOption = string | { label: string, value: string }",
18
+ "QSelectSingleValue": "type QSelectSingleValue = string | number",
19
+ "QSelectValue": "type QSelectValue = QSelectSingleValue | QSelectMultipleValue",
20
+ "QTableColumn": "type QTableColumn = {\n name: string\n required?: boolean;\n label: string;\n align?: \"left\" | \"center\" | \"right\";\n field: string | ((row: QTableRow) => string);\n format?: (val: string) => string;\n sortable?: boolean;\n sort?: (a: string, b: string) => number;\n};",
21
+ "QTableRow": "type QTableRow = {\n [key: string]: string | number\n};",
22
+ "QTableSort": "type QTableSort = {\n columnField: string | ((row: QTableRow) => string)\n type: \"asc\" | \"desc\";\n} | null;",
23
+ "QTabsVariants": "type QTabsVariants = \"primary\" | \"secondary\" | \"vertical\""
24
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quaffui/quaff",
3
- "version": "0.1.0-prealpha12",
3
+ "version": "0.1.0-prealpha15",
4
4
  "scripts": {
5
5
  "dev": "vite dev",
6
6
  "open": "vite dev --open",
@@ -14,7 +14,7 @@
14
14
  "test:unit": "vitest",
15
15
  "lint": "prettier --plugin-search-dir . --check . && eslint .",
16
16
  "format": "prettier --plugin-search-dir . --write .",
17
- "docgen": "ts-node-esm docgen/props/run.ts",
17
+ "docgen": "NODE_OPTIONS='--loader ts-node/esm/transpile-only --no-warnings' node docgen/props/run.ts",
18
18
  "snippet": "ts-node-esm docgen/snippets/parseSnippets.ts"
19
19
  },
20
20
  "exports": {
@@ -33,38 +33,37 @@
33
33
  "svelte": "^4.0.0"
34
34
  },
35
35
  "devDependencies": {
36
- "@fontsource/material-symbols-outlined": "^5.0.6",
37
- "@fontsource/material-symbols-rounded": "^5.0.6",
38
- "@fontsource/material-symbols-sharp": "^5.0.6",
39
- "@fontsource/roboto": "^5.0.7",
36
+ "@fontsource/material-symbols-outlined": "^5.0.7",
37
+ "@fontsource/material-symbols-rounded": "^5.0.7",
38
+ "@fontsource/material-symbols-sharp": "^5.0.7",
39
+ "@fontsource/roboto": "^5.0.8",
40
40
  "@sveltejs/adapter-auto": "^2.1.0",
41
- "@sveltejs/kit": "^1.22.4",
42
- "@sveltejs/package": "^2.2.0",
43
- "@types/node": "^20.4.6",
41
+ "@sveltejs/kit": "^1.24.1",
42
+ "@sveltejs/package": "^2.2.2",
43
+ "@types/node": "^20.6.0",
44
44
  "@types/prettier": "^2.7.3",
45
45
  "@types/prismjs": "^1.26.0",
46
- "@typescript-eslint/eslint-plugin": "^6.2.1",
47
- "@typescript-eslint/parser": "^6.2.1",
48
- "eslint": "^8.46.0",
49
- "eslint-config-prettier": "^8.9.0",
50
- "eslint-plugin-svelte": "^2.32.4",
51
- "prettier": "^3.0.0",
46
+ "@typescript-eslint/eslint-plugin": "^6.6.0",
47
+ "@typescript-eslint/parser": "^6.6.0",
48
+ "eslint": "^8.49.0",
49
+ "eslint-config-prettier": "^9.0.0",
50
+ "eslint-plugin-svelte": "^2.33.1",
51
+ "prettier": "^3.0.3",
52
52
  "prettier-plugin-svelte": "^3.0.3",
53
- "publint": "^0.2.0",
54
- "sass": "^1.64.2",
55
- "svelte": "^4.1.2",
56
- "svelte-check": "^3.4.6",
53
+ "publint": "^0.2.2",
54
+ "sass": "^1.66.1",
55
+ "svelte": "^4.2.0",
56
+ "svelte-check": "^3.5.1",
57
57
  "ts-node": "^10.9.1",
58
- "tslib": "^2.6.1",
59
- "typescript": "^5.1.6",
60
- "vite": "^4.4.8",
61
- "vitest": "^0.34.1"
58
+ "tslib": "^2.6.2",
59
+ "typescript": "^5.2.2",
60
+ "vite": "^4.4.9",
61
+ "vitest": "^0.34.4"
62
62
  },
63
63
  "svelte": "./dist/index.js",
64
64
  "types": "./dist/index.d.ts",
65
65
  "type": "module",
66
66
  "dependencies": {
67
- "beercss": "^3.2.13",
68
67
  "highlight.js": "^11.8.0",
69
68
  "material-dynamic-colors": "^1.0.1",
70
69
  "svelte-highlight": "^7.3.0"
@@ -1,2 +0,0 @@
1
- export declare function setIndex(index: number): number;
2
- export declare function getIndex(): number | undefined;
@@ -1,17 +0,0 @@
1
- import { getContext, hasContext, setContext } from "svelte";
2
- export function setIndex(index) {
3
- setContext("index", {
4
- index: () => {
5
- index++;
6
- return index;
7
- },
8
- });
9
- return index;
10
- }
11
- export function getIndex() {
12
- if (!hasContext("index")) {
13
- return undefined;
14
- }
15
- const { index } = getContext("index");
16
- return index();
17
- }
@@ -1,432 +0,0 @@
1
- @mixin field {
2
- $root: &;
3
- $label: #{$root}__label;
4
- $labelActive: #{$root}__label--active;
5
-
6
- height: 3rem;
7
- margin-bottom: 2rem;
8
- border-radius: 0.25rem;
9
-
10
- &--sm,
11
- &--dense {
12
- height: 2.5rem;
13
- }
14
-
15
- &--lg {
16
- height: 3.5rem;
17
- }
18
-
19
- &--xl {
20
- height: 4rem;
21
- }
22
-
23
- &:not(&--has-border) {
24
- border-radius: 0.25rem 0.25rem 0 0;
25
- }
26
-
27
- &--rounded#{$root}--sm,
28
- &--rounded#{$root}--dense {
29
- border-radius: 1.25rem;
30
- }
31
-
32
- &--rounded {
33
- border-radius: 1.5rem;
34
- }
35
-
36
- &--rounded#{$root}--lg {
37
- border-radius: 1.75rem;
38
- }
39
-
40
- &--rounded#{$root}--xl {
41
- border-radius: 2rem;
42
- }
43
-
44
- &::before {
45
- content: "";
46
- position: absolute;
47
- top: 0;
48
- left: 0;
49
- right: 0;
50
- bottom: 0;
51
- border-radius: inherit;
52
- background-color: inherit;
53
- }
54
-
55
- &--filled::before {
56
- background-color: var(--surface-variant);
57
- color: var(--on-surface-variant);
58
- }
59
-
60
- & > :is(i, img, svg, .loader) {
61
- position: absolute;
62
- top: 50%;
63
- left: auto;
64
- right: 1rem;
65
- transform: translateY(-50%);
66
- cursor: pointer;
67
- z-index: 0;
68
- }
69
-
70
- &--bordered,
71
- &--filled,
72
- &--rounded {
73
- > :is(i, img, svg, .loader) {
74
- left: auto;
75
- right: 1rem;
76
- }
77
- }
78
-
79
- > :is(i, img, svg, .loader):first-child {
80
- left: 1rem;
81
- right: auto;
82
- }
83
-
84
- &--bordered,
85
- &--rounded,
86
- &--outlined,
87
- &--filled {
88
- > :is(i, img, svg, .loader):first-child {
89
- left: 1rem;
90
- right: auto;
91
- }
92
- }
93
-
94
- &--error > i {
95
- color: var(--error);
96
- }
97
-
98
- > .loader {
99
- border-width: 0.1875rem;
100
- width: 1.5rem;
101
- height: 1.5rem;
102
- }
103
-
104
- /* input, textarea and select */
105
- > select,
106
- input[type^="date"],
107
- input[type^="time"],
108
- input[type="search"] {
109
- appearance: none;
110
- cursor: pointer;
111
- }
112
-
113
- input[type^="date"]::-webkit-inner-spin-button,
114
- input[type^="date"]::-webkit-calendar-picker-indicator,
115
- input[type^="time"]::-webkit-inner-spin-button,
116
- input[type^="time"]::-webkit-calendar-picker-indicator {
117
- opacity: 0;
118
- position: absolute;
119
- top: 0;
120
- bottom: 0;
121
- left: 0;
122
- right: 0;
123
- width: 100%;
124
- height: 100%;
125
- z-index: -1;
126
- cursor: pointer;
127
- }
128
-
129
- input::-webkit-outer-spin-button,
130
- input::-webkit-inner-spin-button,
131
- input[type="number"] {
132
- appearance: none;
133
- -moz-appearance: textfield;
134
- }
135
-
136
- input[type="file"] {
137
- position: absolute;
138
- top: 0;
139
- left: 0;
140
- width: 100%;
141
- height: 100%;
142
- z-index: 2;
143
- opacity: 0;
144
- cursor: pointer;
145
- }
146
-
147
- input[type="search"]::-webkit-search-decoration,
148
- input[type="search"]::-webkit-search-cancel-button,
149
- input[type="search"]::-webkit-search-results-button,
150
- input[type="search"]::-webkit-search-results-decoration {
151
- display: none;
152
- }
153
-
154
- > :is(input, textarea, select) {
155
- border: 0.0625rem solid transparent;
156
- padding: 0 0.9375rem;
157
- font-family: inherit;
158
- font-size: 1rem;
159
- width: 100%;
160
- height: 100%;
161
- outline: none;
162
- z-index: 1;
163
- background: none;
164
- resize: none;
165
- }
166
-
167
- > :is(input, textarea, select):focus {
168
- border: 0.125rem solid transparent;
169
- padding: 0 0.875rem;
170
- }
171
-
172
- &--has-border {
173
- > :is(input, textarea, select) {
174
- border-color: var(--outline);
175
- }
176
-
177
- > :is(input, textarea, select):focus {
178
- border-color: var(--primary);
179
- }
180
- }
181
-
182
- &--rounded {
183
- > :is(input, textarea, select) {
184
- padding-left: 1.4376rem;
185
- padding-right: 1.4376rem;
186
- }
187
-
188
- > :is(input, textarea, select):focus {
189
- padding-left: 1.375rem;
190
- padding-right: 1.375rem;
191
- }
192
- }
193
-
194
- &--prepend {
195
- > :is(input, textarea, select) {
196
- padding-left: 2.9375rem;
197
- }
198
- > .slider {
199
- margin-left: 3.5rem;
200
- }
201
- > :is(input, textarea, select):focus {
202
- padding-left: 2.875rem;
203
- }
204
- }
205
-
206
- &--append {
207
- > :is(input, textarea, select) {
208
- padding-right: 2.9375rem;
209
- }
210
- > .slider {
211
- margin-right: 3.5rem;
212
- }
213
-
214
- > :is(input, textarea, select):focus {
215
- padding-right: 2.875rem;
216
- }
217
- }
218
-
219
- &:not(&--has-border, &--rounded) > :is(input, textarea, select) {
220
- border-bottom-color: var(--outline);
221
-
222
- &:focus {
223
- border-bottom-color: var(--primary);
224
- }
225
- }
226
-
227
- &--rounded {
228
- &:not(#{$root}--has-border, #{$root}--fill) > :is(input, textarea, select),
229
- &:not(#{$root}--has-border) > :is(input, textarea, select):focus {
230
- box-shadow: var(--elevate1);
231
- }
232
-
233
- &:not(#{$root}--has-border, #{$root}--fill) > :is(input, textarea, select):focus {
234
- box-shadow: var(--elevate2);
235
- }
236
- }
237
-
238
- &-error:not(&--has-border, &--rounded) > :is(input, textarea, select),
239
- &-error:not(&--has-border, &--rounded) > :is(input, textarea, select):focus {
240
- border-bottom-color: var(--error);
241
- }
242
-
243
- &-error#{$root}--has-border > :is(input, textarea, select),
244
- &-error#{$root}--has-border > :is(input, textarea, select):focus {
245
- border-color: var(--error);
246
- }
247
-
248
- & > :disabled {
249
- opacity: 0.5;
250
- cursor: not-allowed;
251
- }
252
-
253
- &--sm.textarea,
254
- &--dense.textarea {
255
- height: 4.5rem;
256
- }
257
-
258
- &.textarea {
259
- height: 5.5rem;
260
- }
261
-
262
- &--lg.textarea {
263
- height: 6.5rem;
264
- }
265
-
266
- &--xl.textarea {
267
- height: 7.5rem;
268
- }
269
-
270
- & > select > option {
271
- background-color: var(--surface);
272
- color: var(--on-surface);
273
- }
274
-
275
- &--label {
276
- & > input,
277
- & > select {
278
- &,
279
- &:focus {
280
- padding-top: 1rem;
281
- }
282
- }
283
-
284
- > textarea {
285
- padding-top: 1.375rem;
286
- }
287
-
288
- > #{$label} {
289
- position: absolute;
290
- top: 50%;
291
- left: 1rem;
292
- font-size: 1rem;
293
- transform: translateY(-50%);
294
- transition:
295
- var(--speed2) all,
296
- 0s background-color;
297
- z-index: 0;
298
- }
299
- }
300
-
301
- &--label#{$root}--sm > textarea {
302
- padding-top: 1.125rem;
303
- }
304
-
305
- &--label#{$root}--lg > textarea {
306
- padding-top: 1.625rem;
307
- }
308
-
309
- &--label#{$root}--xl > textarea {
310
- padding-top: 1.875rem;
311
- }
312
-
313
- &--label#{$root}--has-border:not(&--filled) > :is(input, select) {
314
- padding-top: 0;
315
- }
316
-
317
- &--sm:not(&--label) > textarea,
318
- &--sm#{$root}--has-border:not(&--filled) > textarea {
319
- padding-top: 0.625rem;
320
- }
321
-
322
- &:not(&--label) > textarea,
323
- &--has-border:not(&--filled) > textarea {
324
- padding-top: 0.875rem;
325
- }
326
-
327
- &--lg:not(&--label) > textarea,
328
- &--lg#{$root}--has-border:not(&--filled) > textarea {
329
- padding-top: 1.125rem;
330
- }
331
-
332
- &--xl:not(&--label) > textarea,
333
- &--xl#{$root}--has-border:not(&--filled) > textarea {
334
- padding-top: 1.375rem;
335
- }
336
-
337
- &--label#{$root}--sm.textarea > #{$label} {
338
- top: 1.25rem;
339
- }
340
-
341
- &--label.textarea > #{$label} {
342
- top: 1.5rem;
343
- }
344
-
345
- &--label#{$root}--lg.textarea > #{$label} {
346
- top: 1.75rem;
347
- }
348
-
349
- &--label#{$root}--xl.textarea > #{$label} {
350
- top: 2rem;
351
- }
352
-
353
- &--label#{$root}--rounded > #{$label} {
354
- left: 1.5rem;
355
- }
356
-
357
- &--label#{$root}--prepend > #{$label} {
358
- left: 3rem;
359
- }
360
-
361
- &--label > #{$label}#{$labelActive},
362
- &--label > [placeholder]:focus ~ #{$label},
363
- &--label > [placeholder]:not(:placeholder-shown) ~ #{$label} {
364
- font-size: 0.75rem;
365
- transform: translateY(-120%);
366
- z-index: 1;
367
- }
368
-
369
- &--label#{$root}--has-border:not(&--filled) > #{$label}#{$labelActive},
370
- &--label#{$root}--has-border:not(&--filled) > [placeholder]:focus ~ #{$label},
371
- &--label#{$root}--has-border:not(&--filled) > [placeholder]:not(:placeholder-shown) ~ #{$label} {
372
- font-size: 0.75rem;
373
- top: 0%;
374
- left: 1rem;
375
- transform: translateY(-50%);
376
- z-index: 1;
377
- }
378
-
379
- &--label#{$root}--has-border#{$root}--rounded:not(&--filled) > #{$label}#{$labelActive},
380
- &--label#{$root}--has-border#{$root}--rounded:not(&--filled) > [placeholder]:focus ~ #{$label},
381
- &--label#{$root}--has-border#{$root}--rounded:not(&--filled)
382
- > [placeholder]:not(:placeholder-shown)
383
- ~ #{$label} {
384
- left: 1.5rem;
385
- z-index: 1;
386
- }
387
-
388
- &--label > :focus ~ #{$label} {
389
- color: var(--primary);
390
- }
391
-
392
- &--error > #{$label} {
393
- color: var(--error) !important;
394
- }
395
-
396
- & > #{$label}.required::after,
397
- &.required > #{$label}::after {
398
- content: " * ";
399
- }
400
-
401
- &__helper,
402
- &__error {
403
- position: absolute;
404
- left: 1rem;
405
- bottom: 0;
406
- transform: translateY(100%);
407
- font-size: 0.75rem;
408
- background: none !important;
409
- padding-top: 0.125rem;
410
- }
411
-
412
- &__helper {
413
- &a {
414
- color: var(--primary);
415
- }
416
- }
417
-
418
- &__error {
419
- color: var(--error) !important;
420
- }
421
-
422
- &--rounded {
423
- #{$root}__helper,
424
- #{$root}__error {
425
- left: 1.5rem;
426
- }
427
- }
428
-
429
- &--error > &__helper {
430
- display: none;
431
- }
432
- }
@@ -1,9 +0,0 @@
1
- type Event = MouseEvent | KeyboardEvent;
2
- interface Options {
3
- disable: boolean | undefined;
4
- callback: (e: Event) => void;
5
- }
6
- export declare function activationHandler(node: HTMLElement, { disable, callback }: Options): {
7
- destroy(): void;
8
- };
9
- export {};
@@ -1,23 +0,0 @@
1
- export function activationHandler(node, { disable, callback }) {
2
- function handleEvent(event) {
3
- if (disable) {
4
- event.preventDefault();
5
- event.stopPropagation();
6
- return;
7
- }
8
- if (event instanceof KeyboardEvent) {
9
- if (!["Enter", "Space"].includes(event.code))
10
- return;
11
- }
12
- event.preventDefault();
13
- callback(event);
14
- }
15
- node.addEventListener("click", handleEvent);
16
- node.addEventListener("keydown", handleEvent);
17
- return {
18
- destroy() {
19
- node.removeEventListener("click", handleEvent);
20
- node.removeEventListener("keydown", handleEvent);
21
- },
22
- };
23
- }
@@ -1 +0,0 @@
1
- export declare function textWidth(element: HTMLElement, font: string): number;
@@ -1,14 +0,0 @@
1
- export function textWidth(element, font) {
2
- if (element.offsetWidth > 0)
3
- return element.offsetWidth;
4
- let _canvas = document.querySelector("canvas[data-quaff]")?.getContext("2d");
5
- if (!_canvas) {
6
- const canvasElement = document.createElement("canvas");
7
- canvasElement.style.display = "none";
8
- canvasElement.setAttribute("data-quaff", "");
9
- document.body.append(canvasElement);
10
- _canvas = canvasElement.getContext("2d");
11
- }
12
- _canvas.font = font;
13
- return _canvas.measureText(element.textContent).width;
14
- }