@supersoniks/concorde 3.1.86 → 3.1.88

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 (224) hide show
  1. package/build-infos.json +1 -1
  2. package/concorde-core.bundle.js +72 -63
  3. package/concorde-core.es.js +497 -471
  4. package/dist/concorde-core.bundle.js +72 -63
  5. package/dist/concorde-core.es.js +497 -471
  6. package/index.html +0 -0
  7. package/package.json +4 -4
  8. package/scripts/create-search.js +0 -0
  9. package/scripts/generate-routes.js +0 -0
  10. package/src/core/_types/types.ts +0 -0
  11. package/src/core/components/functional/date/date.ts +0 -0
  12. package/src/core/components/functional/functional.ts +0 -0
  13. package/src/core/components/functional/if/if.md +0 -0
  14. package/src/core/components/functional/if/if.test.ts +0 -0
  15. package/src/core/components/functional/list/list.spec.ts +0 -0
  16. package/src/core/components/functional/queue/queue.demo.ts +0 -0
  17. package/src/core/components/functional/router/router.demo.ts +0 -0
  18. package/src/core/components/functional/router/router.md +0 -0
  19. package/src/core/components/functional/router/router.spec.ts +0 -0
  20. package/src/core/components/functional/router/router.ts +0 -0
  21. package/src/core/components/functional/sonic-scope/sonic-scope.ts +0 -0
  22. package/src/core/components/functional/states/states.demo.ts +0 -0
  23. package/src/core/components/functional/states/states.md +0 -0
  24. package/src/core/components/functional/states/states.spec.ts +0 -0
  25. package/src/core/components/functional/states/states.ts +0 -0
  26. package/src/core/components/functional/submit/submit.ts +0 -0
  27. package/src/core/components/functional/translation/translation.ts +0 -0
  28. package/src/core/components/ui/_css/scroll.ts +0 -0
  29. package/src/core/components/ui/_css/shadow.ts +0 -0
  30. package/src/core/components/ui/_css/size.ts +0 -0
  31. package/src/core/components/ui/_css/type.ts +0 -0
  32. package/src/core/components/ui/alert/alert.md +0 -0
  33. package/src/core/components/ui/alert/alert.ts +0 -0
  34. package/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  35. package/src/core/components/ui/badge/badge.md +0 -0
  36. package/src/core/components/ui/badge/badge.ts +0 -0
  37. package/src/core/components/ui/button/button.md +0 -0
  38. package/src/core/components/ui/button/button.ts +5 -5
  39. package/src/core/components/ui/captcha/captcha.md +0 -0
  40. package/src/core/components/ui/captcha/captcha.ts +1 -1
  41. package/src/core/components/ui/card/card-footer.ts +0 -0
  42. package/src/core/components/ui/card/card-header-descripton.ts +0 -0
  43. package/src/core/components/ui/card/card-header.ts +0 -0
  44. package/src/core/components/ui/card/card-main.ts +0 -0
  45. package/src/core/components/ui/card/card.md +0 -0
  46. package/src/core/components/ui/card/card.ts +0 -0
  47. package/src/core/components/ui/divider/divider.ts +0 -0
  48. package/src/core/components/ui/form/checkbox/checkbox.md +0 -0
  49. package/src/core/components/ui/form/checkbox/checkbox.ts +1 -1
  50. package/src/core/components/ui/form/css/form-control.ts +0 -0
  51. package/src/core/components/ui/form/fieldset/fieldset.ts +0 -0
  52. package/src/core/components/ui/form/fieldset/legend-description.ts +0 -0
  53. package/src/core/components/ui/form/fieldset/legend.ts +0 -0
  54. package/src/core/components/ui/form/form-layout/form-layout.md +0 -0
  55. package/src/core/components/ui/form/input/input.md +0 -0
  56. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -0
  57. package/src/core/components/ui/form/radio/radio.md +0 -0
  58. package/src/core/components/ui/form/radio/radio.ts +0 -0
  59. package/src/core/components/ui/form/select/select.md +0 -0
  60. package/src/core/components/ui/form/switch/switch.md +0 -0
  61. package/src/core/components/ui/form/switch/switch.ts +0 -0
  62. package/src/core/components/ui/form/textarea/textarea.ts +0 -0
  63. package/src/core/components/ui/icon/icon.ts +10 -9
  64. package/src/core/components/ui/icon/icons.ts +0 -0
  65. package/src/core/components/ui/image/image.md +0 -0
  66. package/src/core/components/ui/image/image.ts +0 -0
  67. package/src/core/components/ui/loader/loader.md +0 -0
  68. package/src/core/components/ui/loader/loader.ts +0 -0
  69. package/src/core/components/ui/loader/styles/fixed.ts +0 -0
  70. package/src/core/components/ui/loader/styles/inline.ts +0 -0
  71. package/src/core/components/ui/menu/menu.ts +0 -0
  72. package/src/core/components/ui/modal/modal-actions.ts +0 -0
  73. package/src/core/components/ui/modal/modal-subtitle.ts +0 -0
  74. package/src/core/components/ui/modal/modal-title.ts +0 -0
  75. package/src/core/components/ui/modal/modal.md +0 -0
  76. package/src/core/components/ui/modal/modal.ts +23 -0
  77. package/src/core/components/ui/pop/pop.md +0 -0
  78. package/src/core/components/ui/pop/pop.ts +1 -1
  79. package/src/core/components/ui/progress/progress.ts +0 -0
  80. package/src/core/components/ui/table/table-tbody.ts +0 -0
  81. package/src/core/components/ui/table/table-th.ts +0 -0
  82. package/src/core/components/ui/table/table.ts +0 -0
  83. package/src/core/components/ui/theme/theme-collection/core-variables.ts +0 -0
  84. package/src/core/components/ui/theme/theme-collection/dark.ts +0 -0
  85. package/src/core/components/ui/theme/theme-collection/light.ts +0 -0
  86. package/src/core/components/ui/theme/theme.ts +0 -0
  87. package/src/core/components/ui/toast/toast-item.ts +0 -0
  88. package/src/core/components/ui/toast/toast.ts +0 -0
  89. package/src/core/components/ui/tooltip/tooltip.ts +22 -7
  90. package/src/core/components/ui/ui.ts +0 -0
  91. package/src/core/directives/DataProvider.ts +0 -0
  92. package/src/core/directives/Wording.ts +0 -0
  93. package/src/core/mixins/Fetcher.ts +0 -0
  94. package/src/core/mixins/FormCheckable.ts +0 -0
  95. package/src/core/mixins/FormElement.ts +5 -1
  96. package/src/core/mixins/TemplatesContainer.ts +0 -0
  97. package/src/core/utils/HTML.ts +0 -0
  98. package/src/core/utils/LocationHandler.ts +0 -0
  99. package/src/core/utils/Objects.ts +0 -0
  100. package/src/core/utils/PublisherProxy.ts +0 -0
  101. package/src/core/utils/Utils.ts +0 -0
  102. package/src/core/utils/aesCrypto.ts +0 -0
  103. package/src/core/utils/api.ts +0 -0
  104. package/src/core/utils/route.spec.ts +0 -0
  105. package/src/core/utils/route.ts +0 -0
  106. package/src/docs/code.ts +0 -0
  107. package/src/docs/docs.ts +0 -0
  108. package/src/docs/header/header.ts +0 -0
  109. package/src/docs/layout.ts +0 -0
  110. package/src/docs/navigation/navigation.ts +0 -0
  111. package/src/docs/search/docs-search.json +0 -0
  112. package/src/docs/search/markdown-renderer.ts +0 -0
  113. package/src/docs/search/page.ts +0 -0
  114. package/src/docs/search/search.ts +0 -0
  115. package/src/docs/tailwind/css/tailwind.css +0 -0
  116. package/src/docs/tailwind/css.d.ts +0 -0
  117. package/src/index.ts +0 -0
  118. package/src/test-utils/TestUtils.ts +0 -0
  119. package/src/tsconfig-model.json +0 -0
  120. package/src/tsconfig.json +6 -6
  121. package/src/tsconfig.tsbuildinfo +1 -1
  122. package/tailwind.config.js +0 -0
  123. package/templates-test.html +0 -0
  124. package/vite/config.js +0 -0
  125. package/docs/assets/index-C0K6xugr.css +0 -1
  126. package/docs/assets/index-Dgl1lJQo.js +0 -4861
  127. package/docs/css/docs.css +0 -0
  128. package/docs/fonts/ClashGrotesk-Bold.eot +0 -0
  129. package/docs/fonts/ClashGrotesk-Bold.ttf +0 -0
  130. package/docs/fonts/ClashGrotesk-Bold.woff +0 -0
  131. package/docs/fonts/ClashGrotesk-Bold.woff2 +0 -0
  132. package/docs/fonts/ClashGrotesk-Extralight.eot +0 -0
  133. package/docs/fonts/ClashGrotesk-Extralight.ttf +0 -0
  134. package/docs/fonts/ClashGrotesk-Extralight.woff +0 -0
  135. package/docs/fonts/ClashGrotesk-Extralight.woff2 +0 -0
  136. package/docs/fonts/ClashGrotesk-Light.eot +0 -0
  137. package/docs/fonts/ClashGrotesk-Light.ttf +0 -0
  138. package/docs/fonts/ClashGrotesk-Light.woff +0 -0
  139. package/docs/fonts/ClashGrotesk-Light.woff2 +0 -0
  140. package/docs/fonts/ClashGrotesk-Medium.eot +0 -0
  141. package/docs/fonts/ClashGrotesk-Medium.ttf +0 -0
  142. package/docs/fonts/ClashGrotesk-Medium.woff +0 -0
  143. package/docs/fonts/ClashGrotesk-Medium.woff2 +0 -0
  144. package/docs/fonts/ClashGrotesk-Regular.eot +0 -0
  145. package/docs/fonts/ClashGrotesk-Regular.ttf +0 -0
  146. package/docs/fonts/ClashGrotesk-Regular.woff +0 -0
  147. package/docs/fonts/ClashGrotesk-Regular.woff2 +0 -0
  148. package/docs/fonts/ClashGrotesk-Semibold.eot +0 -0
  149. package/docs/fonts/ClashGrotesk-Semibold.ttf +0 -0
  150. package/docs/fonts/ClashGrotesk-Semibold.woff +0 -0
  151. package/docs/fonts/ClashGrotesk-Semibold.woff2 +0 -0
  152. package/docs/fonts/ClashGrotesk-Variable.eot +0 -0
  153. package/docs/fonts/ClashGrotesk-Variable.ttf +0 -0
  154. package/docs/fonts/ClashGrotesk-Variable.woff +0 -0
  155. package/docs/fonts/ClashGrotesk-Variable.woff2 +0 -0
  156. package/docs/img/concorde-icon.svg +0 -5
  157. package/docs/img/concorde-logo.svg +0 -1
  158. package/docs/img/concorde.png +0 -0
  159. package/docs/img/concorde_def.png +0 -0
  160. package/docs/img/concorde_seuil.png.webp +0 -0
  161. package/docs/img/concorde_seuil_invert.png +0 -0
  162. package/docs/img/paul_metrand.jpg +0 -0
  163. package/docs/img/paul_metrand_xs.jpg +0 -0
  164. package/docs/index.html +0 -93
  165. package/docs/src/core/components/functional/date/date.md +0 -290
  166. package/docs/src/core/components/functional/fetch/fetch.md +0 -117
  167. package/docs/src/core/components/functional/if/if.md +0 -16
  168. package/docs/src/core/components/functional/list/list.md +0 -199
  169. package/docs/src/core/components/functional/mix/mix.md +0 -41
  170. package/docs/src/core/components/functional/queue/queue.md +0 -87
  171. package/docs/src/core/components/functional/router/router.md +0 -129
  172. package/docs/src/core/components/functional/sdui/default-library.json +0 -108
  173. package/docs/src/core/components/functional/sdui/example.json +0 -99
  174. package/docs/src/core/components/functional/sdui/sdui.md +0 -356
  175. package/docs/src/core/components/functional/states/states.md +0 -87
  176. package/docs/src/core/components/functional/submit/submit.md +0 -83
  177. package/docs/src/core/components/functional/subscriber/subscriber.md +0 -91
  178. package/docs/src/core/components/functional/value/value.md +0 -35
  179. package/docs/src/core/components/ui/alert/alert.md +0 -121
  180. package/docs/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  181. package/docs/src/core/components/ui/badge/badge.md +0 -127
  182. package/docs/src/core/components/ui/button/button.md +0 -182
  183. package/docs/src/core/components/ui/captcha/captcha.md +0 -24
  184. package/docs/src/core/components/ui/card/card.md +0 -97
  185. package/docs/src/core/components/ui/divider/divider.md +0 -35
  186. package/docs/src/core/components/ui/form/checkbox/checkbox.md +0 -104
  187. package/docs/src/core/components/ui/form/fieldset/fieldset.md +0 -129
  188. package/docs/src/core/components/ui/form/form-actions/form-actions.md +0 -77
  189. package/docs/src/core/components/ui/form/form-layout/form-layout.md +0 -44
  190. package/docs/src/core/components/ui/form/input/input.md +0 -167
  191. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -131
  192. package/docs/src/core/components/ui/form/radio/radio.md +0 -84
  193. package/docs/src/core/components/ui/form/select/select.md +0 -97
  194. package/docs/src/core/components/ui/form/switch/switch.md +0 -84
  195. package/docs/src/core/components/ui/form/textarea/textarea.md +0 -65
  196. package/docs/src/core/components/ui/group/group.md +0 -75
  197. package/docs/src/core/components/ui/icon/icon.md +0 -125
  198. package/docs/src/core/components/ui/icon/icons.json +0 -1
  199. package/docs/src/core/components/ui/image/image.md +0 -107
  200. package/docs/src/core/components/ui/link/link.md +0 -43
  201. package/docs/src/core/components/ui/loader/loader.md +0 -67
  202. package/docs/src/core/components/ui/menu/menu.md +0 -288
  203. package/docs/src/core/components/ui/modal/modal.md +0 -123
  204. package/docs/src/core/components/ui/pop/pop.md +0 -96
  205. package/docs/src/core/components/ui/progress/progress.md +0 -63
  206. package/docs/src/core/components/ui/table/table.md +0 -455
  207. package/docs/src/core/components/ui/tooltip/tooltip.md +0 -82
  208. package/docs/src/docs/_core-concept/overview.md +0 -57
  209. package/docs/src/docs/_core-concept/subscriber.md +0 -76
  210. package/docs/src/docs/_getting-started/concorde-outside.md +0 -143
  211. package/docs/src/docs/_getting-started/create-a-component.md +0 -137
  212. package/docs/src/docs/_getting-started/my-first-subscriber.md +0 -174
  213. package/docs/src/docs/_getting-started/pubsub.md +0 -150
  214. package/docs/src/docs/_getting-started/start.md +0 -39
  215. package/docs/src/docs/_getting-started/theming.md +0 -91
  216. package/docs/src/docs/search/docs-search.json +0 -3917
  217. package/docs/src/tag-list.json +0 -1
  218. package/docs/src/tsconfig-model.json +0 -23
  219. package/docs/src/tsconfig.json +0 -918
  220. package/docs/svg/regular/plane.svg +0 -1
  221. package/docs/svg/solid/plane.svg +0 -1
  222. package/php/get-challenge.php +0 -34
  223. package/php/some-service.php +0 -42
  224. /package/src/core/components/ui/captcha/{actchaStyles.ts → altchaStyles.ts} +0 -0
