qc-trousse-sdg 1.4.0-develop.0 → 1.4.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 (292) hide show
  1. package/README.md +22 -5
  2. package/dist/css/qc-sdg-design-tokens.min.css +1 -1
  3. package/dist/css/qc-sdg-no-grid.min.css +1 -1
  4. package/dist/css/qc-sdg.min.css +1 -1
  5. package/dist/fonts/open-sans-v43-latin-500.woff2 +0 -0
  6. package/dist/fonts/open-sans-v43-latin-500italic.woff2 +0 -0
  7. package/dist/fonts/open-sans-v43-latin-600.woff2 +0 -0
  8. package/dist/fonts/open-sans-v43-latin-600italic.woff2 +0 -0
  9. package/dist/fonts/open-sans-v43-latin-700.woff2 +0 -0
  10. package/dist/fonts/open-sans-v43-latin-700italic.woff2 +0 -0
  11. package/dist/fonts/open-sans-v43-latin-italic.woff2 +0 -0
  12. package/dist/fonts/open-sans-v43-latin-regular.woff2 +0 -0
  13. package/dist/fonts/roboto-mono-v30-latin-500.woff2 +0 -0
  14. package/dist/fonts/roboto-mono-v30-latin-500italic.woff2 +0 -0
  15. package/dist/fonts/roboto-mono-v30-latin-600.woff2 +0 -0
  16. package/dist/fonts/roboto-mono-v30-latin-600italic.woff2 +0 -0
  17. package/dist/fonts/roboto-mono-v30-latin-700.woff2 +0 -0
  18. package/dist/fonts/roboto-mono-v30-latin-700italic.woff2 +0 -0
  19. package/dist/fonts/roboto-mono-v30-latin-italic.woff2 +0 -0
  20. package/dist/fonts/roboto-mono-v30-latin-regular.woff2 +0 -0
  21. package/dist/fonts/roboto-v48-latin-500.woff2 +0 -0
  22. package/dist/fonts/roboto-v48-latin-500italic.woff2 +0 -0
  23. package/dist/fonts/roboto-v48-latin-600.woff2 +0 -0
  24. package/dist/fonts/roboto-v48-latin-600italic.woff2 +0 -0
  25. package/dist/fonts/roboto-v48-latin-700.woff2 +0 -0
  26. package/dist/fonts/roboto-v48-latin-700italic.woff2 +0 -0
  27. package/dist/fonts/roboto-v48-latin-italic.woff2 +0 -0
  28. package/dist/fonts/roboto-v48-latin-regular.woff2 +0 -0
  29. package/dist/img/icon/adresse.svg +4 -0
  30. package/dist/img/icon/arrow-up.svg +3 -0
  31. package/dist/img/icon/calendar.svg +1 -0
  32. package/dist/img/icon/checkmark.svg +3 -0
  33. package/dist/img/icon/chevron-up-thin.svg +5 -0
  34. package/dist/img/{chevron-white.svg → icon/chevron-up.svg} +1 -1
  35. package/{public/img → dist/img/icon}/clipboard.svg +3 -3
  36. package/dist/img/icon/clock.svg +1 -0
  37. package/dist/img/icon/email.svg +1 -0
  38. package/dist/img/icon/error.svg +1 -0
  39. package/{public/img/exclamation-white.svg → dist/img/icon/exclamation.svg} +2 -2
  40. package/{public/img → dist/img/icon}/external-link.svg +2 -2
  41. package/dist/img/icon/information.svg +1 -0
  42. package/dist/img/icon/ligth-bulb.svg +1 -0
  43. package/{public/img → dist/img/icon}/minus.svg +1 -1
  44. package/dist/img/icon/note.svg +1 -0
  45. package/dist/img/icon/phone.svg +1 -0
  46. package/dist/img/{plus.svg → icon/plus.svg} +1 -1
  47. package/{public/img → dist/img/icon}/question-mark.svg +2 -2
  48. package/dist/img/icon/search-thin.svg +10 -0
  49. package/dist/img/icon/search.svg +1 -0
  50. package/dist/img/icon/success.svg +1 -0
  51. package/dist/img/icon/user.svg +6 -0
  52. package/dist/img/icon/warning.svg +1 -0
  53. package/dist/img/icon/website.svg +1 -0
  54. package/dist/img/icon/xclose.svg +1 -0
  55. package/dist/js/qc-sdg.min.js +1 -1
  56. package/package.json +11 -3
  57. package/playwright.config.ts +79 -0
  58. package/plugins/buildDevDoc.js +36 -0
  59. package/plugins/buildHtmlDoc.js +43 -0
  60. package/plugins/buildTestFixtures.js +37 -0
  61. package/public/css/qc-doc-sdg.css +4 -67
  62. package/public/css/qc-sdg-design-tokens.css +17 -0
  63. package/public/css/qc-sdg-no-grid.css +2001 -1108
  64. package/public/css/qc-sdg.css +1999 -1106
  65. package/public/img/checkmark.svg +3 -0
  66. package/public/img/question.svg +10 -0
  67. package/public/index.html +3104 -1387
  68. package/public/js/qc-doc-sdg.js +5705 -285
  69. package/public/js/qc-sdg.js +5660 -1415
  70. package/rollup.config.js +67 -41
  71. package/scripts/buildImagesMap.js +85 -0
  72. package/scripts/check-release-note.sh +11 -0
  73. package/scripts/compile-doc.sh +4 -0
  74. package/src/doc/_index.html +100 -0
  75. package/src/doc/_nav.html +53 -0
  76. package/src/doc/_test.html +32 -0
  77. package/src/doc/components/Code.svelte +6 -2
  78. package/src/doc/components/TopNav.svelte +8 -9
  79. package/src/doc/components/color-doc.svelte +1 -1
  80. package/src/doc/ejs/layout/index.ejs +129 -0
  81. package/src/doc/qc-doc-sdg.js +1 -2
  82. package/src/doc/scss/components/_code.scss +1 -1
  83. package/src/doc/scss/jQueryUI/_jquery-ui.autocomplete.scss +1 -0
  84. package/src/doc/scss/qc-doc-sdg.scss +1 -1
  85. package/src/doc/scss/settings/_base.scss +4 -0
  86. package/src/sdg/_components.js +9 -2
  87. package/src/sdg/{components → bases}/Icon/Icon.svelte +13 -6
  88. package/src/sdg/bases/Icon/IconDoc.ejs +129 -0
  89. package/src/sdg/{components → bases}/Icon/IconWC.svelte +3 -1
  90. package/src/sdg/bases/Icon/Test/IconEmbeddedTest.html +1 -0
  91. package/src/sdg/bases/Icon/Test/IconEmbeddedTest.svelte +168 -0
  92. package/src/sdg/bases/Icon/Test/iconTest.html +156 -0
  93. package/src/sdg/bases/Icon/_icon.html +254 -0
  94. package/src/sdg/bases/Icon/_icons.scss +47 -0
  95. package/src/sdg/{scss/base → bases/accessibility}/_accessibility.scss +1 -1
  96. package/src/sdg/bases/colors/_colors.html +112 -0
  97. package/src/sdg/bases/figures/_figure.html +16 -0
  98. package/src/sdg/{scss/base → bases/form}/_form.scss +10 -3
  99. package/src/sdg/bases/grid/_grid.html +118 -0
  100. package/src/sdg/bases/headings/_headings.html +18 -0
  101. package/src/sdg/bases/headings/_headings.scss +25 -0
  102. package/src/sdg/{scss/base → bases/layout}/_layout.scss +1 -4
  103. package/src/sdg/bases/links/_links.html +104 -0
  104. package/src/sdg/bases/links/_links.scss +51 -0
  105. package/src/sdg/bases/lists/_lists.html +27 -0
  106. package/src/sdg/bases/separator/_separator.html +7 -0
  107. package/src/sdg/bases/separator/_separator.scss +5 -0
  108. package/src/sdg/bases/shadings/_shadings.html +14 -0
  109. package/src/sdg/{scss/base → bases/shadings}/_shadings.scss +1 -1
  110. package/src/sdg/bases/typography/_font.html +45 -0
  111. package/src/sdg/bases/typography/_fonts.scss +162 -0
  112. package/src/sdg/bases/typography/_paragraph.html +17 -0
  113. package/src/sdg/bases/typography/_paragraph.scss +33 -0
  114. package/src/sdg/components/Alert/Alert.svelte +2 -5
  115. package/src/sdg/components/Alert/AlertWC.svelte +3 -2
  116. package/src/sdg/components/Alert/_alert.html +110 -0
  117. package/src/sdg/{scss/components → components/Alert}/_alert.scss +1 -1
  118. package/src/sdg/components/Button/Button.svelte +50 -0
  119. package/src/sdg/components/Button/ButtonWC.svelte +36 -0
  120. package/src/sdg/components/Button/Test/buttonTest.html +349 -0
  121. package/src/sdg/components/Button/_button.html +186 -0
  122. package/src/sdg/components/Button/_button.scss +202 -0
  123. package/src/sdg/components/CharCount/_charCount.html +7 -0
  124. package/src/sdg/components/Checkbox/Checkbox.svelte +77 -0
  125. package/src/sdg/components/Checkbox/CheckboxWC.svelte +49 -0
  126. package/src/sdg/components/Checkbox/_checkbox.html +86 -0
  127. package/src/sdg/components/Checkbox/_checkbox.scss +70 -0
  128. package/src/sdg/components/Checkbox/updateInput.svelte.js +23 -0
  129. package/src/sdg/components/ChoiceGroup/ChoiceGroup.svelte +56 -0
  130. package/src/sdg/components/ChoiceGroup/ChoiceGroupWC.svelte +47 -0
  131. package/src/sdg/components/ChoiceGroup/Test/ChoiceGroupeEmbededTest.svelte +261 -0
  132. package/src/sdg/components/ChoiceGroup/Test/checkboxEmbeddedTest.html +1 -0
  133. package/src/sdg/components/ChoiceGroup/Test/checkboxTest.html +253 -0
  134. package/src/sdg/components/ChoiceGroup/Test/radiosEmbeddedTest.html +1 -0
  135. package/src/sdg/components/ChoiceGroup/Test/radiosTest.html +185 -0
  136. package/src/sdg/components/ChoiceGroup/ToggleSwitchGroupWC.svelte +56 -0
  137. package/src/sdg/components/ChoiceGroup/_choiceGroup.html +285 -0
  138. package/src/sdg/components/ChoiceGroup/_choiceGroup.scss +32 -0
  139. package/src/sdg/components/ChoiceGroup/_selectionButton.scss +53 -0
  140. package/src/sdg/components/ChoiceGroup/_selectionButtons.html +130 -0
  141. package/src/sdg/components/DropdownList/DropdownList.svelte +394 -0
  142. package/src/sdg/components/DropdownList/DropdownListButton/DropdownListButton.svelte +43 -0
  143. package/src/sdg/components/DropdownList/DropdownListButton/_dropdownListButton.scss +65 -0
  144. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItems.svelte +110 -0
  145. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItemsMultiple/DropdownListItemsMultiple.svelte +185 -0
  146. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItemsMultiple/_dropdownListItemsMultiple.scss +19 -0
  147. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItemsSingle/DropdownListItemsSingle.svelte +136 -0
  148. package/src/sdg/components/DropdownList/DropdownListItems/DropdownListItemsSingle/_dropdownListItemsSingle.scss +11 -0
  149. package/src/sdg/components/DropdownList/DropdownListItems/_dropdownListItems.scss +67 -0
  150. package/src/sdg/components/DropdownList/SelectWC.svelte +158 -0
  151. package/src/sdg/components/DropdownList/Test/DropdownListEmbeddedTest.svelte +89 -0
  152. package/src/sdg/components/DropdownList/Test/dropdownListEmbeddedTest.html +1 -0
  153. package/src/sdg/components/DropdownList/Test/dropdownListTest.html +194 -0
  154. package/src/sdg/components/DropdownList/Test/dropdownListTestUtils.js +113 -0
  155. package/src/sdg/components/DropdownList/_dropdownList.scss +73 -0
  156. package/src/sdg/components/DropdownList/_select.html +212 -0
  157. package/src/sdg/components/ExternalLink/ExternalLink.svelte +1 -1
  158. package/src/sdg/components/Fieldset/Fieldset.svelte +73 -0
  159. package/src/sdg/components/Fieldset/_fieldset.scss +95 -0
  160. package/src/sdg/components/FormError/FormError.svelte +51 -0
  161. package/src/sdg/components/FormError/_formError.scss +21 -0
  162. package/src/sdg/components/FormfieldRow/_formfieldRow.html +108 -0
  163. package/src/sdg/components/IconButton/IconButton.svelte +1 -1
  164. package/src/sdg/components/IconButton/_iconButton.scss +14 -0
  165. package/src/sdg/components/Label/Label.svelte +28 -0
  166. package/src/sdg/components/Label/LabelText.svelte +4 -0
  167. package/src/sdg/components/Label/_label.scss +19 -0
  168. package/src/sdg/components/Notice/Notice.svelte +1 -2
  169. package/src/sdg/components/Notice/NoticeWC.svelte +3 -0
  170. package/src/sdg/components/Notice/_notice.html +141 -0
  171. package/src/sdg/{scss/components → components/Notice}/_notice.scss +1 -1
  172. package/src/sdg/components/PivFooter/PivFooter.svelte +8 -9
  173. package/src/sdg/components/PivFooter/PivFooterWC.svelte +6 -14
  174. package/src/sdg/components/PivFooter/_pivFooter.html +153 -0
  175. package/src/sdg/{scss/components → components/PivFooter}/_pivFooter.scss +1 -1
  176. package/src/sdg/components/PivHeader/PivHeader.svelte +47 -53
  177. package/src/sdg/components/PivHeader/PivHeaderWC.svelte +9 -20
  178. package/src/sdg/components/PivHeader/Test/pivHeaderEmbeddedTest.html +1 -0
  179. package/src/sdg/components/PivHeader/Test/pivHeaderEmbeddedTest.svelte +28 -0
  180. package/src/sdg/components/PivHeader/Test/pivHeaderTest.html +43 -0
  181. package/src/sdg/components/PivHeader/_pivHeader.html +221 -0
  182. package/src/sdg/{scss/components → components/PivHeader}/_pivHeader.scss +55 -77
  183. package/src/sdg/components/RadioButton/_radioButton.html +24 -0
  184. package/src/sdg/components/RadioButton/_radioButton.scss +29 -0
  185. package/src/sdg/components/SearchBar/SearchBar.svelte +12 -32
  186. package/src/sdg/components/SearchBar/_searchBar.html +125 -0
  187. package/src/sdg/{scss/components → components/SearchBar}/_searchBar.scss +3 -3
  188. package/src/sdg/components/SearchInput/SearchInput.svelte +26 -4
  189. package/src/sdg/components/SearchInput/SearchInputWC.svelte +3 -1
  190. package/src/sdg/components/SearchInput/_searchInput.html +85 -0
  191. package/src/sdg/{scss/components → components/SearchInput}/_searchInput.scss +27 -2
  192. package/src/sdg/components/TextField/Doc/TextFieldDemo.svelte +143 -0
  193. package/src/sdg/components/TextField/Test/TextFieldEmbededTest.svelte +129 -0
  194. package/src/sdg/components/TextField/Test/textFieldEmbeddedTest.html +1 -0
  195. package/src/sdg/components/TextField/Test/textFieldTest.html +121 -0
  196. package/src/sdg/components/TextField/TextField.svelte +171 -0
  197. package/src/sdg/components/TextField/TextFieldWC.svelte +90 -0
  198. package/src/sdg/components/TextField/_textField.html +218 -0
  199. package/src/sdg/components/TextField/_textField.scss +110 -0
  200. package/src/sdg/components/TextField/textFieldUtils.js +19 -0
  201. package/src/sdg/components/ToTop/ToTop.svelte +2 -4
  202. package/src/sdg/components/ToTop/_toTop.html +45 -0
  203. package/src/sdg/{scss/components → components/ToTop}/_toTop.scss +2 -2
  204. package/src/sdg/components/ToggleSwitch/Test/ToggleSwitchEmbeddedTest.svelte +46 -0
  205. package/src/sdg/components/ToggleSwitch/Test/toggleSwitchEmbeddedTest.html +1 -0
  206. package/src/sdg/components/ToggleSwitch/Test/toggleSwitchTest.html +34 -0
  207. package/src/sdg/components/ToggleSwitch/ToggleSwitch.svelte +34 -0
  208. package/src/sdg/components/ToggleSwitch/ToggleSwitchWC.svelte +66 -0
  209. package/src/sdg/components/ToggleSwitch/_toggleSwitch.html +160 -0
  210. package/src/sdg/components/ToggleSwitch/_toggleSwitch.scss +97 -0
  211. package/src/sdg/components/utils.js +81 -1
  212. package/src/sdg/qc-sdg-test.js +6 -0
  213. package/src/sdg/scss/lib/_functions.scss +10 -2
  214. package/src/sdg/scss/lib/_mixins.scss +63 -26
  215. package/src/sdg/scss/qc-sdg.scss +1 -1
  216. package/src/sdg/scss/qc-sgd-no-grid.scss +30 -18
  217. package/src/sdg/scss/settings/_base.scss +5 -33
  218. package/src/sdg/scss/settings/_images.scss +30 -0
  219. package/src/sdg/scss/settings/_tokens.scss +23 -0
  220. package/src/sdg/scss/utilities/_display.scss +1 -1
  221. package/src/sdg/scss/utilities/_states.scss +13 -0
  222. package/tests/button.spec.ts +11 -0
  223. package/tests/choice-group.spec.ts +36 -0
  224. package/tests/dropdown-list.spec.ts +529 -0
  225. package/tests/icon.spec.ts +19 -0
  226. package/tests/pivHeader.spec.ts +22 -0
  227. package/tests/textfield.spec.ts +21 -0
  228. package/tests/toggle-switch.spec.ts +20 -0
  229. package/dist/img/arrow-up-white.svg +0 -3
  230. package/dist/img/chevron-blue.svg +0 -3
  231. package/dist/img/clipboard.svg +0 -8
  232. package/dist/img/error-white.svg +0 -1
  233. package/dist/img/error.svg +0 -1
  234. package/dist/img/exclamation-white.svg +0 -37
  235. package/dist/img/external-link-white.svg +0 -18
  236. package/dist/img/external-link.svg +0 -10
  237. package/dist/img/facebook.svg +0 -6
  238. package/dist/img/information-white.svg +0 -1
  239. package/dist/img/information.svg +0 -1
  240. package/dist/img/linkedin.svg +0 -5
  241. package/dist/img/loupe-piv-fonce.svg +0 -1
  242. package/dist/img/minus.svg +0 -6
  243. package/dist/img/qc-sprite.svg +0 -1
  244. package/dist/img/question-mark.svg +0 -47
  245. package/dist/img/success-white.svg +0 -1
  246. package/dist/img/success.svg +0 -1
  247. package/dist/img/twitter.svg +0 -8
  248. package/dist/img/warning.svg +0 -1
  249. package/dist/img/xclose-blue.svg +0 -6
  250. package/dist/img/xclose-white.svg +0 -1
  251. package/dist/img/youtube.svg +0 -3
  252. package/public/img/ampoule.svg +0 -1
  253. package/public/img/arrow-up-white.svg +0 -3
  254. package/public/img/chevron-blue.svg +0 -3
  255. package/public/img/chevron-white.svg +0 -3
  256. package/public/img/error-white.svg +0 -1
  257. package/public/img/error.svg +0 -1
  258. package/public/img/external-link-white.svg +0 -18
  259. package/public/img/facebook.svg +0 -6
  260. package/public/img/information-white.svg +0 -1
  261. package/public/img/information.svg +0 -1
  262. package/public/img/linkedin.svg +0 -5
  263. package/public/img/logo-piv-footer-mess.png +0 -0
  264. package/public/img/loupe-piv-droite.svg +0 -1
  265. package/public/img/loupe-piv-fonce.svg +0 -1
  266. package/public/img/note.svg +0 -1
  267. package/public/img/piv-bas-MCE-theme-clair.png +0 -0
  268. package/public/img/piv-bas-MCE-theme-sombre.png +0 -0
  269. package/public/img/piv-logo-pied-de-page.svg +0 -37
  270. package/public/img/plus.svg +0 -6
  271. package/public/img/qc-sprite.svg +0 -1
  272. package/public/img/quebec-logo.svg +0 -13
  273. package/public/img/success-white.svg +0 -1
  274. package/public/img/success.svg +0 -1
  275. package/public/img/twitter.svg +0 -8
  276. package/public/img/warning.svg +0 -1
  277. package/public/img/xclose-blue.svg +0 -6
  278. package/public/img/xclose-white.svg +0 -1
  279. package/public/img/youtube.svg +0 -3
  280. package/src/doc/scss/components/_button.scss +0 -61
  281. package/src/sdg/components/PivFooter/_defaultCopyright.svelte +0 -11
  282. package/src/sdg/components/PivHeader/_defaultLinks.svelte +0 -24
  283. package/src/sdg/scss/base/_fonts.scss +0 -29
  284. package/src/sdg/scss/base/_typography.scss +0 -94
  285. package/src/sdg/scss/components/_icons.scss +0 -169
  286. package/src/sdg/scss/components/_separator.scss +0 -5
  287. /package/dist/img/{loupe-piv-droite.svg → piv-search.svg} +0 -0
  288. /package/src/sdg/{scss/base → bases/colors}/_colors.scss +0 -0
  289. /package/src/sdg/{scss/base → bases/figures}/_figure.scss +0 -0
  290. /package/src/sdg/{scss → bases}/grid/_grid-lib.scss +0 -0
  291. /package/src/sdg/{scss → bases}/grid/_grid.scss +0 -0
  292. /package/src/sdg/{scss/base → bases/lists}/_lists.scss +0 -0
