@supersoniks/concorde 3.1.64 → 3.1.66

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 (229) hide show
  1. package/build-infos.json +1 -1
  2. package/concorde-core.bundle.js +89 -71
  3. package/concorde-core.es.js +484 -433
  4. package/dist/concorde-core.bundle.js +89 -71
  5. package/dist/concorde-core.es.js +484 -433
  6. package/index.html +0 -0
  7. package/package.json +1 -1
  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.demo.ts +0 -0
  16. package/src/core/components/functional/list/list.spec.ts +0 -0
  17. package/src/core/components/functional/list/list.ts +13 -4
  18. package/src/core/components/functional/queue/queue.demo.ts +0 -0
  19. package/src/core/components/functional/queue/queue.ts +2 -0
  20. package/src/core/components/functional/router/router.demo.ts +0 -0
  21. package/src/core/components/functional/router/router.md +0 -0
  22. package/src/core/components/functional/router/router.spec.ts +0 -0
  23. package/src/core/components/functional/router/router.ts +0 -0
  24. package/src/core/components/functional/sonic-scope/sonic-scope.ts +0 -0
  25. package/src/core/components/functional/states/states.demo.ts +0 -0
  26. package/src/core/components/functional/states/states.md +0 -0
  27. package/src/core/components/functional/states/states.spec.ts +0 -0
  28. package/src/core/components/functional/states/states.ts +0 -0
  29. package/src/core/components/functional/submit/submit.ts +0 -0
  30. package/src/core/components/functional/translation/translation.ts +0 -0
  31. package/src/core/components/ui/_css/scroll.ts +0 -0
  32. package/src/core/components/ui/_css/shadow.ts +0 -0
  33. package/src/core/components/ui/_css/size.ts +0 -0
  34. package/src/core/components/ui/_css/type.ts +0 -0
  35. package/src/core/components/ui/alert/alert.md +0 -0
  36. package/src/core/components/ui/alert/alert.ts +0 -0
  37. package/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  38. package/src/core/components/ui/badge/badge.md +0 -0
  39. package/src/core/components/ui/badge/badge.ts +0 -0
  40. package/src/core/components/ui/button/button.md +0 -0
  41. package/src/core/components/ui/button/button.ts +0 -0
  42. package/src/core/components/ui/captcha/captcha.md +0 -0
  43. package/src/core/components/ui/captcha/captcha.ts +0 -0
  44. package/src/core/components/ui/card/card-footer.ts +0 -0
  45. package/src/core/components/ui/card/card-header-descripton.ts +0 -0
  46. package/src/core/components/ui/card/card-header.ts +0 -0
  47. package/src/core/components/ui/card/card-main.ts +0 -0
  48. package/src/core/components/ui/card/card.md +0 -0
  49. package/src/core/components/ui/card/card.ts +0 -0
  50. package/src/core/components/ui/divider/divider.ts +0 -0
  51. package/src/core/components/ui/form/checkbox/checkbox.md +15 -5
  52. package/src/core/components/ui/form/checkbox/checkbox.ts +1 -1
  53. package/src/core/components/ui/form/css/form-control.ts +1 -2
  54. package/src/core/components/ui/form/fieldset/fieldset.ts +1 -0
  55. package/src/core/components/ui/form/fieldset/legend-description.ts +7 -0
  56. package/src/core/components/ui/form/fieldset/legend.ts +7 -1
  57. package/src/core/components/ui/form/form-layout/form-layout.md +0 -0
  58. package/src/core/components/ui/form/input/input.md +0 -0
  59. package/src/core/components/ui/form/input/input.ts +0 -0
  60. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.ts +0 -0
  61. package/src/core/components/ui/form/radio/radio.md +0 -0
  62. package/src/core/components/ui/form/radio/radio.ts +0 -0
  63. package/src/core/components/ui/form/select/select.md +0 -0
  64. package/src/core/components/ui/form/select/select.ts +10 -5
  65. package/src/core/components/ui/form/switch/switch.md +0 -0
  66. package/src/core/components/ui/form/switch/switch.ts +0 -0
  67. package/src/core/components/ui/form/textarea/textarea.ts +0 -0
  68. package/src/core/components/ui/icon/icon.ts +0 -0
  69. package/src/core/components/ui/icon/icons.ts +0 -0
  70. package/src/core/components/ui/image/image.md +0 -0
  71. package/src/core/components/ui/image/image.ts +0 -0
  72. package/src/core/components/ui/loader/loader.md +0 -0
  73. package/src/core/components/ui/loader/loader.ts +0 -0
  74. package/src/core/components/ui/loader/styles/fixed.ts +0 -0
  75. package/src/core/components/ui/loader/styles/inline.ts +0 -0
  76. package/src/core/components/ui/menu/menu.ts +0 -0
  77. package/src/core/components/ui/modal/modal-actions.ts +0 -0
  78. package/src/core/components/ui/modal/modal-subtitle.ts +0 -0
  79. package/src/core/components/ui/modal/modal-title.ts +0 -0
  80. package/src/core/components/ui/modal/modal.md +0 -0
  81. package/src/core/components/ui/modal/modal.ts +0 -0
  82. package/src/core/components/ui/pop/pop.ts +0 -0
  83. package/src/core/components/ui/progress/progress.ts +0 -0
  84. package/src/core/components/ui/table/table-tbody.ts +0 -0
  85. package/src/core/components/ui/table/table-th.ts +0 -0
  86. package/src/core/components/ui/table/table.ts +0 -0
  87. package/src/core/components/ui/theme/theme-collection/core-variables.ts +0 -0
  88. package/src/core/components/ui/theme/theme-collection/dark.ts +0 -0
  89. package/src/core/components/ui/theme/theme-collection/light.ts +0 -0
  90. package/src/core/components/ui/theme/theme.ts +0 -0
  91. package/src/core/components/ui/toast/toast-item.ts +0 -0
  92. package/src/core/components/ui/toast/toast.ts +2 -4
  93. package/src/core/components/ui/tooltip/tooltip.ts +0 -0
  94. package/src/core/components/ui/ui.ts +0 -0
  95. package/src/core/directives/DataProvider.ts +0 -0
  96. package/src/core/directives/Wording.ts +0 -0
  97. package/src/core/mixins/Fetcher.ts +0 -0
  98. package/src/core/mixins/FormCheckable.ts +4 -3
  99. package/src/core/mixins/FormElement.ts +11 -0
  100. package/src/core/mixins/Subscriber.ts +4 -8
  101. package/src/core/mixins/TemplatesContainer.ts +0 -0
  102. package/src/core/utils/HTML.ts +0 -0
  103. package/src/core/utils/LocationHandler.ts +0 -0
  104. package/src/core/utils/Objects.ts +0 -0
  105. package/src/core/utils/PublisherProxy.ts +47 -4
  106. package/src/core/utils/Utils.ts +0 -0
  107. package/src/core/utils/aesCrypto.ts +0 -0
  108. package/src/core/utils/api.ts +0 -0
  109. package/src/core/utils/route.spec.ts +0 -0
  110. package/src/core/utils/route.ts +0 -0
  111. package/src/docs/code.ts +0 -0
  112. package/src/docs/docs.ts +0 -0
  113. package/src/docs/header/header.ts +0 -0
  114. package/src/docs/layout.ts +0 -0
  115. package/src/docs/navigation/navigation.ts +0 -0
  116. package/src/docs/search/docs-search.json +0 -0
  117. package/src/docs/search/markdown-renderer.ts +0 -0
  118. package/src/docs/search/page.ts +0 -0
  119. package/src/docs/search/search.ts +0 -0
  120. package/src/docs/tailwind/css/tailwind.css +0 -0
  121. package/src/docs/tailwind/css.d.ts +0 -0
  122. package/src/index.ts +0 -0
  123. package/src/test-utils/TestUtils.ts +0 -0
  124. package/src/tsconfig-model.json +0 -0
  125. package/src/tsconfig.json +0 -0
  126. package/src/tsconfig.tsbuildinfo +0 -0
  127. package/tailwind.config.js +0 -0
  128. package/templates-test.html +0 -0
  129. package/vite/config.js +0 -0
  130. package/vite.config.mts +0 -0
  131. package/docs/assets/index-D9bBwsCn.js +0 -4537
  132. package/docs/assets/index-DCRPZO3x.css +0 -1
  133. package/docs/css/docs.css +0 -0
  134. package/docs/fonts/ClashGrotesk-Bold.eot +0 -0
  135. package/docs/fonts/ClashGrotesk-Bold.ttf +0 -0
  136. package/docs/fonts/ClashGrotesk-Bold.woff +0 -0
  137. package/docs/fonts/ClashGrotesk-Bold.woff2 +0 -0
  138. package/docs/fonts/ClashGrotesk-Extralight.eot +0 -0
  139. package/docs/fonts/ClashGrotesk-Extralight.ttf +0 -0
  140. package/docs/fonts/ClashGrotesk-Extralight.woff +0 -0
  141. package/docs/fonts/ClashGrotesk-Extralight.woff2 +0 -0
  142. package/docs/fonts/ClashGrotesk-Light.eot +0 -0
  143. package/docs/fonts/ClashGrotesk-Light.ttf +0 -0
  144. package/docs/fonts/ClashGrotesk-Light.woff +0 -0
  145. package/docs/fonts/ClashGrotesk-Light.woff2 +0 -0
  146. package/docs/fonts/ClashGrotesk-Medium.eot +0 -0
  147. package/docs/fonts/ClashGrotesk-Medium.ttf +0 -0
  148. package/docs/fonts/ClashGrotesk-Medium.woff +0 -0
  149. package/docs/fonts/ClashGrotesk-Medium.woff2 +0 -0
  150. package/docs/fonts/ClashGrotesk-Regular.eot +0 -0
  151. package/docs/fonts/ClashGrotesk-Regular.ttf +0 -0
  152. package/docs/fonts/ClashGrotesk-Regular.woff +0 -0
  153. package/docs/fonts/ClashGrotesk-Regular.woff2 +0 -0
  154. package/docs/fonts/ClashGrotesk-Semibold.eot +0 -0
  155. package/docs/fonts/ClashGrotesk-Semibold.ttf +0 -0
  156. package/docs/fonts/ClashGrotesk-Semibold.woff +0 -0
  157. package/docs/fonts/ClashGrotesk-Semibold.woff2 +0 -0
  158. package/docs/fonts/ClashGrotesk-Variable.eot +0 -0
  159. package/docs/fonts/ClashGrotesk-Variable.ttf +0 -0
  160. package/docs/fonts/ClashGrotesk-Variable.woff +0 -0
  161. package/docs/fonts/ClashGrotesk-Variable.woff2 +0 -0
  162. package/docs/img/concorde-icon.svg +0 -5
  163. package/docs/img/concorde-logo.svg +0 -1
  164. package/docs/img/concorde.png +0 -0
  165. package/docs/img/concorde_def.png +0 -0
  166. package/docs/img/concorde_seuil.png.webp +0 -0
  167. package/docs/img/concorde_seuil_invert.png +0 -0
  168. package/docs/img/paul_metrand.jpg +0 -0
  169. package/docs/img/paul_metrand_xs.jpg +0 -0
  170. package/docs/index.html +0 -93
  171. package/docs/src/core/components/functional/date/date.md +0 -290
  172. package/docs/src/core/components/functional/fetch/fetch.md +0 -117
  173. package/docs/src/core/components/functional/if/if.md +0 -16
  174. package/docs/src/core/components/functional/list/list.md +0 -199
  175. package/docs/src/core/components/functional/mix/mix.md +0 -41
  176. package/docs/src/core/components/functional/queue/queue.md +0 -87
  177. package/docs/src/core/components/functional/router/router.md +0 -108
  178. package/docs/src/core/components/functional/sdui/default-library.json +0 -108
  179. package/docs/src/core/components/functional/sdui/example.json +0 -99
  180. package/docs/src/core/components/functional/sdui/sdui.md +0 -356
  181. package/docs/src/core/components/functional/states/states.md +0 -87
  182. package/docs/src/core/components/functional/submit/submit.md +0 -83
  183. package/docs/src/core/components/functional/subscriber/subscriber.md +0 -91
  184. package/docs/src/core/components/functional/value/value.md +0 -35
  185. package/docs/src/core/components/ui/alert/alert.md +0 -121
  186. package/docs/src/core/components/ui/alert-messages/alert-messages.md +0 -0
  187. package/docs/src/core/components/ui/badge/badge.md +0 -127
  188. package/docs/src/core/components/ui/button/button.md +0 -182
  189. package/docs/src/core/components/ui/captcha/captcha.md +0 -12
  190. package/docs/src/core/components/ui/card/card.md +0 -97
  191. package/docs/src/core/components/ui/divider/divider.md +0 -35
  192. package/docs/src/core/components/ui/form/checkbox/checkbox.md +0 -94
  193. package/docs/src/core/components/ui/form/fieldset/fieldset.md +0 -129
  194. package/docs/src/core/components/ui/form/form-actions/form-actions.md +0 -77
  195. package/docs/src/core/components/ui/form/form-layout/form-layout.md +0 -44
  196. package/docs/src/core/components/ui/form/input/input.md +0 -167
  197. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +0 -130
  198. package/docs/src/core/components/ui/form/radio/radio.md +0 -84
  199. package/docs/src/core/components/ui/form/select/select.md +0 -97
  200. package/docs/src/core/components/ui/form/switch/switch.md +0 -84
  201. package/docs/src/core/components/ui/form/textarea/textarea.md +0 -65
  202. package/docs/src/core/components/ui/group/group.md +0 -75
  203. package/docs/src/core/components/ui/icon/icon.md +0 -125
  204. package/docs/src/core/components/ui/icon/icons.json +0 -1
  205. package/docs/src/core/components/ui/image/image.md +0 -107
  206. package/docs/src/core/components/ui/link/link.md +0 -43
  207. package/docs/src/core/components/ui/loader/loader.md +0 -67
  208. package/docs/src/core/components/ui/menu/menu.md +0 -288
  209. package/docs/src/core/components/ui/modal/modal.md +0 -123
  210. package/docs/src/core/components/ui/pop/pop.md +0 -79
  211. package/docs/src/core/components/ui/progress/progress.md +0 -63
  212. package/docs/src/core/components/ui/table/table.md +0 -455
  213. package/docs/src/core/components/ui/tooltip/tooltip.md +0 -82
  214. package/docs/src/docs/_core-concept/overview.md +0 -57
  215. package/docs/src/docs/_core-concept/subscriber.md +0 -76
  216. package/docs/src/docs/_getting-started/concorde-outside.md +0 -143
  217. package/docs/src/docs/_getting-started/create-a-component.md +0 -137
  218. package/docs/src/docs/_getting-started/my-first-subscriber.md +0 -174
  219. package/docs/src/docs/_getting-started/pubsub.md +0 -150
  220. package/docs/src/docs/_getting-started/start.md +0 -39
  221. package/docs/src/docs/_getting-started/theming.md +0 -91
  222. package/docs/src/docs/search/docs-search.json +0 -3902
  223. package/docs/src/tag-list.json +0 -1
  224. package/docs/src/tsconfig-model.json +0 -23
  225. package/docs/src/tsconfig.json +0 -835
  226. package/docs/svg/regular/plane.svg +0 -1
  227. package/docs/svg/solid/plane.svg +0 -1
  228. package/php/get-challenge.php +0 -34
  229. package/php/some-service.php +0 -42
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.64",
3
+ "version": "3.1.66",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "",
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
@@ -72,6 +72,7 @@ export class List extends Fetcher(Subscriber(TemplatesContainer(LitElement))) {
72
72
  @property({ type: Object }) items?: ListItems;
73
73
  @property({ type: Object }) noItems?: () => DirectiveResult;
74
74
  @property({ type: Object }) skeleton?: () => DirectiveResult;
75
+ @property({ type: Object }) separator?: () => DirectiveResult;
75
76
 
76
77
  connectedCallback() {
77
78
  this.noShadowDom = "";
@@ -101,6 +102,14 @@ export class List extends Fetcher(Subscriber(TemplatesContainer(LitElement))) {
101
102
  if (!(this.isLoading && template)) return nothing;
102
103
  return templateContent(template) as DirectiveResult;
103
104
  }
105
+ renderSeparator() {
106
+ if (this.separator) {
107
+ return this.separator();
108
+ }
109
+ const template = this.templateParts["separator"];
110
+ if (!template) return nothing;
111
+ return templateContent(template) as DirectiveResult;
112
+ }
104
113
 
105
114
  renderLoadingState():
106
115
  | DirectiveResult<typeof TemplateContentDirective>
@@ -280,7 +289,7 @@ export class List extends Fetcher(Subscriber(TemplatesContainer(LitElement))) {
280
289
  const templateCount = this.templateList.length;
281
290
  let counter = -1;
282
291
  const extractValues = this.hasAttribute("extractValues");
283
- const separator = this.templateParts["separator"];
292
+ const separator = this.renderSeparator();
284
293
  const length = props?.length || 0;
285
294
 
286
295
  const items = props?.slice(this.offset, this.offset + this.limit);
@@ -328,8 +337,8 @@ export class List extends Fetcher(Subscriber(TemplatesContainer(LitElement))) {
328
337
  key
329
338
  );
330
339
  if (programmaticTemplate) {
331
- return html`${programmaticTemplate}${separator && !isLastChild
332
- ? templateContent(separator)
340
+ return html`${programmaticTemplate}${!isLastChild
341
+ ? separator
333
342
  : nothing}`;
334
343
  }
335
344
 
@@ -349,7 +358,7 @@ export class List extends Fetcher(Subscriber(TemplatesContainer(LitElement))) {
349
358
  ? templateContent(templatePart)
350
359
  : templateContent(this.templateList[counter % templateCount])}
351
360
  </sonic-subscriber>
352
- ${separator && !isLastChild ? templateContent(separator) : nothing}
361
+ ${!isLastChild ? separator : nothing}
353
362
  `;
354
363
  })}
355
364
  `;
@@ -229,6 +229,7 @@ export default class Queue extends Subscriber(LitElement, {} as QueueProps) {
229
229
  * * Si pas d'expression *$offset* le composant se comporte un peu comme une liste, il ne va pas essayer de charger les éléments suivants
230
230
  */
231
231
  @property({ type: String }) dataProviderExpression = "";
232
+ @property({ type: Boolean }) invalidateOnPageShow = false;
232
233
 
233
234
  @property({ type: String }) idKey = "id";
234
235
 
@@ -356,6 +357,7 @@ export default class Queue extends Subscriber(LitElement, {} as QueueProps) {
356
357
  displayContents
357
358
  lazyBoundsRatio=${this.lazyBoundsRatio}
358
359
  ?lazyload=${lazyload}
360
+ ?invalidateOnPageShow=${this.invalidateOnPageShow}
359
361
  localStorage=${this.localStorage}
360
362
  requestId=${this.requestId}
361
363
  .itemPropertyMap=${this.itemPropertyMap}
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
File without changes
@@ -51,11 +51,21 @@
51
51
 
52
52
  ## Check all checkbox
53
53
  <sonic-code>
54
- <template>
55
- <div formDataProvider="checkbox-check-all-demo">
56
- <sonic-checkbox checked name='someSharedName' value="all" checksAll>All</sonic-checkbox>
57
- <sonic-checkbox checked name="someSharedName" value="foo">Foo</sonic-checkbox>
58
- <sonic-checkbox checked name="someSharedName" value="bar">Bar</sonic-checkbox>
54
+ <template>
55
+ <div formDataProvider="checkbox-check-all-demo" dataProvider="checkbox-check-all-demo">
56
+ <sonic-checkbox name='someSharedName' value="all" checksAll>All</sonic-checkbox>
57
+ <sonic-divider></sonic-divider>
58
+ <div class="grid gap-2">
59
+ <sonic-checkbox name="someSharedName" value="foo">Foo</sonic-checkbox>
60
+ <sonic-checkbox name="someSharedName" value="bar">Bar</sonic-checkbox>
61
+ </div>
62
+ <sonic-divider></sonic-divider>
63
+ <div>
64
+ <span>Enabling unsetOnDisconect ensures that outdated or irrelevant values are not retained in the form state once their associated inputs are no longer rendered.</span>
65
+ <div id="prunable-checkbox" class="flex gap-2 items-center">
66
+ <sonic-checkbox name="someSharedName" value="baz">Baz</sonic-checkbox>
67
+ <sonic-button variant="ghost" shape="circle" unique name="toggleCheckboxExistance" onclick="document.getElementById('prunable-checkbox').remove();" value="true"><sonic-icon library="fontAwesome" prefix="solid" name="trash"></sonic-icon></sonic-button>
68
+ </div>
59
69
  </div>
60
70
  </template>
61
71
  </sonic-code>
@@ -144,7 +144,7 @@ export class Checkbox extends FormCheckable(
144
144
 
145
145
  /*INPUT HOVER*/
146
146
  :host(:not([disabled])) label:hover input {
147
- filter: brightness(0.97);
147
+ background-color: hsl(from var(--sc-input-bg) h s calc(l * 0.97));
148
148
  }
149
149
 
150
150
  ::slotted(a) {
@@ -246,8 +246,7 @@ export const formControl = css`
246
246
  :host(:not([disabled])) .form-element:hover,
247
247
  .form-element:focus-visible,
248
248
  .form-element:focus {
249
- filter: brightness(0.97);
250
- outline: none;
249
+ background-color: hsl(from var(--sc-input-bg) h s calc(l * 0.97));
251
250
  }
252
251
 
253
252
  .form-label {
@@ -77,6 +77,7 @@ export class Fieldset extends Subscriber(LitElement) {
77
77
  @property({ type: String }) iconName?: string;
78
78
  @property({ type: String }) iconLibrary?: string;
79
79
  @property({ type: String }) iconPrefix?: string;
80
+
80
81
  @property({ type: Boolean, reflect: true }) tight?: boolean;
81
82
 
82
83
  @property({ type: String, reflect: true }) variant:
@@ -13,6 +13,13 @@ export class LegendDescription extends LitElement {
13
13
  font-weight: var(--sc-font-weight-base, 400);
14
14
  font-style: var(--sc-font-style-base, normal);
15
15
  margin-top: 0.2em;
16
+ container-type: inline-size;
17
+ }
18
+
19
+ @container (max-inline-size: 28rem) {
20
+ :host {
21
+ font-size: 1rem;
22
+ }
16
23
  }
17
24
  `,
18
25
  ];
@@ -22,8 +22,14 @@ export class Legend extends LitElement {
22
22
  --sc-legend-color: var(--sc-base-content, #000);
23
23
  display: flex;
24
24
  width: 100%;
25
+ container-type: inline-size;
25
26
  }
26
27
 
28
+ @container (max-inline-size: 28rem) {
29
+ legend {
30
+ --sc-legend-font-size: 1.3rem;
31
+ }
32
+ }
27
33
  legend {
28
34
  font-size: var(--sc-legend-font-size);
29
35
  font-weight: var(--sc-legend-font-weight);
@@ -35,7 +41,7 @@ export class Legend extends LitElement {
35
41
  display: flex;
36
42
  width: 100%;
37
43
  align-items: flex-start;
38
- gap: 0.5em;
44
+ gap: 0.35em;
39
45
  }
40
46
 
41
47
  slot[name="suffix"] {
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -58,14 +58,15 @@ export class Select extends FormElement(Subscriber(LitElement)) {
58
58
  }
59
59
 
60
60
  @supports selector(:has(*)) {
61
- :host(:not([disabled])) .form-element:not(:has(option:only-child)) {
62
- padding-right: max(1.275em, calc(1.5 * var(--sc-input-px)));
61
+ :host([align="left"]:not([disabled]))
62
+ .form-element:not(:has(option:only-child)) {
63
+ padding-right: max(1.5em, calc(1.5 * var(--sc-input-px)));
63
64
  }
64
65
  }
65
66
  /*Firefox etc.*/
66
67
  @supports not selector(:has(*)) {
67
- :host(:not([disabled])) .form-element {
68
- padding-right: max(1.275em, calc(1.5 * var(--sc-input-px)));
68
+ :host([align="left"]:not([disabled])) .form-element {
69
+ padding-right: max(1.5em, calc(1.5 * var(--sc-input-px)));
69
70
  }
70
71
  }
71
72
 
@@ -76,11 +77,12 @@ export class Select extends FormElement(Subscriber(LitElement)) {
76
77
 
77
78
  sonic-icon {
78
79
  position: absolute;
79
- right: calc(0.8 * var(--sc-input-px));
80
80
  top: 50%;
81
81
  pointer-events: none;
82
82
  transform: translateY(-50%);
83
83
  color: var(--sc-input-c);
84
+ right: 0.1em;
85
+ width: 1.275em;
84
86
  }
85
87
 
86
88
  option {
@@ -93,6 +95,9 @@ export class Select extends FormElement(Subscriber(LitElement)) {
93
95
  background: transparent;
94
96
  padding: 0;
95
97
  }
98
+ :host([multiple]) sonic-icon {
99
+ display: none !important;
100
+ }
96
101
  `,
97
102
  ];
98
103
 
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
File without changes
File without changes
@@ -206,11 +206,9 @@ export class SonicToast extends LitElement {
206
206
  }
207
207
  }
208
208
 
209
-
210
-
211
-
212
209
  if (typeof window !== "undefined") {
213
- window[sonicClassPrefix+"Toast"] = window[sonicClassPrefix+"Toast"] || SonicToast;
210
+ window[sonicClassPrefix + "Toast"] =
211
+ window[sonicClassPrefix + "Toast"] || SonicToast;
214
212
  }
215
213
 
216
214
  /**
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -62,8 +62,6 @@ const Form = <T extends Constructor<FormElementInterface>>(superClass: T) => {
62
62
  */
63
63
  @property({ type: Boolean }) radio: true | null = null;
64
64
 
65
- @property({ type: Boolean }) unCheckOnDisconnect = false;
66
-
67
65
  /**
68
66
  * propriété checked avec des caractéristiques similaire à un input html classique.
69
67
  */
@@ -229,7 +227,7 @@ const Form = <T extends Constructor<FormElementInterface>>(superClass: T) => {
229
227
  checkAllPublisher.checkMode = "noneChecked";
230
228
  }
231
229
  }
