@supersoniks/concorde 5.0.3 → 5.0.4

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 (106) hide show
  1. package/.github/workflows/ci.yml +21 -0
  2. package/.github-export-ignore +30 -0
  3. package/CONTRIBUTING.md +59 -0
  4. package/DEV.md +54 -0
  5. package/LICENSE +21 -0
  6. package/OPEN_SOURCE_CHECKPOINT.md +133 -0
  7. package/build-infos.json +1 -1
  8. package/concorde-core.bundle.js +66 -66
  9. package/concorde-core.es.js +1368 -1318
  10. package/dist/concorde-core.bundle.js +66 -66
  11. package/dist/concorde-core.es.js +1368 -1318
  12. package/docs/assets/{index-BnK6OS7w.js → index-D8MVWqY6.js} +1144 -1008
  13. package/docs/assets/index-DiD0qYvE.css +1 -0
  14. package/docs/crawl/core/components/ui/alert/alert.html +71 -101
  15. package/docs/crawl/core/components/ui/badge/badge.html +77 -106
  16. package/docs/crawl/core/components/ui/button/button.html +0 -1
  17. package/docs/crawl/core/components/ui/card/card.html +68 -112
  18. package/docs/crawl/core/components/ui/form/input/input.html +3 -3
  19. package/docs/crawl/core/components/ui/form/textarea/textarea.html +3 -3
  20. package/docs/crawl/core/components/ui/image/image.html +56 -132
  21. package/docs/crawl/core/components/ui/link/link.html +4 -4
  22. package/docs/crawl/core/components/ui/pop/pop.html +3 -79
  23. package/docs/crawl/docs/_getting-started/concorde-outside.html +3 -3
  24. package/docs/crawl/hubs/form-components.html +4 -4
  25. package/docs/index.html +5 -5
  26. package/docs/llms-full.txt +97 -281
  27. package/docs/llms.txt +8 -8
  28. package/docs/src/core/components/functional/fetch/fetch.md +0 -0
  29. package/docs/src/core/components/functional/if/if.md +0 -0
  30. package/docs/src/core/components/functional/list/list.md +0 -0
  31. package/docs/src/core/components/functional/router/router.md +0 -0
  32. package/docs/src/core/components/functional/sdui/sdui.md +0 -0
  33. package/docs/src/core/components/functional/states/states.md +0 -0
  34. package/docs/src/core/components/functional/submit/submit.md +0 -0
  35. package/docs/src/core/components/ui/alert/alert.md +72 -128
  36. package/docs/src/core/components/ui/badge/badge.md +78 -126
  37. package/docs/src/core/components/ui/button/button.md +0 -1
  38. package/docs/src/core/components/ui/captcha/captcha.md +0 -0
  39. package/docs/src/core/components/ui/card/card.md +65 -120
  40. package/docs/src/core/components/ui/form/input/input.md +1 -1
  41. package/docs/src/core/components/ui/form/radio/radio.md +0 -0
  42. package/docs/src/core/components/ui/form/select/select.md +0 -0
  43. package/docs/src/core/components/ui/form/switch/switch.md +0 -0
  44. package/docs/src/core/components/ui/form/textarea/textarea.md +1 -1
  45. package/docs/src/core/components/ui/image/image.md +53 -147
  46. package/docs/src/core/components/ui/link/link.md +2 -2
  47. package/docs/src/core/components/ui/loader/loader.md +0 -0
  48. package/docs/src/core/components/ui/menu/menu.md +0 -0
  49. package/docs/src/core/components/ui/modal/modal.md +0 -0
  50. package/docs/src/core/components/ui/pop/pop.md +1 -105
  51. package/docs/src/core/components/ui/table/table.md +0 -0
  52. package/docs/src/docs/_core-concept/subscriber.md +0 -0
  53. package/docs/src/docs/_getting-started/concorde-outside.md +3 -3
  54. package/docs/src/docs/_getting-started/my-first-subscriber.md +0 -0
  55. package/docs/src/docs/_getting-started/pubsub.md +0 -0
  56. package/docs/src/docs/_getting-started/start.md +0 -0
  57. package/docs/src/docs/search/docs-search.json +25 -655
  58. package/docs/src/tsconfig.declarations.json +22 -0
  59. package/docs/src/tsconfig.emit.json +23 -0
  60. package/docs/src/tsconfig.json +3 -45
  61. package/gitlab/job_github_mirror.sh +39 -0
  62. package/gitlab/job_tests.sh +0 -0
  63. package/package.json +1 -1
  64. package/scripts/github-export.mjs +150 -0
  65. package/scripts/post-build-docs.js +0 -0
  66. package/scripts/post-build.mjs +0 -0
  67. package/src/core/components/functional/fetch/fetch.md +0 -0
  68. package/src/core/components/functional/if/if.md +0 -0
  69. package/src/core/components/functional/list/list.demo.ts +0 -0
  70. package/src/core/components/functional/list/list.md +0 -0
  71. package/src/core/components/functional/router/router.md +0 -0
  72. package/src/core/components/functional/router/router.ts +0 -0
  73. package/src/core/components/functional/sdui/sdui.md +0 -0
  74. package/src/core/components/functional/states/states.md +0 -0
  75. package/src/core/components/functional/submit/submit.md +0 -0
  76. package/src/core/components/functional/subscriber/subscriber.ts +0 -0
  77. package/src/core/components/ui/_css/size.ts +0 -0
  78. package/src/core/components/ui/captcha/altchaStyles.ts +0 -0
  79. package/src/core/components/ui/captcha/captcha.md +0 -0
  80. package/src/core/components/ui/form/radio/radio.md +0 -0
  81. package/src/core/components/ui/form/select/select.md +0 -0
  82. package/src/core/components/ui/form/switch/switch.md +0 -0
  83. package/src/core/components/ui/loader/loader.md +0 -0
  84. package/src/core/components/ui/menu/menu.md +0 -0
  85. package/src/core/components/ui/modal/modal.md +0 -0
  86. package/src/core/components/ui/table/table-caption.ts +0 -0
  87. package/src/core/components/ui/table/table.md +0 -0
  88. package/src/core/decorators/subscriber/ancestorAttribute.spec.ts +26 -0
  89. package/src/core/decorators/subscriber/ancestorAttribute.ts +3 -4
  90. package/src/core/mixins/Subscriber.ts +0 -0
  91. package/src/core/utils/AncestorAttributeObserver.ts +183 -70
  92. package/src/core/utils/DataBindObserver.ts +0 -0
  93. package/src/core/utils/Objects.ts +0 -0
  94. package/src/core/utils/route.ts +0 -0
  95. package/src/css.d.ts +19 -0
  96. package/src/docs/_core-concept/subscriber.md +0 -0
  97. package/src/docs/_decorators/ancestor-attribute.md +3 -2
  98. package/src/docs/_getting-started/my-first-subscriber.md +0 -0
  99. package/src/docs/_getting-started/pubsub.md +0 -0
  100. package/src/docs/_getting-started/start.md +0 -0
  101. package/src/docs/example/users.ts +0 -0
  102. package/src/docs/search/page.ts +0 -0
  103. package/src/tsconfig.declarations.json +22 -0
  104. package/src/tsconfig.emit.json +23 -0
  105. package/src/tsconfig.tsbuildinfo +1 -1
  106. package/docs/assets/index--GpD7R7a.css +0 -1