@@ -1,6 +1,6 @@
1
1
  <script>
2
2
  import {Utils} from "../utils";
3
- import Icon from "../Icon/Icon.svelte";
3
+ import Icon from "../../bases/Icon/Icon.svelte";
4
4
  import IconButton from "../IconButton/IconButton.svelte";
5
5
 
6
6
  let {
@@ -55,7 +55,7 @@
55
55
  <IconButton aria-label={closeLabel}
56
56
  onclick={hideAlert}
57
57
  size="nm"
58
- icon="clear-input"
58
+ icon="xclose"
59
59
  iconSize="sm"
60
60
  iconColor="text-primary"
61
61
  />
@@ -64,6 +64,3 @@
64
64
  </div>
65
65
  </div>
66
66
  {/if}
67
-
68
- <link rel='stylesheet'
69
- href='{Utils.cssPath}'>
@@ -11,8 +11,8 @@
11
11
  }}"/>
12
12
 
13
13
  <script>
14
-
15
14
  import Alert from "./Alert.svelte";
15
+ import {Utils} from "../utils";
16
16
 
17
17
  const props = $props();
18
18
 
@@ -21,4 +21,5 @@
21
21
  <Alert
22
22
  {...props}
23
23
  slotContent = {`<slot />`}
24
- />
24
+ />
25
+ <link rel='stylesheet' href='{Utils.cssPath}'>
@@ -0,0 +1,110 @@
1
+ <h2 id="alert">Alerte générale (qc-alert)</h2>
2
+ <h3>Exemples</h3>
3
+ <h4>Alerte jaune</h4>
4
+ <p>
5
+ <a href="javascript:;"
6
+ id="show-qc-alert"
7
+ hidden
8
+ >
9
+ Réafficher l’alerte
10
+ </a>
11
+ </p>
12
+
13
+ <qc-doc-exemple id="alert-warning"
14
+ caption="Exemple d’alerte jaune">
15
+ <qc-alert id="alerte-masquable"
16
+ type="warning"
17
+ maskable="true"
18
+ content="Alerte jaune d’importance élevée"
19
+ >
20
+ </qc-alert>
21
+ </qc-doc-exemple>
22
+ <!-- <qc-code target-id="alert-warning"></qc-code>-->
23
+
24
+ <h4>Alerte bleue</h4>
25
+ <qc-doc-exemple id="alert-general"
26
+ caption="Exemple d’alerte générale">
27
+ <qc-alert type="general"
28
+ maskable="false">
29
+ <p>Alerte bleue d’importance modérée <a href="javascript:;">avec un lien textuel</a></p>
30
+ </qc-alert>
31
+ </qc-doc-exemple>
32
+
33
+ <!-- <qc-code target-id="alert-general"></qc-code>-->
34
+
35
+ <h3>Documentation technique</h3>
36
+
37
+ <h4>Attributs</h4>
38
+ <div class="table-overflow">
39
+ <table class="qc-table qc-striped component-attributes-description">
40
+ <thead>
41
+ <tr>
42
+ <th>Nom</th>
43
+ <th>Valeur attendue</th>
44
+ <th>Valeur par défaut</th>
45
+ <th>Description</th>
46
+ </tr>
47
+ </thead>
48
+ <tr>
49
+ <td>type</td>
50
+ <td>"general" ou "warning"</td>
51
+ <td>"general"</td>
52
+ <td>Type de l’alerte : s'il s'agit d’une alerte bleue ou jaune</td>
53
+ </tr>
54
+ <tr>
55
+ <td>maskable</td>
56
+ <td>"true" ou "false"</td>
57
+ <td>"true"</td>
58
+ <td>Afficher le bouton de fermeture de l’alerte</td>
59
+ </tr>
60
+ <tr>
61
+ <td>content</td>
62
+ <td>Texte</td>
63
+ <td>Chaine vide</td>
64
+ <td>Afficher le contenu de l’alerte</td>
65
+ </tr>
66
+ <tr>
67
+ <td>hide</td>
68
+ <td>"true" ou "false"</td>
69
+ <td>"false"</td>
70
+ <td>Masque ou affiche l’alerte</td>
71
+ </tr>
72
+ <tr>
73
+ <td>full-width</td>
74
+ <td>"true" ou "false"</td>
75
+ <td>"false"</td>
76
+ <td>Affiche le contenu de l’alerte dans un conteneur pleine-largeur (classe css
77
+ qc-container-fluid)
78
+ </td>
79
+ </tr>
80
+ </table>
81
+ </div>
82
+
83
+ <h4>Événement JS</h4>
84
+
85
+ <p>Un événement JS <code class="qc-bg-color-grey-pale">qc.alert.hide</code> est émis à la fermeture de
86
+ l’alerte</p>
87
+ <script id="qc-alert-event-exemple">
88
+ /* Fermer l’alerte jaune pour voir un message dans la console de votre navigateur */
89
+ document.addEventListener(
90
+ 'qc.alert.hide',
91
+ (e) => {
92
+ console.log('Fermeture de l\'alerte id=\'' + e.target.id + '\'');
93
+ }
94
+ )
95
+ </script>
96
+ <qc-code target-id="qc-alert-event-exemple"
97
+ language="javascript"></qc-code>
98
+
99
+ <h4>Zone d’ajout de contenu HTML</h4>
100
+
101
+ <p>Ci-dessous, la zone d’ajout de contenu HTML (balise &lt;slot&gt;) délimitée en pointillé.</p>
102
+ <qc-doc-exemple caption="Présentation des zone d’ajout de contenu"
103
+ hide-code
104
+ >
105
+ <qc-alert id="qc-alert-slots">
106
+ <div style="border:2px dashed; padding: var(--qc-spacer-xs);">
107
+ Contenu par défaut
108
+ </div>
109
+ </qc-alert>
110
+ </qc-doc-exemple>
@@ -1,4 +1,4 @@
1
- @use "qc-sdg-lib" as *;
1
+ @use "../../scss/qc-sdg-lib" as *;
2
2
 
