@lo-tek/interfaces 0.0.0 → 0.38.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 (456) hide show
  1. package/CHANGELOG.md +3389 -0
  2. package/LICENSE +21 -0
  3. package/README.md +129 -1
  4. package/agent/astro.md +400 -0
  5. package/agent/bundles.md +429 -0
  6. package/agent/datastar.md +409 -0
  7. package/agent/html.md +388 -0
  8. package/agent/react.md +440 -0
  9. package/agent/templates.md +472 -0
  10. package/core/lotek-core.wasm +0 -0
  11. package/core/lotek.wasm +0 -0
  12. package/dist/cli.d.ts +12 -0
  13. package/dist/cli.d.ts.map +1 -0
  14. package/dist/cli.js +14 -0
  15. package/dist/cli.js.map +1 -0
  16. package/dist/components/css/accordion/accordion.d.ts +37 -0
  17. package/dist/components/css/accordion/accordion.d.ts.map +1 -0
  18. package/dist/components/css/accordion/accordion.js +31 -0
  19. package/dist/components/css/accordion/accordion.js.map +1 -0
  20. package/dist/components/css/alert/alert.d.ts +35 -0
  21. package/dist/components/css/alert/alert.d.ts.map +1 -0
  22. package/dist/components/css/alert/alert.js +29 -0
  23. package/dist/components/css/alert/alert.js.map +1 -0
  24. package/dist/components/css/avatar/avatar.d.ts +40 -0
  25. package/dist/components/css/avatar/avatar.d.ts.map +1 -0
  26. package/dist/components/css/avatar/avatar.js +30 -0
  27. package/dist/components/css/avatar/avatar.js.map +1 -0
  28. package/dist/components/css/badge/badge.d.ts +24 -0
  29. package/dist/components/css/badge/badge.d.ts.map +1 -0
  30. package/dist/components/css/badge/badge.js +24 -0
  31. package/dist/components/css/badge/badge.js.map +1 -0
  32. package/dist/components/css/breadcrumbs/breadcrumbs.d.ts +26 -0
  33. package/dist/components/css/breadcrumbs/breadcrumbs.d.ts.map +1 -0
  34. package/dist/components/css/breadcrumbs/breadcrumbs.js +24 -0
  35. package/dist/components/css/breadcrumbs/breadcrumbs.js.map +1 -0
  36. package/dist/components/css/button/button.d.ts +26 -0
  37. package/dist/components/css/button/button.d.ts.map +1 -0
  38. package/dist/components/css/button/button.js +25 -0
  39. package/dist/components/css/button/button.js.map +1 -0
  40. package/dist/components/css/card/card.d.ts +36 -0
  41. package/dist/components/css/card/card.d.ts.map +1 -0
  42. package/dist/components/css/card/card.js +28 -0
  43. package/dist/components/css/card/card.js.map +1 -0
  44. package/dist/components/css/checkbox/checkbox.d.ts +32 -0
  45. package/dist/components/css/checkbox/checkbox.d.ts.map +1 -0
  46. package/dist/components/css/checkbox/checkbox.js +27 -0
  47. package/dist/components/css/checkbox/checkbox.js.map +1 -0
  48. package/dist/components/css/divider/divider.d.ts +29 -0
  49. package/dist/components/css/divider/divider.d.ts.map +1 -0
  50. package/dist/components/css/divider/divider.js +23 -0
  51. package/dist/components/css/divider/divider.js.map +1 -0
  52. package/dist/components/css/error-text/error-text.d.ts +24 -0
  53. package/dist/components/css/error-text/error-text.d.ts.map +1 -0
  54. package/dist/components/css/error-text/error-text.js +18 -0
  55. package/dist/components/css/error-text/error-text.js.map +1 -0
  56. package/dist/components/css/fieldset/fieldset.d.ts +55 -0
  57. package/dist/components/css/fieldset/fieldset.d.ts.map +1 -0
  58. package/dist/components/css/fieldset/fieldset.js +39 -0
  59. package/dist/components/css/fieldset/fieldset.js.map +1 -0
  60. package/dist/components/css/file-upload/file-upload.d.ts +41 -0
  61. package/dist/components/css/file-upload/file-upload.d.ts.map +1 -0
  62. package/dist/components/css/file-upload/file-upload.js +32 -0
  63. package/dist/components/css/file-upload/file-upload.js.map +1 -0
  64. package/dist/components/css/heading/heading.d.ts +29 -0
  65. package/dist/components/css/heading/heading.d.ts.map +1 -0
  66. package/dist/components/css/heading/heading.js +23 -0
  67. package/dist/components/css/heading/heading.js.map +1 -0
  68. package/dist/components/css/help-text/help-text.d.ts +24 -0
  69. package/dist/components/css/help-text/help-text.d.ts.map +1 -0
  70. package/dist/components/css/help-text/help-text.js +23 -0
  71. package/dist/components/css/help-text/help-text.js.map +1 -0
  72. package/dist/components/css/icon/icon.d.ts +34 -0
  73. package/dist/components/css/icon/icon.d.ts.map +1 -0
  74. package/dist/components/css/icon/icon.js +25 -0
  75. package/dist/components/css/icon/icon.js.map +1 -0
  76. package/dist/components/css/input/input.d.ts +40 -0
  77. package/dist/components/css/input/input.d.ts.map +1 -0
  78. package/dist/components/css/input/input.js +45 -0
  79. package/dist/components/css/input/input.js.map +1 -0
  80. package/dist/components/css/label/label.d.ts +33 -0
  81. package/dist/components/css/label/label.d.ts.map +1 -0
  82. package/dist/components/css/label/label.js +23 -0
  83. package/dist/components/css/label/label.js.map +1 -0
  84. package/dist/components/css/link/link.d.ts +28 -0
  85. package/dist/components/css/link/link.d.ts.map +1 -0
  86. package/dist/components/css/link/link.js +20 -0
  87. package/dist/components/css/link/link.js.map +1 -0
  88. package/dist/components/css/list/list.d.ts +31 -0
  89. package/dist/components/css/list/list.d.ts.map +1 -0
  90. package/dist/components/css/list/list.js +25 -0
  91. package/dist/components/css/list/list.js.map +1 -0
  92. package/dist/components/css/pagination/pagination.d.ts +27 -0
  93. package/dist/components/css/pagination/pagination.d.ts.map +1 -0
  94. package/dist/components/css/pagination/pagination.js +25 -0
  95. package/dist/components/css/pagination/pagination.js.map +1 -0
  96. package/dist/components/css/paragraph/paragraph.d.ts +36 -0
  97. package/dist/components/css/paragraph/paragraph.d.ts.map +1 -0
  98. package/dist/components/css/paragraph/paragraph.js +26 -0
  99. package/dist/components/css/paragraph/paragraph.js.map +1 -0
  100. package/dist/components/css/progress/progress.d.ts +53 -0
  101. package/dist/components/css/progress/progress.d.ts.map +1 -0
  102. package/dist/components/css/progress/progress.js +38 -0
  103. package/dist/components/css/progress/progress.js.map +1 -0
  104. package/dist/components/css/radio/radio.d.ts +32 -0
  105. package/dist/components/css/radio/radio.d.ts.map +1 -0
  106. package/dist/components/css/radio/radio.js +27 -0
  107. package/dist/components/css/radio/radio.js.map +1 -0
  108. package/dist/components/css/search/search.d.ts +34 -0
  109. package/dist/components/css/search/search.d.ts.map +1 -0
  110. package/dist/components/css/search/search.js +32 -0
  111. package/dist/components/css/search/search.js.map +1 -0
  112. package/dist/components/css/select/select.d.ts +40 -0
  113. package/dist/components/css/select/select.d.ts.map +1 -0
  114. package/dist/components/css/select/select.js +31 -0
  115. package/dist/components/css/select/select.js.map +1 -0
  116. package/dist/components/css/shared.d.ts +90 -0
  117. package/dist/components/css/shared.d.ts.map +1 -0
  118. package/dist/components/css/shared.js +167 -0
  119. package/dist/components/css/shared.js.map +1 -0
  120. package/dist/components/css/skeleton/skeleton.d.ts +29 -0
  121. package/dist/components/css/skeleton/skeleton.d.ts.map +1 -0
  122. package/dist/components/css/skeleton/skeleton.js +23 -0
  123. package/dist/components/css/skeleton/skeleton.js.map +1 -0
  124. package/dist/components/css/skip-link/skip-link.d.ts +18 -0
  125. package/dist/components/css/skip-link/skip-link.d.ts.map +1 -0
  126. package/dist/components/css/skip-link/skip-link.js +16 -0
  127. package/dist/components/css/skip-link/skip-link.js.map +1 -0
  128. package/dist/components/css/spinner/spinner.d.ts +33 -0
  129. package/dist/components/css/spinner/spinner.d.ts.map +1 -0
  130. package/dist/components/css/spinner/spinner.js +25 -0
  131. package/dist/components/css/spinner/spinner.js.map +1 -0
  132. package/dist/components/css/sr-only/sr-only.d.ts +17 -0
  133. package/dist/components/css/sr-only/sr-only.d.ts.map +1 -0
  134. package/dist/components/css/sr-only/sr-only.js +15 -0
  135. package/dist/components/css/sr-only/sr-only.js.map +1 -0
  136. package/dist/components/css/switch/switch.d.ts +37 -0
  137. package/dist/components/css/switch/switch.d.ts.map +1 -0
  138. package/dist/components/css/switch/switch.js +29 -0
  139. package/dist/components/css/switch/switch.js.map +1 -0
  140. package/dist/components/css/table/table.d.ts +76 -0
  141. package/dist/components/css/table/table.d.ts.map +1 -0
  142. package/dist/components/css/table/table.js +59 -0
  143. package/dist/components/css/table/table.js.map +1 -0
  144. package/dist/components/css/tag/tag.d.ts +35 -0
  145. package/dist/components/css/tag/tag.d.ts.map +1 -0
  146. package/dist/components/css/tag/tag.js +27 -0
  147. package/dist/components/css/tag/tag.js.map +1 -0
  148. package/dist/components/css/textarea/textarea.d.ts +23 -0
  149. package/dist/components/css/textarea/textarea.d.ts.map +1 -0
  150. package/dist/components/css/textarea/textarea.js +18 -0
  151. package/dist/components/css/textarea/textarea.js.map +1 -0
  152. package/dist/components/css/toggle-group/toggle-group.d.ts +31 -0
  153. package/dist/components/css/toggle-group/toggle-group.d.ts.map +1 -0
  154. package/dist/components/css/toggle-group/toggle-group.js +29 -0
  155. package/dist/components/css/toggle-group/toggle-group.js.map +1 -0
  156. package/dist/components/css/tooltip/tooltip.d.ts +31 -0
  157. package/dist/components/css/tooltip/tooltip.d.ts.map +1 -0
  158. package/dist/components/css/tooltip/tooltip.js +29 -0
  159. package/dist/components/css/tooltip/tooltip.js.map +1 -0
  160. package/dist/components/default-texts.d.ts +41 -0
  161. package/dist/components/default-texts.d.ts.map +1 -0
  162. package/dist/components/default-texts.js +41 -0
  163. package/dist/components/default-texts.js.map +1 -0
  164. package/dist/components/events.d.ts +77 -0
  165. package/dist/components/events.d.ts.map +1 -0
  166. package/dist/components/events.js +3 -0
  167. package/dist/components/events.js.map +1 -0
  168. package/dist/components/frame/dialog/dialog.d.ts +122 -0
  169. package/dist/components/frame/dialog/dialog.d.ts.map +1 -0
  170. package/dist/components/frame/dialog/dialog.js +112 -0
  171. package/dist/components/frame/dialog/dialog.js.map +1 -0
  172. package/dist/components/frame/dialog/lt-dialog.d.ts +104 -0
  173. package/dist/components/frame/dialog/lt-dialog.d.ts.map +1 -0
  174. package/dist/components/frame/dialog/lt-dialog.js +434 -0
  175. package/dist/components/frame/dialog/lt-dialog.js.map +1 -0
  176. package/dist/components/frame/error-summary/error-summary.d.ts +53 -0
  177. package/dist/components/frame/error-summary/error-summary.d.ts.map +1 -0
  178. package/dist/components/frame/error-summary/error-summary.js +54 -0
  179. package/dist/components/frame/error-summary/error-summary.js.map +1 -0
  180. package/dist/components/frame/error-summary/lt-error-summary.d.ts +93 -0
  181. package/dist/components/frame/error-summary/lt-error-summary.d.ts.map +1 -0
  182. package/dist/components/frame/error-summary/lt-error-summary.js +408 -0
  183. package/dist/components/frame/error-summary/lt-error-summary.js.map +1 -0
  184. package/dist/components/frame/field/field-core.d.ts +92 -0
  185. package/dist/components/frame/field/field-core.d.ts.map +1 -0
  186. package/dist/components/frame/field/field-core.js +63 -0
  187. package/dist/components/frame/field/field-core.js.map +1 -0
  188. package/dist/components/frame/field/lt-field.d.ts +173 -0
  189. package/dist/components/frame/field/lt-field.d.ts.map +1 -0
  190. package/dist/components/frame/field/lt-field.js +600 -0
  191. package/dist/components/frame/field/lt-field.js.map +1 -0
  192. package/dist/components/frame/popover/lt-popover.d.ts +136 -0
  193. package/dist/components/frame/popover/lt-popover.d.ts.map +1 -0
  194. package/dist/components/frame/popover/lt-popover.js +520 -0
  195. package/dist/components/frame/popover/lt-popover.js.map +1 -0
  196. package/dist/components/frame/popover/popover.d.ts +49 -0
  197. package/dist/components/frame/popover/popover.d.ts.map +1 -0
  198. package/dist/components/frame/popover/popover.js +64 -0
  199. package/dist/components/frame/popover/popover.js.map +1 -0
  200. package/dist/components/frame/session-timeout/lt-session-timeout.d.ts +198 -0
  201. package/dist/components/frame/session-timeout/lt-session-timeout.d.ts.map +1 -0
  202. package/dist/components/frame/session-timeout/lt-session-timeout.js +610 -0
  203. package/dist/components/frame/session-timeout/lt-session-timeout.js.map +1 -0
  204. package/dist/components/frame/session-timeout/session-timeout.d.ts +113 -0
  205. package/dist/components/frame/session-timeout/session-timeout.d.ts.map +1 -0
  206. package/dist/components/frame/session-timeout/session-timeout.js +101 -0
  207. package/dist/components/frame/session-timeout/session-timeout.js.map +1 -0
  208. package/dist/components/frame/suggestion/lt-suggestion.d.ts +367 -0
  209. package/dist/components/frame/suggestion/lt-suggestion.d.ts.map +1 -0
  210. package/dist/components/frame/suggestion/lt-suggestion.js +1171 -0
  211. package/dist/components/frame/suggestion/lt-suggestion.js.map +1 -0
  212. package/dist/components/frame/suggestion/suggestion.d.ts +143 -0
  213. package/dist/components/frame/suggestion/suggestion.d.ts.map +1 -0
  214. package/dist/components/frame/suggestion/suggestion.js +127 -0
  215. package/dist/components/frame/suggestion/suggestion.js.map +1 -0
  216. package/dist/components/frame/tabs/lt-tabs.d.ts +426 -0
  217. package/dist/components/frame/tabs/lt-tabs.d.ts.map +1 -0
  218. package/dist/components/frame/tabs/lt-tabs.js +1265 -0
  219. package/dist/components/frame/tabs/lt-tabs.js.map +1 -0
  220. package/dist/components/frame/tabs/tabs.d.ts +112 -0
  221. package/dist/components/frame/tabs/tabs.d.ts.map +1 -0
  222. package/dist/components/frame/tabs/tabs.js +107 -0
  223. package/dist/components/frame/tabs/tabs.js.map +1 -0
  224. package/dist/components/host-element.d.ts +184 -0
  225. package/dist/components/host-element.d.ts.map +1 -0
  226. package/dist/components/host-element.js +440 -0
  227. package/dist/components/host-element.js.map +1 -0
  228. package/dist/components/standalone/connection-status/connection-status.d.ts +32 -0
  229. package/dist/components/standalone/connection-status/connection-status.d.ts.map +1 -0
  230. package/dist/components/standalone/connection-status/connection-status.js +26 -0
  231. package/dist/components/standalone/connection-status/connection-status.js.map +1 -0
  232. package/dist/components/standalone/connection-status/lt-connection-status.d.ts +86 -0
  233. package/dist/components/standalone/connection-status/lt-connection-status.d.ts.map +1 -0
  234. package/dist/components/standalone/connection-status/lt-connection-status.js +240 -0
  235. package/dist/components/standalone/connection-status/lt-connection-status.js.map +1 -0
  236. package/dist/components/standalone/toast/lt-toast.d.ts +109 -0
  237. package/dist/components/standalone/toast/lt-toast.d.ts.map +1 -0
  238. package/dist/components/standalone/toast/lt-toast.js +256 -0
  239. package/dist/components/standalone/toast/lt-toast.js.map +1 -0
  240. package/dist/components/standalone/toast/toast.d.ts +52 -0
  241. package/dist/components/standalone/toast/toast.d.ts.map +1 -0
  242. package/dist/components/standalone/toast/toast.js +42 -0
  243. package/dist/components/standalone/toast/toast.js.map +1 -0
  244. package/dist/diagnostics/core.d.ts +171 -0
  245. package/dist/diagnostics/core.d.ts.map +1 -0
  246. package/dist/diagnostics/core.js +84 -0
  247. package/dist/diagnostics/core.js.map +1 -0
  248. package/dist/diagnostics/default-core.d.ts +10 -0
  249. package/dist/diagnostics/default-core.d.ts.map +1 -0
  250. package/dist/diagnostics/default-core.js +72 -0
  251. package/dist/diagnostics/default-core.js.map +1 -0
  252. package/dist/diagnostics/index.d.ts +84 -0
  253. package/dist/diagnostics/index.d.ts.map +1 -0
  254. package/dist/diagnostics/index.js +106 -0
  255. package/dist/diagnostics/index.js.map +1 -0
  256. package/dist/dom.d.ts +55 -0
  257. package/dist/dom.d.ts.map +1 -0
  258. package/dist/dom.js +162 -0
  259. package/dist/dom.js.map +1 -0
  260. package/dist/index.d.ts +97 -0
  261. package/dist/index.d.ts.map +1 -0
  262. package/dist/index.js +58 -0
  263. package/dist/index.js.map +1 -0
  264. package/dist/jsx/react.d.ts +180 -0
  265. package/dist/jsx/react.d.ts.map +1 -0
  266. package/dist/jsx/react.js +2 -0
  267. package/dist/jsx/react.js.map +1 -0
  268. package/dist/lotek.css +3617 -0
  269. package/dist/lt.d.ts +325 -0
  270. package/dist/lt.d.ts.map +1 -0
  271. package/dist/lt.js +183 -0
  272. package/dist/lt.js.map +1 -0
  273. package/dist/react.d.ts +494 -0
  274. package/dist/react.d.ts.map +1 -0
  275. package/dist/react.js +296 -0
  276. package/dist/react.js.map +1 -0
  277. package/dist/register.d.ts +17 -0
  278. package/dist/register.d.ts.map +1 -0
  279. package/dist/register.js +35 -0
  280. package/dist/register.js.map +1 -0
  281. package/dist/tokens/color.d.ts +43 -0
  282. package/dist/tokens/color.d.ts.map +1 -0
  283. package/dist/tokens/color.js +123 -0
  284. package/dist/tokens/color.js.map +1 -0
  285. package/dist/tokens/contract.d.ts +18 -0
  286. package/dist/tokens/contract.d.ts.map +1 -0
  287. package/dist/tokens/contract.js +18 -0
  288. package/dist/tokens/contract.js.map +1 -0
  289. package/dist/tokens/matrix-cells.d.ts +30 -0
  290. package/dist/tokens/matrix-cells.d.ts.map +1 -0
  291. package/dist/tokens/matrix-cells.js +273 -0
  292. package/dist/tokens/matrix-cells.js.map +1 -0
  293. package/dist/tokens/matrix.d.ts +18 -0
  294. package/dist/tokens/matrix.d.ts.map +1 -0
  295. package/dist/tokens/matrix.js +21 -0
  296. package/dist/tokens/matrix.js.map +1 -0
  297. package/dist/tokens/theme-check.d.ts +42 -0
  298. package/dist/tokens/theme-check.d.ts.map +1 -0
  299. package/dist/tokens/theme-check.js +10 -0
  300. package/dist/tokens/theme-check.js.map +1 -0
  301. package/dist/tokens/theme.d.ts +94 -0
  302. package/dist/tokens/theme.d.ts.map +1 -0
  303. package/dist/tokens/theme.js +14 -0
  304. package/dist/tokens/theme.js.map +1 -0
  305. package/dist/tokens/tokens.d.ts +122 -0
  306. package/dist/tokens/tokens.d.ts.map +1 -0
  307. package/dist/tokens/tokens.js +158 -0
  308. package/dist/tokens/tokens.js.map +1 -0
  309. package/dist/vocabulary/classes.d.ts +3 -0
  310. package/dist/vocabulary/classes.d.ts.map +1 -0
  311. package/dist/vocabulary/classes.js +1354 -0
  312. package/dist/vocabulary/classes.js.map +1 -0
  313. package/dist/vocabulary/elements.d.ts +3 -0
  314. package/dist/vocabulary/elements.d.ts.map +1 -0
  315. package/dist/vocabulary/elements.js +490 -0
  316. package/dist/vocabulary/elements.js.map +1 -0
  317. package/dist/vocabulary/types.d.ts +229 -0
  318. package/dist/vocabulary/types.d.ts.map +1 -0
  319. package/dist/vocabulary/types.js +11 -0
  320. package/dist/vocabulary/types.js.map +1 -0
  321. package/dist/wasi-host.d.ts +24 -0
  322. package/dist/wasi-host.d.ts.map +1 -0
  323. package/dist/wasi-host.js +140 -0
  324. package/dist/wasi-host.js.map +1 -0
  325. package/live-templates.xml +63 -0
  326. package/manifest/files.json +373 -0
  327. package/manifest/manifest.json +5090 -0
  328. package/manifest/manifest.schema.json +586 -0
  329. package/package.json +399 -5
  330. package/src/cli.ts +21 -0
  331. package/src/components/css/accordion/accordion.css +102 -0
  332. package/src/components/css/accordion/accordion.ts +50 -0
  333. package/src/components/css/alert/alert.css +53 -0
  334. package/src/components/css/alert/alert.ts +48 -0
  335. package/src/components/css/avatar/avatar.css +96 -0
  336. package/src/components/css/avatar/avatar.ts +57 -0
  337. package/src/components/css/badge/badge.css +42 -0
  338. package/src/components/css/badge/badge.ts +43 -0
  339. package/src/components/css/breadcrumbs/breadcrumbs.css +62 -0
  340. package/src/components/css/breadcrumbs/breadcrumbs.ts +30 -0
  341. package/src/components/css/button/button.css +128 -0
  342. package/src/components/css/button/button.ts +44 -0
  343. package/src/components/css/card/card.css +65 -0
  344. package/src/components/css/card/card.ts +50 -0
  345. package/src/components/css/checkbox/checkbox.css +114 -0
  346. package/src/components/css/checkbox/checkbox.ts +50 -0
  347. package/src/components/css/divider/divider.css +38 -0
  348. package/src/components/css/divider/divider.ts +42 -0
  349. package/src/components/css/error-text/error-text.css +21 -0
  350. package/src/components/css/error-text/error-text.ts +37 -0
  351. package/src/components/css/fieldset/fieldset.css +72 -0
  352. package/src/components/css/fieldset/fieldset.ts +87 -0
  353. package/src/components/css/file-upload/file-upload.css +102 -0
  354. package/src/components/css/file-upload/file-upload.ts +65 -0
  355. package/src/components/css/heading/heading.css +33 -0
  356. package/src/components/css/heading/heading.ts +42 -0
  357. package/src/components/css/help-text/help-text.css +24 -0
  358. package/src/components/css/help-text/help-text.ts +42 -0
  359. package/src/components/css/icon/icon.css +20 -0
  360. package/src/components/css/icon/icon.ts +44 -0
  361. package/src/components/css/input/input.css +145 -0
  362. package/src/components/css/input/input.ts +77 -0
  363. package/src/components/css/label/label.css +42 -0
  364. package/src/components/css/label/label.ts +51 -0
  365. package/src/components/css/link/link.css +38 -0
  366. package/src/components/css/link/link.ts +38 -0
  367. package/src/components/css/list/list.css +53 -0
  368. package/src/components/css/list/list.ts +44 -0
  369. package/src/components/css/pagination/pagination.css +95 -0
  370. package/src/components/css/pagination/pagination.ts +33 -0
  371. package/src/components/css/paragraph/paragraph.css +31 -0
  372. package/src/components/css/paragraph/paragraph.ts +53 -0
  373. package/src/components/css/progress/progress.css +161 -0
  374. package/src/components/css/progress/progress.ts +78 -0
  375. package/src/components/css/radio/radio.css +94 -0
  376. package/src/components/css/radio/radio.ts +50 -0
  377. package/src/components/css/search/search.css +50 -0
  378. package/src/components/css/search/search.ts +56 -0
  379. package/src/components/css/select/select.css +321 -0
  380. package/src/components/css/select/select.ts +63 -0
  381. package/src/components/css/shared.ts +199 -0
  382. package/src/components/css/skeleton/skeleton.css +62 -0
  383. package/src/components/css/skeleton/skeleton.ts +43 -0
  384. package/src/components/css/skip-link/skip-link.css +41 -0
  385. package/src/components/css/skip-link/skip-link.ts +22 -0
  386. package/src/components/css/spinner/spinner.css +48 -0
  387. package/src/components/css/spinner/spinner.ts +48 -0
  388. package/src/components/css/sr-only/sr-only.css +16 -0
  389. package/src/components/css/sr-only/sr-only.ts +21 -0
  390. package/src/components/css/switch/switch.css +105 -0
  391. package/src/components/css/switch/switch.ts +50 -0
  392. package/src/components/css/table/table.css +159 -0
  393. package/src/components/css/table/table.ts +107 -0
  394. package/src/components/css/tag/tag.css +58 -0
  395. package/src/components/css/tag/tag.ts +49 -0
  396. package/src/components/css/textarea/textarea.css +83 -0
  397. package/src/components/css/textarea/textarea.ts +40 -0
  398. package/src/components/css/toggle-group/toggle-group.css +92 -0
  399. package/src/components/css/toggle-group/toggle-group.ts +37 -0
  400. package/src/components/css/tooltip/tooltip.css +89 -0
  401. package/src/components/css/tooltip/tooltip.ts +37 -0
  402. package/src/components/default-texts.ts +41 -0
  403. package/src/components/events.ts +68 -0
  404. package/src/components/frame/dialog/dialog.css +306 -0
  405. package/src/components/frame/dialog/dialog.ts +166 -0
  406. package/src/components/frame/dialog/lt-dialog.ts +513 -0
  407. package/src/components/frame/error-summary/error-summary.css +47 -0
  408. package/src/components/frame/error-summary/error-summary.ts +90 -0
  409. package/src/components/frame/error-summary/lt-error-summary.ts +458 -0
  410. package/src/components/frame/field/field-core.ts +152 -0
  411. package/src/components/frame/field/field.css +17 -0
  412. package/src/components/frame/field/lt-field.ts +790 -0
  413. package/src/components/frame/popover/lt-popover.ts +586 -0
  414. package/src/components/frame/popover/popover.css +50 -0
  415. package/src/components/frame/popover/popover.ts +102 -0
  416. package/src/components/frame/session-timeout/lt-session-timeout.ts +715 -0
  417. package/src/components/frame/session-timeout/session-timeout.css +50 -0
  418. package/src/components/frame/session-timeout/session-timeout.ts +156 -0
  419. package/src/components/frame/suggestion/lt-suggestion.ts +1379 -0
  420. package/src/components/frame/suggestion/suggestion.css +132 -0
  421. package/src/components/frame/suggestion/suggestion.ts +172 -0
  422. package/src/components/frame/tabs/lt-tabs.ts +1395 -0
  423. package/src/components/frame/tabs/tabs.css +128 -0
  424. package/src/components/frame/tabs/tabs.ts +188 -0
  425. package/src/components/host-element.ts +493 -0
  426. package/src/components/standalone/connection-status/connection-status.css +41 -0
  427. package/src/components/standalone/connection-status/connection-status.ts +47 -0
  428. package/src/components/standalone/connection-status/lt-connection-status.ts +268 -0
  429. package/src/components/standalone/toast/lt-toast.ts +300 -0
  430. package/src/components/standalone/toast/toast.css +78 -0
  431. package/src/components/standalone/toast/toast.ts +70 -0
  432. package/src/diagnostics/core.ts +227 -0
  433. package/src/diagnostics/default-core.ts +81 -0
  434. package/src/diagnostics/index.ts +150 -0
  435. package/src/dom.ts +185 -0
  436. package/src/index.ts +218 -0
  437. package/src/jsx/react.ts +212 -0
  438. package/src/lt.ts +192 -0
  439. package/src/react.ts +411 -0
  440. package/src/register.ts +43 -0
  441. package/src/tailwind/tailwind.css +169 -0
  442. package/src/tokens/boundary.css +104 -0
  443. package/src/tokens/color-contract.json +231 -0
  444. package/src/tokens/color.ts +150 -0
  445. package/src/tokens/contract.ts +24 -0
  446. package/src/tokens/matrix-cells.ts +375 -0
  447. package/src/tokens/matrix.ts +32 -0
  448. package/src/tokens/theme-check.ts +51 -0
  449. package/src/tokens/theme.ts +104 -0
  450. package/src/tokens/tokens.css +569 -0
  451. package/src/tokens/tokens.ts +223 -0
  452. package/src/vocabulary/classes.ts +1356 -0
  453. package/src/vocabulary/elements.ts +492 -0
  454. package/src/vocabulary/types.ts +228 -0
  455. package/src/wasi-host.ts +155 -0
  456. package/web-types.json +800 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lt-tabs.js","sourceRoot":"","sources":["../../../../src/components/frame/tabs/lt-tabs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ export declare const TABS_LIST_CLASS: "lt-tabs__list";