@@ -4,8 +4,8 @@
4
4
  <meta charset="UTF-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <title>Pop — Concorde</title>
7
- <meta name="description" content="Default placement is bottom. Placement is written side-align, like sonic-tooltip: side is top, right, bottom or left, align is start, center or end. Without align, content is aligned on the start of t">
8
- <meta name="keywords" content="Concorde, supersoniks, core/components/ui/pop/pop, pop, Pop, UI component, sonic-pop, web component, bottom, side-align, sonic-tooltip, side, top, right, left, align, start">
7
+ <meta name="description" content="Click to open pop">
8
+ <meta name="keywords" content="Concorde, supersoniks, core/components/ui/pop/pop, pop, Pop, UI component, sonic-pop, web component">
9
9
  <meta name="concorde-doc-id" content="core/components/ui/pop/pop">
10
10
  <link rel="canonical" href="https://concorde.supersoniks.org/crawl/core/components/ui/pop/pop.html">
11
11
  </head>
@@ -15,7 +15,7 @@
15
15
  </header>
16
16
  <main>
17
17
  <article>
18
- <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Pop</strong>. Default placement is bottom. Placement is written side-align, like sonic-tooltip: side is top, right, bottom or left, align is start, center or end. Without align, content is aligned on the start of t <span>Doc ID: <code>core/components/ui/pop/pop</code>. Keywords: Concorde, supersoniks, core/components/ui/pop/pop, pop, Pop, UI component, sonic-pop, web component, bottom, side-align, sonic-tooltip, side, top, right, left, align, start. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/pop/pop.html">https://concorde.supersoniks.org/crawl/core/components/ui/pop/pop.html</a>.</span></p>
18
+ <p class="doc-lead" id="doc-summary"><strong>Concorde UI component — Pop</strong>. Click to open pop <span>Doc ID: <code>core/components/ui/pop/pop</code>. Keywords: Concorde, supersoniks, core/components/ui/pop/pop, pop, Pop, UI component, sonic-pop, web component. URL: <a href="https://concorde.supersoniks.org/crawl/core/components/ui/pop/pop.html">https://concorde.supersoniks.org/crawl/core/components/ui/pop/pop.html</a>.</span></p>
19
19
  <h1 id="pop">Pop</h1>