package/index.html CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supersoniks/concorde",
3
- "version": "3.1.86",
3
+ "version": "3.1.88",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "",
@@ -106,9 +106,9 @@
106
106
  "./ui/badge": "./src/core/components/ui/badge/badge.ts",
107
107
  "./button": "./src/core/components/ui/button/button.ts",
108
108
  "./ui/button": "./src/core/components/ui/button/button.ts",
109
- "./actchaStyles": "./src/core/components/ui/captcha/actchaStyles.ts",
110
- "./ui/actchaStyles": "./src/core/components/ui/captcha/actchaStyles.ts",
111
- "./ui/captcha/actchaStyles": "./src/core/components/ui/captcha/actchaStyles.ts",
109
+ "./altchaStyles": "./src/core/components/ui/captcha/altchaStyles.ts",
110
+ "./ui/altchaStyles": "./src/core/components/ui/captcha/altchaStyles.ts",
111
+ "./ui/captcha/altchaStyles": "./src/core/components/ui/captcha/altchaStyles.ts",
112
112
  "./captcha": "./src/core/components/ui/captcha/captcha.ts",
113
113
  "./ui/captcha": "./src/core/components/ui/captcha/captcha.ts",
114
114
  "./card-footer": "./src/core/components/ui/card/card-footer.ts",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -142,7 +142,7 @@ export class Button extends FormCheckable(FormElement(Subscriber(LitElement))) {
142
142
  gap: var(--sc-btn-gap);
143
143
  }