232
- if (allValues.indexOf(this.value) == -1) {
230
+ if (allValues.indexOf(this.value) == -1 && this.unsetOnDisconnect()) {
233
231
  this.checked = null;
234
232
  }
235
233
  }
@@ -249,6 +247,9 @@ const Form = <T extends Constructor<FormElementInterface>>(superClass: T) => {
249
247
  this.setAttribute("indeterminate", "");
250
248
  }
251
249
  };
250
+ unset() {
251
+ this.checked = null;
252
+ }
252
253
  disconnectedCallback(): void {
253
254
  super.disconnectedCallback();
254
255
 
@@ -20,6 +20,8 @@ export interface FormElementInterface extends SubscriberInterface {
20
20
  setValueFromPublisher(value: FormElementValue): void;
21
21
  setFormPublisherValue(value: FormElementValue): void;
22
22
  getFormPublisherValue(): FormElementValue;
23
+ unsetOnDisconnect(): boolean;
24
+ unset(): void;
23
25
 
24
26
  validateFormElement(): void;
25
27
  focus?: () => void;
@@ -101,6 +103,9 @@ const Form = <T extends Constructor<SubscriberInterface>>(superClass: T) => {
101
103
  validateFormElement() {
102
104
  //Implémentation dans une sous classe
103
105
  }
106
+ unsetOnDisconnect() {
107
+ return this.hasAttribute("unsetOnDisconnect");
108
+ }
104
109
 
105
110
  updateDataValue() {
106
111
  const name = this.getAttribute("name");
@@ -313,8 +318,14 @@ const Form = <T extends Constructor<SubscriberInterface>>(superClass: T) => {
313
318
  super.connectedCallback();
314
319
  this.addKeyboardNavigation();
315
320
  }
321
+ unset() {
322
+ this.value = null;
323
+ }
316
324
 
317
325
  disconnectedCallback() {
326
+ if (this.unsetOnDisconnect()) {
327
+ this.unset();
328
+ }
318
329
  super.disconnectedCallback();
319
330
  if (this._name && this.publisher)
320
331
  traverseDotNotation(this.publisher, this._name).offAssign(
@@ -168,7 +168,6 @@ const Subscriber = <
168
168
  this.requestUpdate();
169
169
  }
170
170
 
171
-
172
171
  protected updated(_changedProperties: PropertyValues): void {
173
172
  super.updated(_changedProperties);
174
173
  const ref = this.shadowRoot || this;
@@ -211,11 +210,10 @@ const Subscriber = <
211
210
  this.initWording();
212
211
  this.shouldRenderLazy = false;
213
212
  }
214
-
213
+
215
214
  this.initPublisher();
216
215
  this.addDebugger();
217
216
  super.connectedCallback();
218
-
219
217
  }
220
218
 
221
219
  disconnectedCallback() {
@@ -343,8 +341,6 @@ const Subscriber = <
343
341
  this.props = v;
344
342
  };
345
343
 
346
-
347
-
348
344
  initPublisher() {
349
345
  if (!document) return;
350
346
  if (this.publisher) {
@@ -367,6 +363,7 @@ const Subscriber = <
367
363
 
368
364
  let pub = mng.get(publisherId, {
369
365
  localStorageMode: this.getAttribute("localStorage") || "disabled",
366
+ invalidateOnPageShow: this.hasAttribute("invalidateOnPageShow"),
370
367
  });
371
368
  this.dataProvider = publisherId;
372
369
 
@@ -381,10 +378,9 @@ const Subscriber = <
381
378
  }
382
379
  this.publisher = pub;
383
380
  }
384
- if(this.hasAttribute("lazyRendering")) {
381
+ if (this.hasAttribute("lazyRendering")) {
385
382
  return;
386
- }
387
- else{
383
+ } else {
388
384
  this.startPublisher();
389
385
  }
390
386
  }
File without changes
File without changes
File without changes
File without changes