20
20
  <h2 id="placement">Placement</h2>
21
21
  <pre><code>&lt;sonic-pop class=&quot;inline-block&quot; placement=&quot;left&quot;&gt;
@@ -43,35 +43,7 @@
43
43
  &lt;/sonic-menu&gt;
44
44
  &lt;/sonic-pop&gt;
45
45
  </code></pre>
46
- <p>Default placement is <code>bottom</code>. Placement is written <code>side-align</code>, like <code>sonic-tooltip</code>: <code>side</code> is <code>top</code>, <code>right</code>, <code>bottom</code> or <code>left</code>, <code>align</code> is <code>start</code>, <code>center</code> or <code>end</code>. Without <code>align</code>, content is aligned on the start of the trigger. If there is not enough room, content flips to the opposite side and stays inside the viewport.</p>
47
- <p>The former space syntax (<code>placement=&quot;bottom center&quot;</code>) still works but is deprecated.</p>
48
- <pre><code>&lt;sonic-pop class=&quot;inline-block&quot; placement=&quot;bottom-center&quot;&gt;
49
- &lt;sonic-button&gt;Bottom center&lt;/sonic-button&gt;
50
- &lt;sonic-menu slot=&quot;content&quot;&gt;
51
- &lt;sonic-menu-item&gt;&lt;sonic-icon library=&quot;iconoir&quot; name=&quot;bell-notification&quot; slot=&quot;prefix&quot;&gt;&lt;/sonic-icon&gt;Notifications&lt;/sonic-menu-item&gt;
52
- &lt;/sonic-menu&gt;
53
- &lt;/sonic-pop&gt;
54
- &lt;sonic-pop class=&quot;inline-block&quot; placement=&quot;top-center&quot;&gt;
55
- &lt;sonic-button&gt;Top center&lt;/sonic-button&gt;
56
- &lt;sonic-menu slot=&quot;content&quot;&gt;
57
- &lt;sonic-menu-item&gt;&lt;sonic-icon library=&quot;iconoir&quot; name=&quot;bell-notification&quot; slot=&quot;prefix&quot;&gt;&lt;/sonic-icon&gt;Notifications&lt;/sonic-menu-item&gt;
58
- &lt;/sonic-menu&gt;
59
- &lt;/sonic-pop&gt;
60
- &lt;sonic-pop class=&quot;inline-block&quot; placement=&quot;left-center&quot;&gt;
61
- &lt;sonic-button&gt;Left center&lt;/sonic-button&gt;
62
- &lt;sonic-menu slot=&quot;content&quot;&gt;
63
- &lt;sonic-menu-item&gt;&lt;sonic-icon library=&quot;iconoir&quot; name=&quot;bell-notification&quot; slot=&quot;prefix&quot;&gt;&lt;/sonic-icon&gt;Notifications&lt;/sonic-menu-item&gt;
64
- &lt;/sonic-menu&gt;
65
- &lt;/sonic-pop&gt;
66
- &lt;sonic-pop class=&quot;inline-block&quot; placement=&quot;right-center&quot;&gt;
67
- &lt;sonic-button&gt;Right center&lt;/sonic-button&gt;
68
- &lt;sonic-menu slot=&quot;content&quot;&gt;
69
- &lt;sonic-menu-item&gt;&lt;sonic-icon library=&quot;iconoir&quot; name=&quot;bell-notification&quot; slot=&quot;prefix&quot;&gt;&lt;/sonic-icon&gt;Notifications&lt;/sonic-menu-item&gt;
70
- &lt;/sonic-menu&gt;
71
- &lt;/sonic-pop&gt;
72
- </code></pre>
73
46
  <h2 id="shadow">Shadow</h2>