2
+ export declare const TABS_PANEL_CLASS: "lt-tabs__panel";
3
+ export type TabsOptions = {
4
+ /**
5
+ * The shared id stem. The panels become `${id}-${key}`, and the headings in
6
+ * them `${id}-${key}-heading`.
7
+ */
8
+ id: string;
9
+ /**
10
+ * One key per tab, from the data, such as `["application", "attachments"]`.
11
+ * The key gives the panel its id, and the link points to it. An index is
12
+ * not a key: if the server inserts a tab first, the same index points to
13
+ * another panel. An empty key, whitespace and two identical keys throw.
14
+ */
15
+ keys: string[];
16
+ /**
17
+ * What the tabs choose between. Becomes `aria-label` on the tab list, which
18
+ * must have a name. Empty, or only whitespace, throws.
19
+ */
20
+ label: string;
21
+ };
22
+ export type TabsAttributes = {
23
+ /** The tab list, a `<ul>`. */
24
+ list: {
25
+ class: typeof TABS_LIST_CLASS;
26
+ "aria-label": string;
27
+ };
28
+ /** Each tab, a link to its panel. */
29
+ tabs: Array<{
30
+ href: string;
31
+ }>;
32
+ /** Each panel, with the id the link points to. */
33
+ panels: Array<{
34
+ id: string;
35
+ class: typeof TABS_PANEL_CLASS;
36
+ }>;
37
+ /** The heading in each panel. */
38
+ headings: Array<{
39
+ id: string;
40
+ }>;
41
+ };
42
+ /**
43
+ * The attributes for a tab list where the tabs are links to the panels.
44
+ *
45
+ * Only links, ids and classes. Without JavaScript the tab list is then a
46
+ * plain list of links, and the panels follow one another: a table of
47
+ * contents that works for everyone. The roles, which tab is selected and
48
+ * which panels are hidden are written by `<lt-tabs>`. Had they been here, the
49
+ * markup without JavaScript would have said "tab" about a link that does not
50
+ * behave like one, and hidden the panels.
51
+ *
52
+ * The first tab is selected when the page loads. Another one comes from the
53
+ * address, such as `#case-attachments`, or from `selected` and `select()` on
54
+ * `<lt-tabs>`.
55
+ *
56
+ * A React app uses `lt.tabs()` from `@lo-tek/interfaces/react`, which gives
57
+ * the whole state, so React hydrates without mismatches.
58
+ *
59
+ * ```ts
60
+ * const tabs = lt.tabs({ id: "case", keys: ["application", "attachments"], label: "Parts of the case" })
61
+ * ```
62
+ */
63
+ export declare const tabs: (options: TabsOptions) => TabsAttributes;
64
+ export type TabsWithStateOptions = TabsOptions & {
65
+ /** The index of the selected tab. Default: 0. */
66
+ selected?: number;
67
+ };
68
+ export type TabsWithStateAttributes = {
69
+ list: {
70
+ class: typeof TABS_LIST_CLASS;
71
+ role: "tablist";
72
+ "aria-label": string;
73
+ };
74
+ item: {
75
+ role: "presentation";
76
+ };
77
+ tabs: Array<{
78
+ id: string;
79
+ href: string;
80
+ role: "tab";
81
+ "aria-selected": "true" | "false";
82
+ "aria-controls": string;
83
+ tabindex: "0" | "-1";
84
+ }>;
85
+ panels: Array<{
86
+ id: string;
87
+ class: typeof TABS_PANEL_CLASS;
88
+ role: "tabpanel";
89
+ "aria-labelledby": string;
90
+ tabindex?: "0";
91
+ hidden?: true;
92
+ }>;
93
+ };
94
+ /**
95
+ * The whole state, as `<lt-tabs>` would have written it. For React.
96
+ *
97
+ * React compares the attributes on the elements it renders with what is in
98
+ * the page, and reports a mismatch for every attribute it did not render
99
+ * itself. When the web component wrote the roles and the selection before
100
+ * React hydrated, that gave one mismatch per element. Here everything is
101
+ * there from the start, so the web component has nothing to write.
102
+ *
103
+ * The links get their id from the server, and each panel points to its link,
104
+ * as the APG does. An id the server writes is stable; it is an id the web
105
+ * component creates itself that makes an update replace the element.
106
+ *
107
+ * `hidden` is boolean: React 19 writes `hidden="until-found"` as
108
+ * `hidden=""`. Find in page therefore does not open a hidden panel in a React
109
+ * app.
110
+ */
111
+ export declare const tabsWithState: (options: TabsWithStateOptions) => TabsWithStateAttributes;
112
+ //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/frame/tabs/tabs.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,EAAG,eAAwB,CAAA;AACvD,eAAO,MAAM,gBAAgB,EAAG,gBAAyB,CAAA;AAEzD,MAAM,MAAM,WAAW,GAAG;IACxB;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAA;IACV;;;;;OAKG;IACH,IAAI,EAAE,MAAM,EAAE,CAAA;IACd;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,8BAA8B;IAC9B,IAAI,EAAE;QAAE,KAAK,EAAE,OAAO,eAAe,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7D,qCAAqC;IACrC,IAAI,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC7B,kDAAkD;IAClD,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,gBAAgB,CAAA;KAAE,CAAC,CAAA;IAC7D,iCAAiC;IACjC,QAAQ,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChC,CAAA;AA2BD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,IAAI,GAAI,SAAS,WAAW,KAAG,cAU3C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG;IAC/C,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE;QACJ,KAAK,EAAE,OAAO,eAAe,CAAA;QAC7B,IAAI,EAAE,SAAS,CAAA;QACf,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;IACD,IAAI,EAAE;QAAE,IAAI,EAAE,cAAc,CAAA;KAAE,CAAA;IAC9B,IAAI,EAAE,KAAK,CAAC;QACV,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,KAAK,CAAA;QACX,eAAe,EAAE,MAAM,GAAG,OAAO,CAAA;QACjC,eAAe,EAAE,MAAM,CAAA;QACvB,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAA;KACrB,CAAC,CAAA;IACF,MAAM,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,OAAO,gBAAgB,CAAA;QAC9B,IAAI,EAAE,UAAU,CAAA;QAChB,iBAAiB,EAAE,MAAM,CAAA;QACzB,QAAQ,CAAC,EAAE,GAAG,CAAA;QACd,MAAM,CAAC,EAAE,IAAI,CAAA;KACd,CAAC,CAAA;CACH,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,aAAa,GACxB,SAAS,oBAAoB,KAC5B,uBA4CF,CAAA"}
@@ -0,0 +1,107 @@
1
+ import { attributes, checkedKeys, idOrFallback } from "../../css/shared.js";
2
+ export const TABS_LIST_CLASS = "lt-tabs__list";
3
+ export const TABS_PANEL_CLASS = "lt-tabs__panel";
4
+ /** What both versions share: the keys checked, and the ids made from them. */
5
+ function prepare(builder, options) {
6
+ // The fallback only matters to callers without a type check.
7
+ const id = idOrFallback(builder, options.id);
8
+ // The stem becomes part of every id, and `aria-controls` splits on
9
+ // whitespace: `"a b"` gave `aria-controls="a b-x"`, which is two ids. The
10
+ // keys throw on the same thing.
11
+ if (/\s/.test(id)) {
12
+ throw new Error(`${builder}: the id "${id}" contains whitespace. It becomes part of every id, and an id cannot contain whitespace.`);
13
+ }
14
+ // Before the keys, as in Kotlin, so the two throw with the same message.
15
+ if (typeof options.label !== "string" || options.label.trim() === "") {
16
+ throw new Error(`${builder}: label is missing or empty. The tab list needs a name that says what the tabs choose between, otherwise the screen reader says only "tab list".`);
17
+ }
18
+ const keys = checkedKeys(builder, options.keys);
19
+ return { id, keys, panelId: (key) => `${id}-${key}` };
20
+ }
21
+ /**
22
+ * The attributes for a tab list where the tabs are links to the panels.
23
+ *
24
+ * Only links, ids and classes. Without JavaScript the tab list is then a
25
+ * plain list of links, and the panels follow one another: a table of
26
+ * contents that works for everyone. The roles, which tab is selected and
27
+ * which panels are hidden are written by `<lt-tabs>`. Had they been here, the
28
+ * markup without JavaScript would have said "tab" about a link that does not
29
+ * behave like one, and hidden the panels.
30
+ *
31
+ * The first tab is selected when the page loads. Another one comes from the
32
+ * address, such as `#case-attachments`, or from `selected` and `select()` on
33
+ * `<lt-tabs>`.
34
+ *
35
+ * A React app uses `lt.tabs()` from `@lo-tek/interfaces/react`, which gives
36
+ * the whole state, so React hydrates without mismatches.
37
+ *
38
+ * ```ts
39
+ * const tabs = lt.tabs({ id: "case", keys: ["application", "attachments"], label: "Parts of the case" })
40
+ * ```
41
+ */
42
+ export const tabs = (options) => {
43
+ const { id, keys, panelId } = prepare("lt.tabs()", options);
44
+ return {
45
+ list: attributes({ class: TABS_LIST_CLASS, "aria-label": options.label }),
46
+ tabs: keys.map((key) => attributes({ href: `#${panelId(key)}` })),
47
+ panels: keys.map((key) => attributes({ id: panelId(key), class: TABS_PANEL_CLASS })),
48
+ headings: keys.map((key) => attributes({ id: `${id}-${key}-heading` })),
49
+ };
50
+ };
51
+ /**
52
+ * The whole state, as `<lt-tabs>` would have written it. For React.
53
+ *
54
+ * React compares the attributes on the elements it renders with what is in
55
+ * the page, and reports a mismatch for every attribute it did not render
56
+ * itself. When the web component wrote the roles and the selection before
57
+ * React hydrated, that gave one mismatch per element. Here everything is
58
+ * there from the start, so the web component has nothing to write.
59
+ *
60
+ * The links get their id from the server, and each panel points to its link,
61
+ * as the APG does. An id the server writes is stable; it is an id the web
62
+ * component creates itself that makes an update replace the element.
63
+ *
64
+ * `hidden` is boolean: React 19 writes `hidden="until-found"` as
65
+ * `hidden=""`. Find in page therefore does not open a hidden panel in a React
66
+ * app.
67
+ */
68
+ export const tabsWithState = (options) => {
69
+ const { id, keys, panelId } = prepare("lt.tabs()", options);
70
+ // If `selected` is out of range, it is corrected here. Otherwise the markup
71
+ // would say something other than what the user sees.
72
+ // A number that is not an integer, such as `NaN` or 1.5, gave no selected
73
+ // tab, every panel hidden and no tab stop.
74
+ const selected = Number.isInteger(options.selected)
75
+ ? options.selected
76
+ : 0;
77
+ const valid = Math.min(Math.max(selected, 0), Math.max(keys.length - 1, 0));
78
+ const tabId = (key) => `${id}-${key}-tab`;
79
+ return {
80
+ list: attributes({
81
+ class: TABS_LIST_CLASS,
82
+ role: "tablist",
83
+ "aria-label": options.label,
84
+ }),
85
+ item: attributes({ role: "presentation" }),
86
+ tabs: keys.map((key, index) => attributes({
87
+ id: tabId(key),
88
+ href: `#${panelId(key)}`,
89
+ role: "tab",
90
+ "aria-selected": (index === valid ? "true" : "false"),
91
+ "aria-controls": panelId(key),
92
+ // Roving tabindex: only the selected tab is a tab stop.
93
+ tabindex: (index === valid ? "0" : "-1"),
94
+ })),
95
+ panels: keys.map((key, index) => attributes({
96
+ id: panelId(key),
97
+ class: TABS_PANEL_CLASS,
98
+ role: "tabpanel",
99
+ "aria-labelledby": tabId(key),
100
+ // Only the selected panel is a tab stop. A hidden panel that can take
101
+ // focus is an invisible stop for the keyboard.
102
+ tabindex: index === valid ? "0" : undefined,
103
+ hidden: index === valid ? undefined : true,
104
+ })),
105
+ };
106
+ };
107
+ //# sourceMappingURL=tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/frame/tabs/tabs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,184 @@
1
+ /**
2
+ * The base the web components inherit from, and their registration.
3
+ *
4
+ * `HTMLElement` and `customElements` only exist in the browser. A
5
+ * `class X extends HTMLElement` is evaluated when the module loads, so a
6
+ * server that only wanted `lt.button()` from the package stopped with
7
+ * "HTMLElement is not defined" before it got that far. That hit nine of the
8
+ * entry points, the main entry included, and made the package useless in
9
+ * exactly the situation it is built for: the server writing the markup.
10
+ *
11
+ * The fallback is an empty class. It is never used for anything, because
12
+ * without `customElements` nothing is registered, and without registration
13
+ * the browser never creates an instance. It only exists so the module can
14
+ * load.
15
+ */
16
+ export declare const HostElement: {
17
+ new (): HTMLElement;
18
+ prototype: HTMLElement;
19
+ };
20
+ export type { LtEventMap } from "./events.js";
21
+ /**
22
+ * Registers a web component, once, and only in the browser.
23
+ *
24
+ * When `defineLt*` is called from a module that also runs on the server, as
25
+ * in TanStack Start or a server-rendered React app, nothing happens. There is
26
+ * no `customElements` there to register in.
27
+ *
28
+ * A constructor can only be in the registry once. If the class is already
29
+ * there under another name, a subclass is registered:
30
+ * `defineLtToast("app-toast")` followed by `defineLt()` otherwise threw
31
+ * NotSupportedError on `lt-toast`, and the components after it in the list
32
+ * were never registered. With the subclass both names work, and `instanceof`
33
+ * holds for both.
34
+ */
35
+ export declare function defineElement(tagName: string, element: CustomElementConstructor): void;
36
+ /**
37
+ * Sets an attribute, but only when the value actually differs.
38
+ *
39
+ * The components observe the attributes they set themselves, so they can set
40
+ * them back after a patch. Writing a value that is already there counts as a
41
+ * change, so the observer calls itself, writes again, and the microtask queue
42
+ * never empties. The page freezes, and a test run hangs without an error: no
43
+ * stack trace, no assertion, just silence. That is why no test can catch it,
44
+ * and why writes go through one function all the components use.
45
+ *
46
+ * `null` removes the attribute.
47
+ */
48
+ export declare function setAttr(element: Element, name: string, value: string | null | undefined): void;
49
+ /**
50
+ * The attribute a component marks what it wrote with: the names of the
51
+ * attributes on the element whose value is the component's, separated by
52
+ * spaces.
53
+ *
54
+ * Some attributes are both the server's and the component's: `aria-invalid`
55
+ * on a field, `aria-selected` on a tab. To tell the server's word from its
56
+ * own echo, a component remembered the value it wrote, and read anything
57
+ * else as the server's. A server that sent the same value was never seen: a
58
+ * morph does not touch an attribute whose value is already right, and the
59
+ * component took the server's `aria-invalid="true"` for its own and removed
60
+ * it. The mark is what a morph does touch. The server never sends it, so a
61
+ * morph from the server removes it, and an attribute without the mark is the
62
+ * server's, whatever its value. A script that changes the element without a
63
+ * morph leaves the mark, and is seen as before, by the value.
64
+ *
65
+ * Only what differs from the server's word is marked. A value that is the
66
+ * server's has nothing to tell apart, and markup that is already right, as
67
+ * React renders `lt.tabs()` with the state, must not be touched: hydration
68
+ * reports every attribute it did not render.
69
+ */
70
+ export declare const WRITTEN = "data-lt-written";
71
+ /**
72
+ * Marks `name` on `element` as the component's when `mine`, that is, when
73
+ * what the component wrote differs from the server's word, and removes the
74
+ * mark otherwise.
75
+ */
76
+ export declare function markWritten(element: Element, name: string, mine: boolean): void;
77
+ /**
78
+ * Warns when `element` carries the mark before the component has written on
79
+ * it: the mark is in the markup it was given, copied into a template from
80
+ * the browser's developer tools. A morph then never removes it, and the
81
+ * component takes the server's word for its own echo again. Called where the
82
+ * component meets the element for the first time; the check cannot wait, so
83
+ * the warning is not checked again when the page has settled.
84
+ */
85
+ export declare function warnAboutCopiedMark(host: Element, element: Element): void;
86
+ /**
87
+ * Whether the component's mark for `name` is still on `element`: no morph
88
+ * from the server has been there since the component wrote it.
89
+ */
90
+ export declare function stillMarked(element: Element, name: string): boolean;
91
+ /**
92
+ * Turns a boolean attribute on or off, without writing when it is already so.
93
+ *
94
+ * `el.hidden = true` on something already hidden writes the attribute again,
95
+ * and that counts as a change. `toggleAttribute` does not: if the attribute
96
+ * is already as it should be, nothing happens. So it is the only permitted
97
+ * way to `hidden`, `disabled` and the other boolean attributes in a component
98
+ * that observes the attributes it writes.
99
+ *
100
+ * `Boolean(on)` and not `on` alone: with `undefined` as the second argument
101
+ * `toggleAttribute` toggles instead of removing. React 19 writes
102
+ * `el.open = undefined` when a prop goes from `true` to absent, and the
103
+ * setter then put the attribute back: a dialog the user had closed opened
104
+ * again as the app followed along.
105
+ */
106
+ export declare function setFlag(element: Element, name: string, on: boolean): void;
107
+ /**
108
+ * The language nearest the element, or `undefined` when the page does not
109
+ * say.
110
+ *
111
+ * `undefined` gives `Intl` the browser's language. A `lang` that is not a
112
+ * valid language tag makes `Intl` throw, and then the browser's language is
113
+ * better than no text.
114
+ */
115
+ export declare function languageOf(element: Element): string | undefined;
116
+ /**
117
+ * Writes text in an element, but only when the text differs.
118
+ *
119
+ * `textContent` is a `childList` change, and the components observe their
120
+ * children. Writing the same text again counts as a change, and then the
121
+ * observer calls itself.
122
+ *
123
+ * `textContent` is all the text in the subtree joined, so the comparison does
124
+ * not tell `<b>3</b> matches` from `3 matches`. The function is meant for
125
+ * elements the component fills with plain text, such as the match count in
126
+ * the suggestion field.
127
+ */
128
+ export declare function setText(element: Element, text: string): void;
129
+ /** Adds a class, but only when it is not already there. */
130
+ export declare function addClass(element: Element, name: string): void;
131
+ /** An id the component creates itself, when the markup had none. */
132
+ export declare function uniqueId(prefix: string): string;
133
+ /**
134
+ * The id an element should have: the one it has, otherwise the one the
135
+ * component created for that node before. A morph keeps the node and tears
136
+ * the id off, and it gets the same one back, so a screen reader does not
137
+ * follow a reference that changes under it.
138
+ */
139
+ export declare function rememberedId(memory: WeakMap<Element, string>, element: Element, prefix: string): string;
140
+ /**
141
+ * The parts with a role, and those without only when the component set the
142
+ * roles itself.
143
+ *
144
+ * The components fill in roles where the markup came without them: a button
145
+ * in the row becomes a tab, an `<li>` in the list becomes an option. But if
146
+ * the server wrote the roles, an element without a role is something else,
147
+ * such as a "close" button in the row, and must not get a role, an id and
148
+ * `tabindex="-1"` from the component. `roledByHost` holds the roles the
149
+ * component set itself: if every role present was set by the component, the
150
+ * markup is bare, and an element without a role that the server sends later
151
+ * is a new part. The parts are limited to the host, since components inside
152
+ * components are ordinary markup.
153
+ */
154
+ export declare function derivedParts<T extends Element>(host: Element, selector: string, role: string, roledByHost: WeakSet<Element>): T[];
155
+ /**
156
+ * The attribute that gives the state back to the server.
157
+ *
158
+ * By default the components repair what the user has done: the selected tab,
159
+ * the open popover, the expanded suggestion list. A morph tears it away,
160
+ * since none of it was in the HTML the server sent, and the component sets it
161
+ * back. Then no template needs to know the attributes.
162
+ *
163
+ * Sometimes the server should decide: "go on to step 2" is a real thing a
164
+ * server wants to be able to do. With `server-controlled` on the host, the
165
+ * component does not set back what the user did, and each patch decides. It
166
+ * still does the wiring and the keyboard, and what the attribute means for
167
+ * each component is documented in the component.
168
+ *
169
+ * This replaces `data-preserve-attr`, which required the template to copy the
170
+ * name of every attribute the component would touch. One attribute to
171
+ * remember instead of nine, and the default is the right choice almost
172
+ * always.
173
+ *
174
+ * Preserving is also a mechanism of one particular morpher:
175
+ * `data-preserve-attr` is a `data-*` attribute, and such an attribute only
176
+ * means something to the code that reads it. Repair reads the markup, and
177
+ * works whoever does the morphing.
178
+ */
179
+ export declare const SERVER_CONTROLLED: "server-controlled";
180
+ /** Whether the server decides the state in this element. */
181
+ export declare function isServerControlled(element: Element): boolean;
182
+ export declare function warnAboutMarkup(element: Element, message: string, stillBroken: () => boolean): void;
183
+ export declare function whenUpgraded<T extends HTMLElement>(element: Element): Promise<T>;
184
+ //# sourceMappingURL=host-element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-element.d.ts","sourceRoot":"","sources":["../../src/components/host-element.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,eAAO,MAAM,WAAW;;;CAGP,CAAA;AAQjB,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,wBAAwB,GAChC,IAAI,CAgBN;AAYD;;;;;;;;;;;GAWG;AACH,wBAAgB,OAAO,CACrB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B,IAAI,CAMN;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,OAAO,oBAAoB,CAAA;AAExC;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,GACZ,IAAI,CAWN;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAUzE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,GAAG,IAAI,CAEzE;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAwB/D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAE5D;AAED,2DAA2D;AAC3D,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAE7D;AAED,oEAAoE;AACpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,EAChC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,GACb,MAAM,CAQR;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,OAAO,EAC5C,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,GAC5B,CAAC,EAAE,CAQL;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,iBAAiB,EAAG,mBAA4B,CAAA;AAE7D,4DAA4D;AAC5D,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE5D;AA8BD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,OAAO,GACzB,IAAI,CA0BN;AA+ED,wBAAsB,YAAY,CAAC,CAAC,SAAS,WAAW,EACtD,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,CAAC,CAAC,CAuBZ"}