144
144
 
145
- :host button:focus,
145
+ :host button:focus-visible,
146
146
  :host button:hover {
147
147
  filter: var(--sc-btn-hover-filter);
148
148
  }
@@ -201,7 +201,7 @@ export class Button extends FormCheckable(FormElement(Subscriber(LitElement))) {
201
201
  }
202
202
 
203
203
  /*GESTION DU FOCUS*/
204
- :host(:not([disabled])) button:focus {
204
+ :host(:not([disabled])) button:focus-visible {
205
205
  box-shadow: 0 0 0 0.18rem var(--sc-base-300, rgba(0, 0, 0, 0.18));
206
206
  border-color: var(--sc-base-300, rgba(0, 0, 0, 0.18)) !important;
207
207
  outline: none;
@@ -218,7 +218,7 @@ export class Button extends FormCheckable(FormElement(Subscriber(LitElement))) {
218
218
  background: transparent;
219
219
  }
220
220
 
221
- /*:host([variant="ghost"]) button:focus,*/
221
+ /*:host([variant="ghost"]) button:focus-visible,*/
222
222
  :host([variant="ghost"]) button:hover {
223
223
  background: var(--sc-btn-ghost-bg-hover);
224
224
  filter: none;
@@ -246,7 +246,7 @@ export class Button extends FormCheckable(FormElement(Subscriber(LitElement))) {
246
246
  background: transparent;
247
247
  }
248
248
 
249
- /*:host([variant="outline"]) button:focus,*/
249
+ /*:host([variant="outline"]) button:focus-visible,*/
250
250
  :host([variant="outline"]) button:hover {
251
251
  background: var(--btn-outline-bg-hover);
252
252
  }
@@ -279,7 +279,7 @@ export class Button extends FormCheckable(FormElement(Subscriber(LitElement))) {
279
279
  color: inherit;
280
280
  }
281
281
 
282
- :host([variant="link"]) button:focus,
282
+ :host([variant="link"]) button:focus-visible,
283
283
  :host([variant="link"]) button:hover {
284
284
  text-decoration: none;
285
285
  }
File without changes
@@ -8,7 +8,7 @@ import {
8
8
  generateKey,
9
9
  encryptToBase64,
10
10
  } from "@supersoniks/concorde/core/utils/aesCrypto";
11
- import { altchaStyles } from "./actchaStyles";
11
+ import { altchaStyles } from "./altchaStyles";
12
12
 
13
13
  const PASS_PHRASE = "supersoniks_altcha";
14
14
  const IV = "Si2\\]X8M4!n9DCLd";
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -84,7 +84,7 @@ export class Checkbox extends FormCheckable(
84
84
  var(--sc-checkbox-border-color);
85
85
  }
86
86
 
87
- input:focus,
87
+ input:focus-visible,
88
88
  :host(:not([disabled])) input:active {
89
89
  box-shadow: 0 0 0 2px var(--sc-primary, var(--sc-base-content, #000));
90
90
  }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -19,9 +19,10 @@ export class Icon extends LitElement {
19
19
  vertical-align: -0.125em;
20
20
  flex-shrink: 0;
21
21
  }
22
+
22
23
  svg {
23
- height: var(--sc-icon-size, 1em);
24
- width: 1.4em;
24
+ height: var(--_sc-icon-size, 1em);
25
+ width: calc(var(--_sc-icon-size, 1em) * 1.4);
25
26
  overflow: visible;
26
27
  }
27
28
 
@@ -34,31 +35,31 @@ export class Icon extends LitElement {
34
35
  }
35
36
 
36
37
  :host([size="2xs"]) svg {
37
- --sc-icon-size: 0.625em;
38
+ --_sc-icon-size: 0.625em;
38
39
  }
39
40
 
40
41
  :host([size="xs"]) svg {
41
- --sc-icon-size: 0.75em;
42
+ --_sc-icon-size: 0.75em;
42
43
  }
43
44
 
44
45
  :host([size="sm"]) svg {
45
- --sc-icon-size: 0.875em;
46
+ --_sc-icon-size: 0.875em;
46
47
  }
47
48
 
48
49
  :host([size="lg"]) svg {
49
- --sc-icon-size: 1.25em;
50
+ --_sc-icon-size: 1.25em;
50
51
  }
51
52
 
52
53
  :host([size="xl"]) svg {
53
- --sc-icon-size: 1.5em;
54
+ --_sc-icon-size: 1.5em;
54
55
  }
55
56
 
56
57
  :host([size="2xl"]) svg {
57
- --sc-icon-size: 2em;
58
+ --_sc-icon-size: 2em;
58
59
  }
59
60
 
60
61
  :host([size="3xl"]) svg {
61
- --sc-icon-size: 2.8em;
62
+ --_sc-icon-size: 2.8em;
62
63
  }
63
64
  `;
64
65
  async updateIcon() {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -7,6 +7,7 @@ import {
7
7
  property,
8
8
  query,
9
9
  queryAssignedElements,
10
+ state,
10
11
  } from "lit/decorators.js";
11
12
  import { styleMap } from "lit/directives/style-map.js";
12
13
 
@@ -20,6 +21,7 @@ import { ConcordeWindow } from "@supersoniks/concorde/core/_types/types";
20
21
  import { Theme } from "@supersoniks/concorde/core/components/ui/theme/theme";
21
22
  import { PrimitiveType } from "@supersoniks/concorde/core/_types/types";
22
23
  import { DirectiveResult } from "lit/directive.js";
24
+ import LocationHandler from "@supersoniks/concorde/core/utils/LocationHandler";
23
25
 
24
26
  import { unsafeHTML } from "lit/directives/unsafe-html.js";
25
27
 
@@ -41,6 +43,7 @@ declare type ModalCreateOptions = {
41
43
  removeHashOnHide?: boolean;
42
44
  fullScreen?: boolean;
43
45
  effect?: effectType;
46
+ closeOnLocationChange?: boolean;
44
47
  };
45
48
 
46
49
  type effectType = "fade" | "slide" | "none";
@@ -213,6 +216,9 @@ export class Modal extends Subscriber(LitElement) {
213
216
  @query(".modal-wrapper") modalWrapper!: HTMLDivElement;
214
217
  @query(".modal") modalElement!: HTMLDivElement;
215
218
 
219
+ @property({ type: Boolean }) closeOnLocationChange = false;
220
+ @state() location = "";
221
+
216
222
  @queryAssignedElements({ selector: "sonic-modal-close" })
217
223
  closeBtn!: Array<HTMLElement>;
218
224
  static create(options: ModalCreateOptions): Modal {
@@ -224,6 +230,8 @@ export class Modal extends Subscriber(LitElement) {
224
230
  modal.setAttribute("removeHashOnHide", "true");
225
231
  if (options.removeOnHide === true)
226
232
  modal.setAttribute("removeOnHide", "true");
233
+ if (options.closeOnLocationChange === true)
234
+ modal.setAttribute("closeOnLocationChange", "true");
227
235
 
228
236
  if (options.maxWidth) modal.maxWidth = options?.maxWidth;
229
237
  if (options.width) modal.width = options?.width;
@@ -248,10 +256,12 @@ export class Modal extends Subscriber(LitElement) {
248
256
 
249
257
  connectedCallback(): void {
250
258
  Modal.modals.push(this);
259
+ LocationHandler.onChange(this);
251
260
  super.connectedCallback();
252
261
  this.handleFullsceen();
253
262
  }
254
263
  disconnectedCallback(): void {
264
+ LocationHandler.offChange(this);
255
265
  Modal.modals.splice(Modal.modals.indexOf(this), 1);
256
266
  super.disconnectedCallback();
257
267
  }
@@ -273,6 +283,19 @@ export class Modal extends Subscriber(LitElement) {
273
283
  }
274
284
 
275
285
  willUpdate(_changedProperties: PropertyValues): void {
286
+ if (this.closeOnLocationChange && _changedProperties.has("location")) {
287
+ const previousLocation = _changedProperties.get("location");
288
+ if (
289
+ previousLocation &&
290
+ this.location &&
291
+ this.location !== previousLocation
292
+ ) {
293
+ setTimeout(() => {
294
+ this.hide();
295
+ }, 50);
296
+ }
297
+ }
298
+
276
299
  if (_changedProperties.has("fullScreen")) {
277
300
  this.handleFullsceen();
278
301
  }
File without changes
@@ -105,7 +105,7 @@ export class Pop extends LitElement {
105
105
 
106
106
  show() {
107
107
  this.setMaxZindex();
108
- this.popContent.style.removeProperty("display");
108
+ this.popContent?.style?.removeProperty("display");
109
109
  this.open = true;
110
110
  this.popContent.setAttribute("tabindex", "0");
111
111
  if (this.popBtn && this.popContent && !this.positioningRuns) {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,4 +1,4 @@
1
- import { html, LitElement, css } from "lit";
1
+ import { html, LitElement, css, PropertyValues } from "lit";
2
2
  import { customElement, property } from "lit/decorators.js";
3
3
  const tagName = "sonic-tooltip";
4
4
  @customElement(tagName)
@@ -35,12 +35,20 @@ export class Tooltip extends LitElement {
35
35
  scale: 0.9;
36
36
  will-change: opacity, transform;
37
37
  }
38
- :host(:focus-within) .tooltip:not(.disabled):before,
39
- .tooltip:not(.disabled):hover:before {
38
+
39
+ /* désactive au focus-within cause persistance du tooltip au clic */
40
+ /* :host(:focus-within) .tooltip:before, */
41
+ :host(:focus-visible) .tooltip:before,
42
+ .tooltip:hover:before {
40
43
  opacity: 1;
41
44
  scale: 1;
42
45
  }
43
46
 
47
+ .disabled:before {
48
+ opacity: 0 !important;
49
+ scale: 0.9 !important;
50
+ }
51
+
44
52
  :host(:not([placement])) .tooltip:before,
45
53
  :host([placement="top"]) .tooltip:before {
46
54
  bottom: var(--sc-tooltip-position);
@@ -120,15 +128,22 @@ export class Tooltip extends LitElement {
120
128
  | "left"
121
129
  | "left-start"
122
130
  | "left-end";
131
+
123
132
  @property({ type: Boolean }) disabled = false;
124
133
  @property({ type: Boolean }) focusable = false;
125
134
 
126
- connectedCallback(): void {
127
- if (this.focusable) {
128
- this.setAttribute("tabindex", "0");
135
+ protected willUpdate(_changedProperties: PropertyValues): void {
136
+ if (_changedProperties.has("disabled")) {
137
+ const wasDisabledBefore = _changedProperties.get("disabled") === true;
138
+ if (this.disabled) {
139
+ this.setAttribute("tabindex", "-1");
140
+ } else if (!this.disabled && wasDisabledBefore) {
141
+ this.removeAttribute("tabindex");
142
+ }
129
143
  }
130
- super.connectedCallback();
144
+ super.willUpdate(_changedProperties);
131
145
  }
146
+
132
147
  render() {
133
148
  const disabledClass = this.disabled || this.label == "" ? "disabled" : "";
134
149
  return html`<div
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -308,7 +308,11 @@ const Form = <T extends Constructor<SubscriberInterface>>(superClass: T) => {
308
308
  focus() {
309
309
  const inputElement = this.shadowRoot?.querySelector(
310
310
  "[data-form-element], button"
311
- ) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;
311
+ ) as
312
+ | HTMLInputElement
313
+ | HTMLSelectElement
314
+ | HTMLTextAreaElement
315
+ | HTMLButtonElement;
312
316
  inputElement?.focus();
313
317
  }
314
318
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/src/docs/code.ts CHANGED
File without changes
package/src/docs/docs.ts CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/src/index.ts CHANGED
File without changes
File without changes
File without changes
package/src/tsconfig.json CHANGED
@@ -273,14 +273,14 @@
273
273
  "./ui/button": [
274
274
  "/sites/concorde/src/core/components/ui/button/button.ts"
275
275
  ],
276
- "./actchaStyles": [
277
- "/sites/concorde/src/core/components/ui/captcha/actchaStyles.ts"
276
+ "./altchaStyles": [
277
+ "/sites/concorde/src/core/components/ui/captcha/altchaStyles.ts"
278
278
  ],
279
- "./ui/actchaStyles": [
280
- "/sites/concorde/src/core/components/ui/captcha/actchaStyles.ts"
279
+ "./ui/altchaStyles": [
280
+ "/sites/concorde/src/core/components/ui/captcha/altchaStyles.ts"
281
281
  ],
282
- "./ui/captcha/actchaStyles": [
283
- "/sites/concorde/src/core/components/ui/captcha/actchaStyles.ts"
282
+ "./ui/captcha/altchaStyles": [
283
+ "/sites/concorde/src/core/components/ui/captcha/altchaStyles.ts"
284
284
  ],
285
285
  "./captcha": [
286
286
  "/sites/concorde/src/core/components/ui/captcha/captcha.ts"