74
- <p>Default shadow is <code>lg</code>.</p>
75
47
  <pre><code>&lt;sonic-pop class=&quot;inline-block&quot; shadow=&quot;none&quot; placement=&#39;top&#39; &gt;
76
48
  &lt;sonic-button&gt;None&lt;/sonic-button&gt;
77
49
  &lt;sonic-menu slot=&quot;content&quot;&gt;
@@ -97,20 +69,6 @@
97
69
  &lt;/sonic-menu&gt;
98
70
  &lt;/sonic-pop&gt;
99
71
  </code></pre>
100
- <h2 id="inline">Inline</h2>
101
- <p>By default, pop is vertically aligned to the middle. Use <code>inline</code> to align it on the text baseline, e.g. inside a sentence.</p>
102
- <pre><code>&lt;p&gt;
103
- The Concorde flew from Paris to
104
- &lt;sonic-pop inline&gt;
105
- &lt;sonic-button variant=&quot;link&quot;&gt;New York&lt;/sonic-button&gt;
106
- &lt;sonic-menu slot=&quot;content&quot;&gt;
107
- &lt;sonic-menu-item&gt;See flights&lt;/sonic-menu-item&gt;
108
- &lt;sonic-menu-item&gt;Book a seat&lt;/sonic-menu-item&gt;
109
- &lt;/sonic-menu&gt;
110
- &lt;/sonic-pop&gt;
111
- in about 3.5 hours.
112
- &lt;/p&gt;
113
- </code></pre>
114
72
  <h2 id="notoggle">noToggle</h2>
115
73
  <pre><code>&lt;sonic-pop class=&quot;inline-block&quot; noToggle&gt;
116
74
  &lt;sonic-button&gt;No toggle on click&lt;/sonic-button&gt;
@@ -136,40 +94,6 @@
136
94
  &lt;sonic-icon name=&quot;sparkles&quot; library=&quot;custom&quot;&gt;&lt;/sonic-icon&gt;
137
95
  Click to open pop
138
96
  &lt;/sonic-button&gt;