3
3
  .qc-general-alert {
4
4
  padding: token-value(spacer, md) 0;
@@ -0,0 +1,50 @@
1
+ <script>
2
+ import Icon from "../../bases/Icon/Icon.svelte";
3
+
4
+ let {
5
+ variant = "primary",
6
+ disabled = false,
7
+ compact = false,
8
+ rounded = false,
9
+ label = "",
10
+ icon = "",
11
+ iconPosition = "left",
12
+ iconSrc = "",
13
+ ...rest
14
+ } = $props();
15
+
16
+ let className = $state();
17
+
18
+ $effect(() => {
19
+ className = [
20
+ "qc-button",
21
+ `qc-${variant}`,
22
+ compact && "qc-compact",
23
+ rounded && "qc-button-rounded"
24
+ ].filter(Boolean).join(" ");
25
+ });
26
+ </script>
27
+
28
+ <button
29
+ class={className}
30
+ disabled={disabled}
31
+ {...rest}
32
+ >
33
+ {#if iconPosition === "left"}
34
+ {#if iconSrc}
35
+ <Icon src={iconSrc} />
36
+ {:else if icon}
37
+ <Icon type={icon} />
38
+ {/if}
39
+ {/if}
40
+
41
+ {label}
42
+
43
+ {#if icon && iconPosition === "right"}
44
+ {#if iconSrc}
45
+ <Icon src={iconSrc} />
46
+ {:else if icon}
47
+ <Icon type={icon} />
48
+ {/if}
49
+ {/if}
50
+ </button>
@@ -0,0 +1,36 @@
1
+ <svelte:options customElement={{
2
+ tag: 'qc-button',
3
+ shadow: 'none',
4
+ props: {
5
+ variant: { attribute: 'variant', type: 'String' },
6
+ disabled: { attribute: 'disabled', type: 'Boolean' },
7
+ compact: { attribute: 'compact', type: 'Boolean' },
8
+ rounded: { attribute: 'rounded', type: 'Boolean' },
9
+ label: { attribute: 'label', type: 'String' },
10
+ icon: { attribute: 'icon', type: 'String' },
11
+ iconPosition: { attribute: 'icon-position', type: 'String' },
12
+ iconSrc: { attribute: 'icon-src', type: 'String' }
13
+ }
14
+ }} />
15
+
16
+ <script>
17
+ import Button from './Button.svelte';
18
+
19
+ let {
20
+ variant = "primary",
21
+ disabled = false,
22
+ compact = false,
23
+ rounded = false,
24
+ label = "",
25
+ ...rest
26
+ } = $props();
27
+ </script>
28
+
29
+ <Button
30
+ {variant}
31
+ {disabled}
32
+ {compact}
33
+ {rounded}
34
+ {label}
35
+ {...rest}
36
+ />
@@ -0,0 +1,349 @@
1
+ <div class="qc-row">
2
+ <div class="qc-col-sm-12 qc-col-lg-3">
3
+ <div>
4
+ <button class="qc-button qc-primary">Principal</button>
5
+ </div>
6
+ <div>
7
+ <button class="qc-button qc-primary qc-hover">Principal hover</button>
8
+ </div>
9
+ <div>
10
+ <button class="qc-button qc-primary qc-active">Principal active</button>
11
+ </div>
12
+ <div>
13
+ <button class="qc-button qc-primary qc-focus">Principal focus</button>
14
+ </div>
15
+ <div>
16
+ <button class="qc-button qc-primary qc-disabled">Principal désactivé</button>
17
+ </div>
18
+ </div>
19
+
20
+ <div class="qc-col-sm-12 qc-col-lg-3">
21
+ <div>
22
+ <button class="qc-button qc-secondary">Secondaire</button>
23
+ </div>
24
+ <div>
25
+ <button class="qc-button qc-secondary qc-hover">Secondaire</button>
26
+ </div>
27
+ <div>
28
+ <button class="qc-button qc-secondary qc-active">Secondaire</button>
29
+ </div>
30
+ <div>
31
+ <button class="qc-button qc-secondary qc-focus">Secondaire</button>
32
+ </div>
33
+ <div>
34
+ <button class="qc-button qc-secondary qc-disabled">Secondaire</button>
35
+ </div>
36
+ </div>
37
+
38
+ <div class="qc-col-sm-12 qc-col-lg-3">
39
+ <div>
40
+ <button class="qc-button qc-tertiary">Tertiaire</button>
41
+ </div>
42
+ <div>
43
+ <button class="qc-button qc-tertiary qc-hover">Tertiaire</button>
44
+ </div>
45
+ <div>
46
+ <button class="qc-button qc-tertiary qc-active">Tertiaire</button>
47
+ </div>
48
+ <div>
49
+ <button class="qc-button qc-tertiary qc-focus">Tertiaire</button>
50
+ </div>
51
+ <div>
52
+ <button class="qc-button qc-tertiary qc-disabled">Tertiaire</button>
53
+ </div>
54
+ </div>
55
+
56
+ <div class="qc-col-sm-12 qc-col-lg-3">
57
+ <div>
58
+ <button class="qc-button qc-danger">Avertissement</button>
59
+ </div>
60
+ <div>
61
+ <button class="qc-button qc-danger qc-hover">Avertissement</button>
62
+ </div>
63
+ <div>
64
+ <button class="qc-button qc-danger qc-active">Avertissement</button>
65
+ </div>
66
+ <div>
67
+ <button class="qc-button qc-danger qc-focus">Avertissement</button>
68
+ </div>
69
+ <div>
70
+ <button class="qc-button qc-danger qc-disabled">Avertissement</button>
71
+ </div>
72
+ </div>
73
+ </div>
74
+
75
+ <br>
76
+ <br>
77
+
78
+ <div class="qc-row">
79
+ <div class="qc-col-sm-12 qc-col-lg-3">
80
+ <div>
81
+ <button class="qc-button qc-primary qc-button-rounded">Principal</button>
82
+ </div>
83
+ <div>
84
+ <button class="qc-button qc-primary qc-hover qc-button-rounded">Principal hover</button>
85
+ </div>
86
+ <div>
87
+ <button class="qc-button qc-primary qc-active qc-button-rounded">Principal active</button>
88
+ </div>
89
+ <div>
90
+ <button class="qc-button qc-primary qc-focus qc-button-rounded">Principal focus</button>
91
+ </div>
92
+ <div>
93
+ <button class="qc-button qc-primary qc-disabled qc-button-rounded">Principal désactivé</button>
94
+ </div>
95
+ </div>
96
+
97
+ <div class="qc-col-sm-12 qc-col-lg-3">
98
+ <div>
99
+ <button class="qc-button qc-secondary qc-button-rounded">Secondaire</button>
100
+ </div>
101
+ <div>
102
+ <button class="qc-button qc-secondary qc-hover qc-button-rounded">Secondaire</button>
103
+ </div>
104
+ <div>
105
+ <button class="qc-button qc-secondary qc-active qc-button-rounded">Secondaire</button>
106
+ </div>
107
+ <div>
108
+ <button class="qc-button qc-secondary qc-focus qc-button-rounded">Secondaire</button>
109
+ </div>
110
+ <div>
111
+ <button class="qc-button qc-secondary qc-disabled qc-button-rounded">Secondaire</button>
112
+ </div>
113
+ </div>
114
+
115
+ <div class="qc-col-sm-12 qc-col-lg-3">
116
+ <div>
117
+ <button class="qc-button qc-tertiary qc-button-rounded">Tertiaire</button>
118
+ </div>
119
+ <div>
120
+ <button class="qc-button qc-tertiary qc-hover qc-button-rounded">Tertiaire</button>
121
+ </div>
122
+ <div>
123
+ <button class="qc-button qc-tertiary qc-active qc-button-rounded">Tertiaire</button>
124
+ </div>
125
+ <div>
126
+ <button class="qc-button qc-tertiary qc-focus qc-button-rounded">Tertiaire</button>
127
+ </div>
128
+ <div>
129
+ <button class="qc-button qc-tertiary qc-disabled qc-button-rounded">Tertiaire</button>
130
+ </div>
131
+ </div>
132
+
133
+ <div class="qc-col-sm-12 qc-col-lg-3">
134
+ <div>
135
+ <button class="qc-button qc-danger qc-button-rounded">Avertissement</button>
136
+ </div>
137
+ <div>
138
+ <button class="qc-button qc-danger qc-hover qc-button-rounded">Avertissement</button>
139
+ </div>
140
+ <div>
141
+ <button class="qc-button qc-danger qc-active qc-button-rounded">Avertissement</button>
142
+ </div>
143
+ <div>
144
+ <button class="qc-button qc-danger qc-focus qc-button-rounded">Avertissement</button>
145
+ </div>
146
+ <div>
147
+ <button class="qc-button qc-danger qc-disabled qc-button-rounded">Avertissement</button>
148
+ </div>
149
+ </div>
150
+ </div>
151
+
152
+ <br>
153
+ <br>
154
+
155
+ <div class="qc-row">
156
+ <div class="qc-col-sm-12 qc-col-lg-3">
157
+ <div>
158
+ <button class="qc-button qc-primary qc-compact">Principal</button>
159
+ </div>
160
+ <div>
161
+ <button class="qc-button qc-primary qc-hover qc-compact">Principal hover</button>
162
+ </div>
163
+ <div>
164
+ <button class="qc-button qc-primary qc-active qc-compact">Principal active</button>
165
+ </div>
166
+ <div>
167
+ <button class="qc-button qc-primary qc-focus qc-compact">Principal focus</button>
168
+ </div>
169
+ <div>
170
+ <button class="qc-button qc-primary qc-disabled qc-compact">Principal désactivé</button>
171
+ </div>
172
+ </div>
173
+
174
+ <div class="qc-col-sm-12 qc-col-lg-3">
175
+ <div>
176
+ <button class="qc-button qc-secondary qc-compact">Secondaire</button>
177
+ </div>
178
+ <div>
179
+ <button class="qc-button qc-secondary qc-hover qc-compact">Secondaire</button>
180
+ </div>
181
+ <div>
182
+ <button class="qc-button qc-secondary qc-active qc-compact">Secondaire</button>
183
+ </div>
184
+ <div>
185
+ <button class="qc-button qc-secondary qc-focus qc-compact">Secondaire</button>
186
+ </div>
187
+ <div>
188
+ <button class="qc-button qc-secondary qc-disabled qc-compact">Secondaire</button>
189
+ </div>
190
+ </div>
191
+
192
+ <div class="qc-col-sm-12 qc-col-lg-3">
193
+ <div>
194
+ <button class="qc-button qc-tertiary qc-compact">Tertiaire</button>
195
+ </div>
196
+ <div>
197
+ <button class="qc-button qc-tertiary qc-hover qc-compact">Tertiaire</button>
198
+ </div>
199
+ <div>
200
+ <button class="qc-button qc-tertiary qc-active qc-compact">Tertiaire</button>
201
+ </div>
202
+ <div>
203
+ <button class="qc-button qc-tertiary qc-focus qc-compact">Tertiaire</button>
204
+ </div>
205
+ <div>
206
+ <button class="qc-button qc-tertiary qc-disabled qc-compact">Tertiaire</button>
207
+ </div>
208
+ </div>
209
+
210
+ <div class="qc-col-sm-12 qc-col-lg-3">
211
+ <div>
212
+ <button class="qc-button qc-danger qc-compact">Avertissement</button>
213
+ </div>
214
+ <div>
215
+ <button class="qc-button qc-danger qc-hover qc-compact">Avertissement</button>
216
+ </div>
217
+ <div>
218
+ <button class="qc-button qc-danger qc-active qc-compact">Avertissement</button>
219
+ </div>
220
+ <div>
221
+ <button class="qc-button qc-danger qc-focus qc-compact">Avertissement</button>
222
+ </div>
223
+ <div>
224
+ <button class="qc-button qc-danger qc-disabled qc-compact">Avertissement</button>
225
+ </div>
226
+ </div>
227
+ </div>
228
+
229
+ <br>
230
+ <br>
231
+
232
+ <div class="qc-row">
233
+ <div class="qc-col-sm-12 qc-col-lg-3">
234
+ <div>
235
+ <button class="qc-button qc-primary qc-button-rounded qc-compact">Principal</button>
236
+ </div>
237
+ <div>
238
+ <button class="qc-button qc-primary qc-hover qc-button-rounded qc-compact">Principal hover</button>
239
+ </div>
240
+ <div>
241
+ <button class="qc-button qc-primary qc-active qc-button-rounded qc-compact">Principal active</button>
242
+ </div>
243
+ <div>
244
+ <button class="qc-button qc-primary qc-focus qc-button-rounded qc-compact">Principal focus</button>
245
+ </div>
246
+ <div>
247
+ <button class="qc-button qc-primary qc-disabled qc-button-rounded qc-compact">Principal désactivé</button>
248
+ </div>
249
+ </div>
250
+
251
+ <div class="qc-col-sm-12 qc-col-lg-3">
252
+ <div>
253
+ <button class="qc-button qc-secondary qc-button-rounded qc-compact">Secondaire</button>
254
+ </div>
255
+ <div>
256
+ <button class="qc-button qc-secondary qc-hover qc-button-rounded qc-compact">Secondaire</button>
257
+ </div>
258
+ <div>
259
+ <button class="qc-button qc-secondary qc-active qc-button-rounded qc-compact">Secondaire</button>
260
+ </div>
261
+ <div>
262
+ <button class="qc-button qc-secondary qc-focus qc-button-rounded qc-compact">Secondaire</button>
263
+ </div>
264
+ <div>
265
+ <button class="qc-button qc-secondary qc-disabled qc-button-rounded qc-compact">Secondaire</button>
266
+ </div>
267
+ </div>
268
+
269
+ <div class="qc-col-sm-12 qc-col-lg-3">
270
+ <div>
271
+ <button class="qc-button qc-tertiary qc-button-rounded qc-compact">Tertiaire</button>
272
+ </div>
273
+ <div>
274
+ <button class="qc-button qc-tertiary qc-hover qc-button-rounded qc-compact">Tertiaire</button>
275
+ </div>
276
+ <div>
277
+ <button class="qc-button qc-tertiary qc-active qc-button-rounded qc-compact">Tertiaire</button>
278
+ </div>
279
+ <div>
280
+ <button class="qc-button qc-tertiary qc-focus qc-button-rounded qc-compact">Tertiaire</button>
281
+ </div>
282
+ <div>
283
+ <button class="qc-button qc-tertiary qc-disabled qc-button-rounded qc-compact">Tertiaire</button>
284
+ </div>
285
+ </div>
286
+
287
+ <div class="qc-col-sm-12 qc-col-lg-3">
288
+ <div>
289
+ <button class="qc-button qc-danger qc-button-rounded qc-compact">Avertissement</button>
290
+ </div>
291
+ <div>
292
+ <button class="qc-button qc-danger qc-hover qc-button-rounded qc-compact">Avertissement</button>
293
+ </div>
294
+ <div>
295
+ <button class="qc-button qc-danger qc-active qc-button-rounded qc-compact">Avertissement</button>
296
+ </div>
297
+ <div>
298
+ <button class="qc-button qc-danger qc-focus qc-button-rounded qc-compact">Avertissement</button>
299
+ </div>
300
+ <div>
301
+ <button class="qc-button qc-danger qc-disabled qc-button-rounded qc-compact">Avertissement</button>
302
+ </div>
303
+ </div>
304
+ </div>
305
+
306
+ <br>
307
+ <br>
308
+
309
+ <div>
310
+ <button class="qc-button qc-primary">
311
+ <qc-icon type="plus"></qc-icon>
312
+ Ajouter
313
+ </button>
314
+
315
+ <button class="qc-button qc-primary">
316
+ Information
317
+ <qc-icon type="information"></qc-icon>
318
+ </button>
319
+ </div>
320
+
321
+ <button class="qc-button qc-primary">
322
+ <qc-icon src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB3aWR0aD0iOTczLjFweCIgaGVpZ2h0PSI5NzMuMXB4IiB2aWV3Qm94PSIwIDAgOTczLjEgOTczLjEiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDk3My4xIDk3My4xOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIKCT4KPGc+Cgk8cGF0aCBkPSJNNTAyLjI5LDc4OC4xOTloLTQ3Yy0zMy4xLDAtNjAsMjYuOS02MCw2MHY2NC45YzAsMzMuMSwyNi45LDYwLDYwLDYwaDQ3YzMzLjEwMSwwLDYwLTI2LjksNjAtNjB2LTY0LjkKCQlDNTYyLjI5LDgxNSw1MzUuMzkxLDc4OC4xOTksNTAyLjI5LDc4OC4xOTl6IiBmaWxsPSIjZmZmIi8+Cgk8cGF0aCBkPSJNMTcwLjg5LDI4NS44bDg2LjcsMTAuOGMyNy41LDMuNCw1My42LTEyLjQsNjMuNS0zOC4zYzEyLjUtMzIuNywyOS45LTU4LjUsNTIuMi03Ny4zYzMxLjYwMS0yNi42LDcwLjktNDAsMTE3LjktNDAKCQljNDguNywwLDg3LjUsMTIuOCwxMTYuMywzOC4zYzI4LjgsMjUuNiw0My4xLDU2LjIsNDMuMSw5Mi4xYzAsMjUuOC04LjEsNDkuNC0yNC4zLDcwLjhjLTEwLjUsMTMuNi00Mi44LDQyLjItOTYuNyw4NS45CgkJYy01NCw0My43LTg5Ljg5OSw4My4wOTktMTA3Ljg5OSwxMTguMDk5Yy0xOC40LDM1LjgwMS0yNC44LDc1LjUtMjYuNCwxMTUuMzAxYy0xLjM5OSwzNC4xLDI1LjgsNjIuNSw2MCw2Mi41aDQ5CgkJYzMxLjIsMCw1Ny0yMy45LDU5LjgtNTQuOWMyLTIyLjI5OSw1LjctMzkuMTk5LDExLjMwMS01MC42OTljOS4zOTktMTkuNzAxLDMzLjY5OS00NS43MDEsNzIuNjk5LTc4LjEKCQlDNzIzLjU5LDQ3Ny44LDc3Mi43OSw0MjguNCw3OTUuODkxLDM5MmMyMy0zNi4zLDM0LjYtNzQuOCwzNC42LTExNS41YzAtNzMuNS0zMS4zLTEzOC05NC0xOTMuNGMtNjIuNi01NS40LTE0Ny04My4xLTI1My04My4xCgkJYy0xMDAuOCwwLTE4Mi4xLDI3LjMtMjQ0LjEsODJjLTUyLjgsNDYuNi04NC45LDEwMS44LTk2LjIsMTY1LjVDMTM5LjY5LDI2Ni4xLDE1Mi4zOSwyODMuNSwxNzAuODksMjg1Ljh6IiBmaWxsPSIjZmZmIi8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg=="
323
+ ></qc-icon>
324
+ Questions
325
+ </button>
326
+
327
+ <div>
328
+ <button class="qc-button qc-simple">
329
+ <qc-icon type="information"></qc-icon>
330
+ Action
331
+ </button>
332
+
333
+ <button class="qc-button qc-simple" disabled>
334
+ <qc-icon type="plus"></qc-icon>
335
+ Action
336
+ </button>
337
+ </div>
338
+
339
+ <div>
340
+ <button class="qc-button qc-simple qc-compact">
341
+ <qc-icon type="information"></qc-icon>
342
+ Action
343
+ </button>
344
+
345
+ <button class="qc-button qc-simple qc-compact" disabled>
346
+ <qc-icon type="plus"></qc-icon>
347
+ Action
348
+ </button>
349
+ </div>