139
- </code></pre>
140
- <h2 id="keep-open-on-select">Keep open on select</h2>
141
- <p>By default, a click inside the content closes the pop, as well as a click outside. Add <code>data-on-select=&quot;keep&quot;</code> on the content, or on any of its elements, to keep the pop open when interacting with it.</p>
142
- <pre><code>&lt;sonic-pop class=&quot;inline-block&quot;&gt;
143
- &lt;sonic-button&gt;Closes on select&lt;/sonic-button&gt;
144
- &lt;div slot=&quot;content&quot; class=&quot;grid gap-2 p-3&quot;&gt;
145
- &lt;sonic-checkbox&gt;Option A&lt;/sonic-checkbox&gt;
146
- &lt;sonic-checkbox&gt;Option B&lt;/sonic-checkbox&gt;
147
- &lt;/div&gt;
148
- &lt;/sonic-pop&gt;
149
- &lt;sonic-pop class=&quot;inline-block&quot;&gt;
150
- &lt;sonic-button&gt;Stays open on select&lt;/sonic-button&gt;
151
- &lt;div slot=&quot;content&quot; class=&quot;grid gap-2 p-3&quot; data-on-select=&quot;keep&quot;&gt;
152
- &lt;sonic-checkbox&gt;Option A&lt;/sonic-checkbox&gt;
153
- &lt;sonic-checkbox&gt;Option B&lt;/sonic-checkbox&gt;
154
- &lt;/div&gt;
155
- &lt;/sonic-pop&gt;
156
- </code></pre>
157
- <h2 id="keyboard">Keyboard</h2>
158
- <ul>
159
- <li><code>ArrowDown</code> on the trigger opens the pop.</li>
160
- <li><code>Escape</code> closes the last opened pop and gives focus back to its trigger.</li>
161
- </ul>
162
- <h2 id="methods-and-events">Methods and events</h2>
163
- <p><code>show()</code> and <code>hide()</code> open and close the pop programmatically (see <code>manual</code> above). The pop dispatches a <code>show</code> event when it opens and a <code>hide</code> event when it closes.</p>
164
- <pre><code class="language-js">const pop = document.querySelector(&quot;sonic-pop&quot;);
165
- pop.addEventListener(&quot;hide&quot;, () =&gt; console.log(&quot;pop closed&quot;));
166
- pop.show();
167
- </code></pre>
168
- <h2 id="styling">Styling</h2>
169
- <p>The content can be styled from outside with <code>::part(content)</code>.</p>
170
- <pre><code class="language-css">sonic-pop::part(content) {
171
- border-radius: 0;
172
- }
173
97
  </code></pre>
174
98
 
175
99
  </article>
@@ -17,9 +17,9 @@
17
17
  <article>
18
18
  <p class="doc-lead" id="doc-summary"><strong>Concorde guide — Installation</strong>. The following command creates a new Vite project in TypeScript mode with Tailwind and an example component to get started. <span>Doc ID: <code>docs/_getting-started/concorde-outside</code>. Keywords: Concorde, supersoniks, docs/_getting-started/concorde-outside, concorde-outside, Installation, guide, yarn ai:sync. URL: <a href="https://concorde.supersoniks.org/crawl/docs/_getting-started/concorde-outside.html">https://concorde.supersoniks.org/crawl/docs/_getting-started/concorde-outside.html</a>.</span></p>
19
19
  <h1 id="installation">Installation</h1>
20
- <sonic-alert status="info" label="Recommended — use the starter" background>
21
- <p>For almost all new projects, use <a href="https://www.npmjs.com/package/@supersoniks/create-concorde-ts-starter">create-concorde-ts-starter</a></p>
22
- <p>You get Vite + TypeScript + Lit + Tailwind, an example component, <code>npx concorde enable-short-paths</code> ready to run, and <code>yarn ai:sync</code> for <a href="./ai-agents.html#ai-agents">AI agent skills</a> (<code>AGENTS.md</code>, Cursor / JetBrains rules) without extra setup.</p>
20
+ <sonic-alert status="success" label="Recommended — use the starter" size="xl" background>
21
+ <p><strong>For almost all new projects, use <a href="https://www.npmjs.com/package/@supersoniks/create-concorde-ts-starter">create-concorde-ts-starter</a>.</strong></p>
22
+ <p>You get Vite + TypeScript + Lit + Tailwind, an example component, <code>npx concorde enable-short-paths</code> ready to run, and <code>yarn ai:sync</code> for <a href="./ai-agents.html#ai-agents">AI agent skills</a> (<code>AGENTS.md</code>, Cursor / JetBrains rules) without extra setup.</p>
23
23
  </sonic-alert>
24
24
 
25
25
  <h2 id="starter">Starter</h2>
@@ -179,10 +179,10 @@ data-keyboard-nav sur le champ et les items (flèches haut / bas).</pre>
179
179
  <section id="core-components-ui-form-input-input" data-doc-id="core/components/ui/form/input/input">
180
180
  <h2><a href="../core/components/ui/form/input/input.html">Input</a></h2>
181
181
  <p><strong>Doc ID:</strong> <code>core/components/ui/form/input/input</code> · <a href="../core/components/ui/form/input/input.html">full page</a></p>
182
- <p>Native attributes list</p>
182
+ <p>Native attibutes list</p>
183
183
  <pre class="doc-excerpt">Input
184
184
 
185
- Native attributes list
185
+ Native attibutes list
186
186
 
187
187
  Label
188
188
 
@@ -334,10 +334,10 @@ Same mock filter as Checkbox; switches can enable several flags (comma-separated
334
334
  <section id="core-components-ui-form-textarea-textarea" data-doc-id="core/components/ui/form/textarea/textarea">
335
335
  <h2><a href="../core/components/ui/form/textarea/textarea.html">Textarea</a></h2>
336
336
  <p><strong>Doc ID:</strong> <code>core/components/ui/form/textarea/textarea</code> · <a href="../core/components/ui/form/textarea/textarea.html">full page</a></p>
337
- <p>Native attributes list</p>
337
+ <p>Native attibutes list</p>
338
338
  <pre class="doc-excerpt">Textarea
339
339
 
340
- Native attributes list
340
+ Native attibutes list
341
341
 
342
342
  Label
343
343
 
package/docs/index.html CHANGED
@@ -1,17 +1,17 @@
1
- <!doctype html>
1
+ <!DOCTYPE html>
2
2
  <html lang="fr">
3
3
  <head>
4
4
  <meta charset="UTF-8" />
5
5
  <link rel="icon" type="image/svg+xml" href="./svg/favicon.svg" />
6
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <meta name="robots" content="noindex, nofollow" />
7
8
  <title>Concorde - A supersonic design system</title>
8
- <link rel="stylesheet" href="https://use.typekit.net/eda3clw.css" />
9
9
  <script src="https://cdn.jsdelivr.net/npm/fuzzysort@2.0.1/fuzzysort.min.js"></script>
10
10
  <!-- <script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
11
11
  -->
12
12
  <script src="https://cdn.jsdelivr.net/npm/marked@13.0.3"></script>
13
- <script type="module" crossorigin src="./assets/index-BnK6OS7w.js"></script>
14
- <link rel="stylesheet" crossorigin href="./assets/index--GpD7R7a.css">
13
+ <script type="module" crossorigin src="./assets/index-D8MVWqY6.js"></script>
14
+ <link rel="stylesheet" crossorigin href="./assets/index-DiD0qYvE.css">
15
15
  </head>
16
16
  <body class="px-6 lg:px-20">
17
17
  <sonic-theme
@@ -84,7 +84,7 @@
84
84
  <div class="min-h-[100vh] pt-3">
85
85
  <docs-page
86
86
  noShadowDom
87
- class="prose max-w-prose block py-8 prose-li:my-[.2em] leading-[1.5] lg:leading-[1.5] prose-h1:font-normal prose-h1:text-[3.25em] prose-code:before:content-none prose-code:after:content-none prose-pre:font-mono"
87
+ class="prose lg:prose-lg max-w-prose block py-8 prose-li:my-[.2em] leading-[1.5] lg:leading-[1.5] prose-h1:font-normal prose-h1:text-[4.2em]"
88
88
  ></docs-page>
89
89
  </div>
90
90
  </div>