@lo-tek/interfaces 0.0.0-stage → 0.37.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.
- package/CHANGELOG.md +3254 -0
- package/LICENSE +21 -0
- package/README.md +129 -2
- package/agent/astro.md +400 -0
- package/agent/bundles.md +429 -0
- package/agent/datastar.md +409 -0
- package/agent/html.md +388 -0
- package/agent/react.md +440 -0
- package/agent/templates.md +472 -0
- package/core/lotek-core.wasm +0 -0
- package/core/lotek.wasm +0 -0
- package/dist/cli.d.ts +12 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +14 -0
- package/dist/cli.js.map +1 -0
- package/dist/components/css/accordion/accordion.d.ts +37 -0
- package/dist/components/css/accordion/accordion.d.ts.map +1 -0
- package/dist/components/css/accordion/accordion.js +31 -0
- package/dist/components/css/accordion/accordion.js.map +1 -0
- package/dist/components/css/alert/alert.d.ts +35 -0
- package/dist/components/css/alert/alert.d.ts.map +1 -0
- package/dist/components/css/alert/alert.js +29 -0
- package/dist/components/css/alert/alert.js.map +1 -0
- package/dist/components/css/avatar/avatar.d.ts +40 -0
- package/dist/components/css/avatar/avatar.d.ts.map +1 -0
- package/dist/components/css/avatar/avatar.js +30 -0
- package/dist/components/css/avatar/avatar.js.map +1 -0
- package/dist/components/css/badge/badge.d.ts +24 -0
- package/dist/components/css/badge/badge.d.ts.map +1 -0
- package/dist/components/css/badge/badge.js +24 -0
- package/dist/components/css/badge/badge.js.map +1 -0
- package/dist/components/css/breadcrumbs/breadcrumbs.d.ts +26 -0
- package/dist/components/css/breadcrumbs/breadcrumbs.d.ts.map +1 -0
- package/dist/components/css/breadcrumbs/breadcrumbs.js +24 -0
- package/dist/components/css/breadcrumbs/breadcrumbs.js.map +1 -0
- package/dist/components/css/button/button.d.ts +26 -0
- package/dist/components/css/button/button.d.ts.map +1 -0
- package/dist/components/css/button/button.js +25 -0
- package/dist/components/css/button/button.js.map +1 -0
- package/dist/components/css/card/card.d.ts +36 -0
- package/dist/components/css/card/card.d.ts.map +1 -0
- package/dist/components/css/card/card.js +28 -0
- package/dist/components/css/card/card.js.map +1 -0
- package/dist/components/css/checkbox/checkbox.d.ts +32 -0
- package/dist/components/css/checkbox/checkbox.d.ts.map +1 -0
- package/dist/components/css/checkbox/checkbox.js +27 -0
- package/dist/components/css/checkbox/checkbox.js.map +1 -0
- package/dist/components/css/divider/divider.d.ts +29 -0
- package/dist/components/css/divider/divider.d.ts.map +1 -0
- package/dist/components/css/divider/divider.js +23 -0
- package/dist/components/css/divider/divider.js.map +1 -0
- package/dist/components/css/error-text/error-text.d.ts +24 -0
- package/dist/components/css/error-text/error-text.d.ts.map +1 -0
- package/dist/components/css/error-text/error-text.js +18 -0
- package/dist/components/css/error-text/error-text.js.map +1 -0
- package/dist/components/css/fieldset/fieldset.d.ts +55 -0
- package/dist/components/css/fieldset/fieldset.d.ts.map +1 -0
- package/dist/components/css/fieldset/fieldset.js +39 -0
- package/dist/components/css/fieldset/fieldset.js.map +1 -0
- package/dist/components/css/file-upload/file-upload.d.ts +41 -0
- package/dist/components/css/file-upload/file-upload.d.ts.map +1 -0
- package/dist/components/css/file-upload/file-upload.js +32 -0
- package/dist/components/css/file-upload/file-upload.js.map +1 -0
- package/dist/components/css/heading/heading.d.ts +29 -0
- package/dist/components/css/heading/heading.d.ts.map +1 -0
- package/dist/components/css/heading/heading.js +23 -0
- package/dist/components/css/heading/heading.js.map +1 -0
- package/dist/components/css/help-text/help-text.d.ts +24 -0
- package/dist/components/css/help-text/help-text.d.ts.map +1 -0
- package/dist/components/css/help-text/help-text.js +23 -0
- package/dist/components/css/help-text/help-text.js.map +1 -0
- package/dist/components/css/icon/icon.d.ts +34 -0
- package/dist/components/css/icon/icon.d.ts.map +1 -0
- package/dist/components/css/icon/icon.js +25 -0
- package/dist/components/css/icon/icon.js.map +1 -0
- package/dist/components/css/input/input.d.ts +40 -0
- package/dist/components/css/input/input.d.ts.map +1 -0
- package/dist/components/css/input/input.js +45 -0
- package/dist/components/css/input/input.js.map +1 -0
- package/dist/components/css/label/label.d.ts +33 -0
- package/dist/components/css/label/label.d.ts.map +1 -0
- package/dist/components/css/label/label.js +23 -0
- package/dist/components/css/label/label.js.map +1 -0
- package/dist/components/css/link/link.d.ts +28 -0
- package/dist/components/css/link/link.d.ts.map +1 -0
- package/dist/components/css/link/link.js +20 -0
- package/dist/components/css/link/link.js.map +1 -0
- package/dist/components/css/list/list.d.ts +31 -0
- package/dist/components/css/list/list.d.ts.map +1 -0
- package/dist/components/css/list/list.js +25 -0
- package/dist/components/css/list/list.js.map +1 -0
- package/dist/components/css/pagination/pagination.d.ts +27 -0
- package/dist/components/css/pagination/pagination.d.ts.map +1 -0
- package/dist/components/css/pagination/pagination.js +25 -0
- package/dist/components/css/pagination/pagination.js.map +1 -0
- package/dist/components/css/paragraph/paragraph.d.ts +36 -0
- package/dist/components/css/paragraph/paragraph.d.ts.map +1 -0
- package/dist/components/css/paragraph/paragraph.js +26 -0
- package/dist/components/css/paragraph/paragraph.js.map +1 -0
- package/dist/components/css/progress/progress.d.ts +53 -0
- package/dist/components/css/progress/progress.d.ts.map +1 -0
- package/dist/components/css/progress/progress.js +38 -0
- package/dist/components/css/progress/progress.js.map +1 -0
- package/dist/components/css/radio/radio.d.ts +32 -0
- package/dist/components/css/radio/radio.d.ts.map +1 -0
- package/dist/components/css/radio/radio.js +27 -0
- package/dist/components/css/radio/radio.js.map +1 -0
- package/dist/components/css/search/search.d.ts +34 -0
- package/dist/components/css/search/search.d.ts.map +1 -0
- package/dist/components/css/search/search.js +32 -0
- package/dist/components/css/search/search.js.map +1 -0
- package/dist/components/css/select/select.d.ts +40 -0
- package/dist/components/css/select/select.d.ts.map +1 -0
- package/dist/components/css/select/select.js +31 -0
- package/dist/components/css/select/select.js.map +1 -0
- package/dist/components/css/shared.d.ts +90 -0
- package/dist/components/css/shared.d.ts.map +1 -0
- package/dist/components/css/shared.js +167 -0
- package/dist/components/css/shared.js.map +1 -0
- package/dist/components/css/skeleton/skeleton.d.ts +29 -0
- package/dist/components/css/skeleton/skeleton.d.ts.map +1 -0
- package/dist/components/css/skeleton/skeleton.js +23 -0
- package/dist/components/css/skeleton/skeleton.js.map +1 -0
- package/dist/components/css/skip-link/skip-link.d.ts +18 -0
- package/dist/components/css/skip-link/skip-link.d.ts.map +1 -0
- package/dist/components/css/skip-link/skip-link.js +16 -0
- package/dist/components/css/skip-link/skip-link.js.map +1 -0
- package/dist/components/css/spinner/spinner.d.ts +33 -0
- package/dist/components/css/spinner/spinner.d.ts.map +1 -0
- package/dist/components/css/spinner/spinner.js +25 -0
- package/dist/components/css/spinner/spinner.js.map +1 -0
- package/dist/components/css/sr-only/sr-only.d.ts +17 -0
- package/dist/components/css/sr-only/sr-only.d.ts.map +1 -0
- package/dist/components/css/sr-only/sr-only.js +15 -0
- package/dist/components/css/sr-only/sr-only.js.map +1 -0
- package/dist/components/css/switch/switch.d.ts +37 -0
- package/dist/components/css/switch/switch.d.ts.map +1 -0
- package/dist/components/css/switch/switch.js +29 -0
- package/dist/components/css/switch/switch.js.map +1 -0
- package/dist/components/css/table/table.d.ts +76 -0
- package/dist/components/css/table/table.d.ts.map +1 -0
- package/dist/components/css/table/table.js +59 -0
- package/dist/components/css/table/table.js.map +1 -0
- package/dist/components/css/tag/tag.d.ts +35 -0
- package/dist/components/css/tag/tag.d.ts.map +1 -0
- package/dist/components/css/tag/tag.js +27 -0
- package/dist/components/css/tag/tag.js.map +1 -0
- package/dist/components/css/textarea/textarea.d.ts +23 -0
- package/dist/components/css/textarea/textarea.d.ts.map +1 -0
- package/dist/components/css/textarea/textarea.js +18 -0
- package/dist/components/css/textarea/textarea.js.map +1 -0
- package/dist/components/css/toggle-group/toggle-group.d.ts +31 -0
- package/dist/components/css/toggle-group/toggle-group.d.ts.map +1 -0
- package/dist/components/css/toggle-group/toggle-group.js +29 -0
- package/dist/components/css/toggle-group/toggle-group.js.map +1 -0
- package/dist/components/css/tooltip/tooltip.d.ts +31 -0
- package/dist/components/css/tooltip/tooltip.d.ts.map +1 -0
- package/dist/components/css/tooltip/tooltip.js +29 -0
- package/dist/components/css/tooltip/tooltip.js.map +1 -0
- package/dist/components/default-texts.d.ts +35 -0
- package/dist/components/default-texts.d.ts.map +1 -0
- package/dist/components/default-texts.js +35 -0
- package/dist/components/default-texts.js.map +1 -0
- package/dist/components/events.d.ts +77 -0
- package/dist/components/events.d.ts.map +1 -0
- package/dist/components/events.js +3 -0
- package/dist/components/events.js.map +1 -0
- package/dist/components/frame/dialog/dialog.d.ts +122 -0
- package/dist/components/frame/dialog/dialog.d.ts.map +1 -0
- package/dist/components/frame/dialog/dialog.js +112 -0
- package/dist/components/frame/dialog/dialog.js.map +1 -0
- package/dist/components/frame/dialog/lt-dialog.d.ts +104 -0
- package/dist/components/frame/dialog/lt-dialog.d.ts.map +1 -0
- package/dist/components/frame/dialog/lt-dialog.js +431 -0
- package/dist/components/frame/dialog/lt-dialog.js.map +1 -0
- package/dist/components/frame/error-summary/error-summary.d.ts +40 -0
- package/dist/components/frame/error-summary/error-summary.d.ts.map +1 -0
- package/dist/components/frame/error-summary/error-summary.js +32 -0
- package/dist/components/frame/error-summary/error-summary.js.map +1 -0
- package/dist/components/frame/error-summary/lt-error-summary.d.ts +82 -0
- package/dist/components/frame/error-summary/lt-error-summary.d.ts.map +1 -0
- package/dist/components/frame/error-summary/lt-error-summary.js +302 -0
- package/dist/components/frame/error-summary/lt-error-summary.js.map +1 -0
- package/dist/components/frame/field/field-core.d.ts +92 -0
- package/dist/components/frame/field/field-core.d.ts.map +1 -0
- package/dist/components/frame/field/field-core.js +63 -0
- package/dist/components/frame/field/field-core.js.map +1 -0
- package/dist/components/frame/field/lt-field.d.ts +173 -0
- package/dist/components/frame/field/lt-field.d.ts.map +1 -0
- package/dist/components/frame/field/lt-field.js +580 -0
- package/dist/components/frame/field/lt-field.js.map +1 -0
- package/dist/components/frame/popover/lt-popover.d.ts +132 -0
- package/dist/components/frame/popover/lt-popover.d.ts.map +1 -0
- package/dist/components/frame/popover/lt-popover.js +490 -0
- package/dist/components/frame/popover/lt-popover.js.map +1 -0
- package/dist/components/frame/popover/popover.d.ts +49 -0
- package/dist/components/frame/popover/popover.d.ts.map +1 -0
- package/dist/components/frame/popover/popover.js +64 -0
- package/dist/components/frame/popover/popover.js.map +1 -0
- package/dist/components/frame/session-timeout/lt-session-timeout.d.ts +198 -0
- package/dist/components/frame/session-timeout/lt-session-timeout.d.ts.map +1 -0
- package/dist/components/frame/session-timeout/lt-session-timeout.js +573 -0
- package/dist/components/frame/session-timeout/lt-session-timeout.js.map +1 -0
- package/dist/components/frame/session-timeout/session-timeout.d.ts +113 -0
- package/dist/components/frame/session-timeout/session-timeout.d.ts.map +1 -0
- package/dist/components/frame/session-timeout/session-timeout.js +101 -0
- package/dist/components/frame/session-timeout/session-timeout.js.map +1 -0
- package/dist/components/frame/suggestion/lt-suggestion.d.ts +361 -0
- package/dist/components/frame/suggestion/lt-suggestion.d.ts.map +1 -0
- package/dist/components/frame/suggestion/lt-suggestion.js +1152 -0
- package/dist/components/frame/suggestion/lt-suggestion.js.map +1 -0
- package/dist/components/frame/suggestion/suggestion.d.ts +143 -0
- package/dist/components/frame/suggestion/suggestion.d.ts.map +1 -0
- package/dist/components/frame/suggestion/suggestion.js +127 -0
- package/dist/components/frame/suggestion/suggestion.js.map +1 -0
- package/dist/components/frame/tabs/lt-tabs.d.ts +404 -0
- package/dist/components/frame/tabs/lt-tabs.d.ts.map +1 -0
- package/dist/components/frame/tabs/lt-tabs.js +1201 -0
- package/dist/components/frame/tabs/lt-tabs.js.map +1 -0
- package/dist/components/frame/tabs/tabs.d.ts +112 -0
- package/dist/components/frame/tabs/tabs.d.ts.map +1 -0
- package/dist/components/frame/tabs/tabs.js +107 -0
- package/dist/components/frame/tabs/tabs.js.map +1 -0
- package/dist/components/host-element.d.ts +135 -0
- package/dist/components/host-element.d.ts.map +1 -0
- package/dist/components/host-element.js +366 -0
- package/dist/components/host-element.js.map +1 -0
- package/dist/components/standalone/connection-status/connection-status.d.ts +28 -0
- package/dist/components/standalone/connection-status/connection-status.d.ts.map +1 -0
- package/dist/components/standalone/connection-status/connection-status.js +22 -0
- package/dist/components/standalone/connection-status/connection-status.js.map +1 -0
- package/dist/components/standalone/connection-status/lt-connection-status.d.ts +81 -0
- package/dist/components/standalone/connection-status/lt-connection-status.d.ts.map +1 -0
- package/dist/components/standalone/connection-status/lt-connection-status.js +216 -0
- package/dist/components/standalone/connection-status/lt-connection-status.js.map +1 -0
- package/dist/components/standalone/toast/lt-toast.d.ts +109 -0
- package/dist/components/standalone/toast/lt-toast.d.ts.map +1 -0
- package/dist/components/standalone/toast/lt-toast.js +256 -0
- package/dist/components/standalone/toast/lt-toast.js.map +1 -0
- package/dist/components/standalone/toast/toast.d.ts +52 -0
- package/dist/components/standalone/toast/toast.d.ts.map +1 -0
- package/dist/components/standalone/toast/toast.js +42 -0
- package/dist/components/standalone/toast/toast.js.map +1 -0
- package/dist/diagnostics/core.d.ts +137 -0
- package/dist/diagnostics/core.d.ts.map +1 -0
- package/dist/diagnostics/core.js +72 -0
- package/dist/diagnostics/core.js.map +1 -0
- package/dist/diagnostics/default-core.d.ts +10 -0
- package/dist/diagnostics/default-core.d.ts.map +1 -0
- package/dist/diagnostics/default-core.js +72 -0
- package/dist/diagnostics/default-core.js.map +1 -0
- package/dist/diagnostics/index.d.ts +84 -0
- package/dist/diagnostics/index.d.ts.map +1 -0
- package/dist/diagnostics/index.js +106 -0
- package/dist/diagnostics/index.js.map +1 -0
- package/dist/dom.d.ts +55 -0
- package/dist/dom.d.ts.map +1 -0
- package/dist/dom.js +162 -0
- package/dist/dom.js.map +1 -0
- package/dist/index.d.ts +97 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +58 -0
- package/dist/index.js.map +1 -0
- package/dist/jsx/react.d.ts +180 -0
- package/dist/jsx/react.d.ts.map +1 -0
- package/dist/jsx/react.js +2 -0
- package/dist/jsx/react.js.map +1 -0
- package/dist/lotek.css +3617 -0
- package/dist/lt.d.ts +325 -0
- package/dist/lt.d.ts.map +1 -0
- package/dist/lt.js +183 -0
- package/dist/lt.js.map +1 -0
- package/dist/react.d.ts +492 -0
- package/dist/react.d.ts.map +1 -0
- package/dist/react.js +296 -0
- package/dist/react.js.map +1 -0
- package/dist/register.d.ts +17 -0
- package/dist/register.d.ts.map +1 -0
- package/dist/register.js +35 -0
- package/dist/register.js.map +1 -0
- package/dist/tokens/color.d.ts +43 -0
- package/dist/tokens/color.d.ts.map +1 -0
- package/dist/tokens/color.js +123 -0
- package/dist/tokens/color.js.map +1 -0
- package/dist/tokens/contract.d.ts +18 -0
- package/dist/tokens/contract.d.ts.map +1 -0
- package/dist/tokens/contract.js +18 -0
- package/dist/tokens/contract.js.map +1 -0
- package/dist/tokens/matrix-cells.d.ts +30 -0
- package/dist/tokens/matrix-cells.d.ts.map +1 -0
- package/dist/tokens/matrix-cells.js +273 -0
- package/dist/tokens/matrix-cells.js.map +1 -0
- package/dist/tokens/matrix.d.ts +18 -0
- package/dist/tokens/matrix.d.ts.map +1 -0
- package/dist/tokens/matrix.js +21 -0
- package/dist/tokens/matrix.js.map +1 -0
- package/dist/tokens/theme-check.d.ts +42 -0
- package/dist/tokens/theme-check.d.ts.map +1 -0
- package/dist/tokens/theme-check.js +10 -0
- package/dist/tokens/theme-check.js.map +1 -0
- package/dist/tokens/theme.d.ts +94 -0
- package/dist/tokens/theme.d.ts.map +1 -0
- package/dist/tokens/theme.js +14 -0
- package/dist/tokens/theme.js.map +1 -0
- package/dist/tokens/tokens.d.ts +122 -0
- package/dist/tokens/tokens.d.ts.map +1 -0
- package/dist/tokens/tokens.js +158 -0
- package/dist/tokens/tokens.js.map +1 -0
- package/dist/vocabulary/classes.d.ts +3 -0
- package/dist/vocabulary/classes.d.ts.map +1 -0
- package/dist/vocabulary/classes.js +1320 -0
- package/dist/vocabulary/classes.js.map +1 -0
- package/dist/vocabulary/elements.d.ts +3 -0
- package/dist/vocabulary/elements.d.ts.map +1 -0
- package/dist/vocabulary/elements.js +410 -0
- package/dist/vocabulary/elements.js.map +1 -0
- package/dist/vocabulary/types.d.ts +175 -0
- package/dist/vocabulary/types.d.ts.map +1 -0
- package/dist/vocabulary/types.js +11 -0
- package/dist/vocabulary/types.js.map +1 -0
- package/dist/wasi-host.d.ts +24 -0
- package/dist/wasi-host.d.ts.map +1 -0
- package/dist/wasi-host.js +140 -0
- package/dist/wasi-host.js.map +1 -0
- package/live-templates.xml +62 -0
- package/manifest/files.json +373 -0
- package/manifest/manifest.json +4965 -0
- package/manifest/manifest.schema.json +513 -0
- package/package.json +404 -4
- package/src/cli.ts +21 -0
- package/src/components/css/accordion/accordion.css +102 -0
- package/src/components/css/accordion/accordion.ts +50 -0
- package/src/components/css/alert/alert.css +53 -0
- package/src/components/css/alert/alert.ts +48 -0
- package/src/components/css/avatar/avatar.css +96 -0
- package/src/components/css/avatar/avatar.ts +57 -0
- package/src/components/css/badge/badge.css +42 -0
- package/src/components/css/badge/badge.ts +43 -0
- package/src/components/css/breadcrumbs/breadcrumbs.css +62 -0
- package/src/components/css/breadcrumbs/breadcrumbs.ts +30 -0
- package/src/components/css/button/button.css +128 -0
- package/src/components/css/button/button.ts +44 -0
- package/src/components/css/card/card.css +65 -0
- package/src/components/css/card/card.ts +50 -0
- package/src/components/css/checkbox/checkbox.css +114 -0
- package/src/components/css/checkbox/checkbox.ts +50 -0
- package/src/components/css/divider/divider.css +38 -0
- package/src/components/css/divider/divider.ts +42 -0
- package/src/components/css/error-text/error-text.css +21 -0
- package/src/components/css/error-text/error-text.ts +37 -0
- package/src/components/css/fieldset/fieldset.css +72 -0
- package/src/components/css/fieldset/fieldset.ts +87 -0
- package/src/components/css/file-upload/file-upload.css +102 -0
- package/src/components/css/file-upload/file-upload.ts +65 -0
- package/src/components/css/heading/heading.css +33 -0
- package/src/components/css/heading/heading.ts +42 -0
- package/src/components/css/help-text/help-text.css +24 -0
- package/src/components/css/help-text/help-text.ts +42 -0
- package/src/components/css/icon/icon.css +20 -0
- package/src/components/css/icon/icon.ts +44 -0
- package/src/components/css/input/input.css +145 -0
- package/src/components/css/input/input.ts +77 -0
- package/src/components/css/label/label.css +42 -0
- package/src/components/css/label/label.ts +51 -0
- package/src/components/css/link/link.css +38 -0
- package/src/components/css/link/link.ts +38 -0
- package/src/components/css/list/list.css +53 -0
- package/src/components/css/list/list.ts +44 -0
- package/src/components/css/pagination/pagination.css +95 -0
- package/src/components/css/pagination/pagination.ts +33 -0
- package/src/components/css/paragraph/paragraph.css +31 -0
- package/src/components/css/paragraph/paragraph.ts +53 -0
- package/src/components/css/progress/progress.css +161 -0
- package/src/components/css/progress/progress.ts +78 -0
- package/src/components/css/radio/radio.css +94 -0
- package/src/components/css/radio/radio.ts +50 -0
- package/src/components/css/search/search.css +50 -0
- package/src/components/css/search/search.ts +56 -0
- package/src/components/css/select/select.css +321 -0
- package/src/components/css/select/select.ts +63 -0
- package/src/components/css/shared.ts +199 -0
- package/src/components/css/skeleton/skeleton.css +62 -0
- package/src/components/css/skeleton/skeleton.ts +43 -0
- package/src/components/css/skip-link/skip-link.css +41 -0
- package/src/components/css/skip-link/skip-link.ts +22 -0
- package/src/components/css/spinner/spinner.css +48 -0
- package/src/components/css/spinner/spinner.ts +48 -0
- package/src/components/css/sr-only/sr-only.css +16 -0
- package/src/components/css/sr-only/sr-only.ts +21 -0
- package/src/components/css/switch/switch.css +105 -0
- package/src/components/css/switch/switch.ts +50 -0
- package/src/components/css/table/table.css +159 -0
- package/src/components/css/table/table.ts +107 -0
- package/src/components/css/tag/tag.css +58 -0
- package/src/components/css/tag/tag.ts +49 -0
- package/src/components/css/textarea/textarea.css +83 -0
- package/src/components/css/textarea/textarea.ts +40 -0
- package/src/components/css/toggle-group/toggle-group.css +92 -0
- package/src/components/css/toggle-group/toggle-group.ts +37 -0
- package/src/components/css/tooltip/tooltip.css +89 -0
- package/src/components/css/tooltip/tooltip.ts +37 -0
- package/src/components/default-texts.ts +34 -0
- package/src/components/events.ts +68 -0
- package/src/components/frame/dialog/dialog.css +306 -0
- package/src/components/frame/dialog/dialog.ts +166 -0
- package/src/components/frame/dialog/lt-dialog.ts +510 -0
- package/src/components/frame/error-summary/error-summary.css +47 -0
- package/src/components/frame/error-summary/error-summary.ts +56 -0
- package/src/components/frame/error-summary/lt-error-summary.ts +344 -0
- package/src/components/frame/field/field-core.ts +152 -0
- package/src/components/frame/field/field.css +17 -0
- package/src/components/frame/field/lt-field.ts +753 -0
- package/src/components/frame/popover/lt-popover.ts +555 -0
- package/src/components/frame/popover/popover.css +50 -0
- package/src/components/frame/popover/popover.ts +102 -0
- package/src/components/frame/session-timeout/lt-session-timeout.ts +681 -0
- package/src/components/frame/session-timeout/session-timeout.css +50 -0
- package/src/components/frame/session-timeout/session-timeout.ts +156 -0
- package/src/components/frame/suggestion/lt-suggestion.ts +1358 -0
- package/src/components/frame/suggestion/suggestion.css +132 -0
- package/src/components/frame/suggestion/suggestion.ts +172 -0
- package/src/components/frame/tabs/lt-tabs.ts +1319 -0
- package/src/components/frame/tabs/tabs.css +128 -0
- package/src/components/frame/tabs/tabs.ts +188 -0
- package/src/components/host-element.ts +400 -0
- package/src/components/standalone/connection-status/connection-status.css +41 -0
- package/src/components/standalone/connection-status/connection-status.ts +41 -0
- package/src/components/standalone/connection-status/lt-connection-status.ts +242 -0
- package/src/components/standalone/toast/lt-toast.ts +300 -0
- package/src/components/standalone/toast/toast.css +78 -0
- package/src/components/standalone/toast/toast.ts +70 -0
- package/src/diagnostics/core.ts +210 -0
- package/src/diagnostics/default-core.ts +81 -0
- package/src/diagnostics/index.ts +150 -0
- package/src/dom.ts +185 -0
- package/src/index.ts +218 -0
- package/src/jsx/react.ts +212 -0
- package/src/lt.ts +192 -0
- package/src/react.ts +411 -0
- package/src/register.ts +43 -0
- package/src/tailwind/tailwind.css +169 -0
- package/src/tokens/boundary.css +104 -0
- package/src/tokens/color-contract.json +231 -0
- package/src/tokens/color.ts +150 -0
- package/src/tokens/contract.ts +24 -0
- package/src/tokens/matrix-cells.ts +375 -0
- package/src/tokens/matrix.ts +32 -0
- package/src/tokens/theme-check.ts +51 -0
- package/src/tokens/theme.ts +104 -0
- package/src/tokens/tokens.css +569 -0
- package/src/tokens/tokens.ts +223 -0
- package/src/vocabulary/classes.ts +1322 -0
- package/src/vocabulary/elements.ts +412 -0
- package/src/vocabulary/types.ts +178 -0
- package/src/wasi-host.ts +155 -0
- package/web-types.json +800 -0
|
@@ -0,0 +1,1322 @@
|
|
|
1
|
+
// Generated by interfaces/scripts/generate-vocabulary.ts. Do not edit.
|
|
2
|
+
import type { Classes } from "./types.js"
|
|
3
|
+
|
|
4
|
+
export const classes: Classes = {
|
|
5
|
+
"lt-accordion": {
|
|
6
|
+
"component": "accordion",
|
|
7
|
+
"title": "Accordion",
|
|
8
|
+
"description": "A panel that can be expanded, built on details and summary. CSS component with two classes and no JavaScript.",
|
|
9
|
+
"link": "https://lo-tek.sobernetics.no/components/accordion/",
|
|
10
|
+
"content": "parts",
|
|
11
|
+
"parts": {
|
|
12
|
+
"summary": {
|
|
13
|
+
"selector": "summary",
|
|
14
|
+
"description": "The heading the user presses to open and close. An `<h2>` to `<h6>` inside gives it a level in the document.",
|
|
15
|
+
"content": "free"
|
|
16
|
+
},
|
|
17
|
+
"content": {
|
|
18
|
+
"selector": ".lt-accordion__content",
|
|
19
|
+
"description": "The content shown when the panel is open.",
|
|
20
|
+
"content": "free"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"attributes": {
|
|
24
|
+
"data-variant": {
|
|
25
|
+
"values": [
|
|
26
|
+
"plain"
|
|
27
|
+
],
|
|
28
|
+
"default": "default"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"lt-accordion__content": {
|
|
33
|
+
"component": "accordion",
|
|
34
|
+
"title": "Accordion",
|
|
35
|
+
"description": "A panel that can be expanded, built on details and summary. CSS component with two classes and no JavaScript.",
|
|
36
|
+
"link": "https://lo-tek.sobernetics.no/components/accordion/",
|
|
37
|
+
"content": "free",
|
|
38
|
+
"partOf": "lt-accordion",
|
|
39
|
+
"attributes": {}
|
|
40
|
+
},
|
|
41
|
+
"lt-alert": {
|
|
42
|
+
"component": "alert",
|
|
43
|
+
"title": "Alert",
|
|
44
|
+
"description": "A message about the whole page or the whole form. CSS component with two classes and no JavaScript.",
|
|
45
|
+
"link": "https://lo-tek.sobernetics.no/components/alert/",
|
|
46
|
+
"content": "free",
|
|
47
|
+
"parts": {
|
|
48
|
+
"title": {
|
|
49
|
+
"selector": ".lt-alert__title",
|
|
50
|
+
"description": "The heading in the message.",
|
|
51
|
+
"content": "text",
|
|
52
|
+
"optional": true
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"attributes": {
|
|
56
|
+
"data-color": {
|
|
57
|
+
"values": [
|
|
58
|
+
"info",
|
|
59
|
+
"success",
|
|
60
|
+
"warning",
|
|
61
|
+
"danger"
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"lt-alert__title": {
|
|
67
|
+
"component": "alert",
|
|
68
|
+
"title": "Alert",
|
|
69
|
+
"description": "A message about the whole page or the whole form. CSS component with two classes and no JavaScript.",
|
|
70
|
+
"link": "https://lo-tek.sobernetics.no/components/alert/",
|
|
71
|
+
"content": "text",
|
|
72
|
+
"partOf": "lt-alert",
|
|
73
|
+
"attributes": {}
|
|
74
|
+
},
|
|
75
|
+
"lt-avatar": {
|
|
76
|
+
"component": "avatar",
|
|
77
|
+
"title": "Avatar",
|
|
78
|
+
"description": "Profile picture or initials. A CSS component with two classes and no JavaScript.",
|
|
79
|
+
"link": "https://lo-tek.sobernetics.no/components/avatar/",
|
|
80
|
+
"content": "free",
|
|
81
|
+
"parts": {
|
|
82
|
+
"image": {
|
|
83
|
+
"selector": "img",
|
|
84
|
+
"description": "The image, with the name in `alt`. Without an image the initials are text, and the element has `aria-hidden` when the name is next to it.",
|
|
85
|
+
"content": "none",
|
|
86
|
+
"optional": true
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"attributes": {
|
|
90
|
+
"data-variant": {
|
|
91
|
+
"values": [
|
|
92
|
+
"square"
|
|
93
|
+
],
|
|
94
|
+
"default": "circle"
|
|
95
|
+
},
|
|
96
|
+
"data-size": {
|
|
97
|
+
"values": [
|
|
98
|
+
"small",
|
|
99
|
+
"large"
|
|
100
|
+
],
|
|
101
|
+
"default": "medium"
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"lt-avatar-stack": {
|
|
106
|
+
"component": "avatar",
|
|
107
|
+
"title": "Avatar",
|
|
108
|
+
"description": "Profile picture or initials. A CSS component with two classes and no JavaScript.",
|
|
109
|
+
"link": "https://lo-tek.sobernetics.no/components/avatar/",
|
|
110
|
+
"content": "parts",
|
|
111
|
+
"parts": {
|
|
112
|
+
"item": {
|
|
113
|
+
"selector": "li",
|
|
114
|
+
"description": "One list item per person.",
|
|
115
|
+
"content": "parts",
|
|
116
|
+
"multiple": true
|
|
117
|
+
},
|
|
118
|
+
"avatar": {
|
|
119
|
+
"selector": "li > .lt-avatar",
|
|
120
|
+
"description": "The avatar in each list item.",
|
|
121
|
+
"content": "free",
|
|
122
|
+
"multiple": true
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"attributes": {}
|
|
126
|
+
},
|
|
127
|
+
"lt-badge": {
|
|
128
|
+
"component": "badge",
|
|
129
|
+
"title": "Badge",
|
|
130
|
+
"description": "Compact status badge. A CSS component with one class and no JavaScript.",
|
|
131
|
+
"link": "https://lo-tek.sobernetics.no/components/badge/",
|
|
132
|
+
"content": "text",
|
|
133
|
+
"attributes": {
|
|
134
|
+
"data-color": {
|
|
135
|
+
"values": [
|
|
136
|
+
"success",
|
|
137
|
+
"warning",
|
|
138
|
+
"danger",
|
|
139
|
+
"neutral"
|
|
140
|
+
],
|
|
141
|
+
"default": "info"
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
"lt-breadcrumbs": {
|
|
146
|
+
"component": "breadcrumbs",
|
|
147
|
+
"title": "Breadcrumbs",
|
|
148
|
+
"description": "A breadcrumb trail that shows where on the site the user is. A CSS component with one class and no JavaScript.",
|
|
149
|
+
"link": "https://lo-tek.sobernetics.no/components/breadcrumbs/",
|
|
150
|
+
"content": "parts",
|
|
151
|
+
"parts": {
|
|
152
|
+
"item": {
|
|
153
|
+
"selector": "li",
|
|
154
|
+
"description": "One step in the trail.",
|
|
155
|
+
"content": "parts",
|
|
156
|
+
"multiple": true
|
|
157
|
+
},
|
|
158
|
+
"link": {
|
|
159
|
+
"selector": "li > a",
|
|
160
|
+
"description": "The link to the step. The last one, the page the reader is on, has `aria-current=\"page\"`.",
|
|
161
|
+
"content": "text",
|
|
162
|
+
"multiple": true
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
"attributes": {}
|
|
166
|
+
},
|
|
167
|
+
"lt-button": {
|
|
168
|
+
"component": "button",
|
|
169
|
+
"title": "Button",
|
|
170
|
+
"description": "A button for actions. CSS component with one class and no JavaScript.",
|
|
171
|
+
"link": "https://lo-tek.sobernetics.no/components/button/",
|
|
172
|
+
"content": "text",
|
|
173
|
+
"attributes": {
|
|
174
|
+
"data-variant": {
|
|
175
|
+
"values": [
|
|
176
|
+
"secondary",
|
|
177
|
+
"ghost",
|
|
178
|
+
"danger"
|
|
179
|
+
],
|
|
180
|
+
"default": "primary"
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
"lt-card": {
|
|
185
|
+
"component": "card",
|
|
186
|
+
"title": "Card",
|
|
187
|
+
"description": "A box that groups content that belongs together. A CSS component with two classes and no JavaScript.",
|
|
188
|
+
"link": "https://lo-tek.sobernetics.no/components/card/",
|
|
189
|
+
"content": "free",
|
|
190
|
+
"parts": {
|
|
191
|
+
"title": {
|
|
192
|
+
"selector": ".lt-card__title",
|
|
193
|
+
"description": "The heading in the card.",
|
|
194
|
+
"content": "text",
|
|
195
|
+
"optional": true
|
|
196
|
+
}
|
|
197
|
+
},
|
|
198
|
+
"attributes": {
|
|
199
|
+
"data-variant": {
|
|
200
|
+
"values": [
|
|
201
|
+
"filled"
|
|
202
|
+
],
|
|
203
|
+
"default": "outline"
|
|
204
|
+
},
|
|
205
|
+
"data-interactive": {
|
|
206
|
+
"values": [],
|
|
207
|
+
"flag": true
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
},
|
|
211
|
+
"lt-card__title": {
|
|
212
|
+
"component": "card",
|
|
213
|
+
"title": "Card",
|
|
214
|
+
"description": "A box that groups content that belongs together. A CSS component with two classes and no JavaScript.",
|
|
215
|
+
"link": "https://lo-tek.sobernetics.no/components/card/",
|
|
216
|
+
"content": "text",
|
|
217
|
+
"partOf": "lt-card",
|
|
218
|
+
"attributes": {}
|
|
219
|
+
},
|
|
220
|
+
"lt-checkbox": {
|
|
221
|
+
"component": "checkbox",
|
|
222
|
+
"title": "Checkbox",
|
|
223
|
+
"description": "A checkbox for a choice that stands on its own. CSS component with two classes and no JavaScript.",
|
|
224
|
+
"link": "https://lo-tek.sobernetics.no/components/checkbox/",
|
|
225
|
+
"content": "none",
|
|
226
|
+
"attributes": {
|
|
227
|
+
"data-state": {
|
|
228
|
+
"values": [
|
|
229
|
+
"invalid",
|
|
230
|
+
"success"
|
|
231
|
+
],
|
|
232
|
+
"default": "default"
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
"lt-checkbox-row": {
|
|
237
|
+
"component": "checkbox",
|
|
238
|
+
"title": "Checkbox",
|
|
239
|
+
"description": "A checkbox for a choice that stands on its own. CSS component with two classes and no JavaScript.",
|
|
240
|
+
"link": "https://lo-tek.sobernetics.no/components/checkbox/",
|
|
241
|
+
"content": "parts",
|
|
242
|
+
"parts": {
|
|
243
|
+
"control": {
|
|
244
|
+
"selector": "input[type='checkbox']",
|
|
245
|
+
"description": "The checkbox, with its class.",
|
|
246
|
+
"content": "none",
|
|
247
|
+
"unique": true
|
|
248
|
+
},
|
|
249
|
+
"label": {
|
|
250
|
+
"selector": "label",
|
|
251
|
+
"description": "The label, wired to the control with `for`.",
|
|
252
|
+
"content": "text"
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
"attributes": {}
|
|
256
|
+
},
|
|
257
|
+
"lt-divider": {
|
|
258
|
+
"component": "divider",
|
|
259
|
+
"title": "Divider",
|
|
260
|
+
"description": "A line between parts of the content. A CSS component with one class and no JavaScript.",
|
|
261
|
+
"link": "https://lo-tek.sobernetics.no/components/divider/",
|
|
262
|
+
"content": "none",
|
|
263
|
+
"attributes": {
|
|
264
|
+
"data-variant": {
|
|
265
|
+
"values": [
|
|
266
|
+
"subtle",
|
|
267
|
+
"strong"
|
|
268
|
+
],
|
|
269
|
+
"default": "default"
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
},
|
|
273
|
+
"lt-error-text": {
|
|
274
|
+
"component": "error-text",
|
|
275
|
+
"title": "Error Text",
|
|
276
|
+
"description": "Error message below a form field. A CSS component with one class and no JavaScript.",
|
|
277
|
+
"link": "https://lo-tek.sobernetics.no/components/error-text/",
|
|
278
|
+
"content": "text",
|
|
279
|
+
"attributes": {
|
|
280
|
+
"data-variant": {
|
|
281
|
+
"values": [
|
|
282
|
+
"warning"
|
|
283
|
+
],
|
|
284
|
+
"default": "error"
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
},
|
|
288
|
+
"lt-fieldset": {
|
|
289
|
+
"component": "fieldset",
|
|
290
|
+
"title": "Fieldset",
|
|
291
|
+
"description": "A group of controls with a shared label. CSS component with two classes and no JavaScript.",
|
|
292
|
+
"link": "https://lo-tek.sobernetics.no/components/fieldset/",
|
|
293
|
+
"content": "free",
|
|
294
|
+
"parts": {
|
|
295
|
+
"legend": {
|
|
296
|
+
"selector": "> .lt-legend",
|
|
297
|
+
"description": "The label of the group, a `<legend>` with the class.",
|
|
298
|
+
"content": "text",
|
|
299
|
+
"unique": true
|
|
300
|
+
},
|
|
301
|
+
"help": {
|
|
302
|
+
"selector": ".lt-help-text",
|
|
303
|
+
"description": "The help text of the group, wired with `aria-describedby` on the fieldset.",
|
|
304
|
+
"content": "text",
|
|
305
|
+
"optional": true
|
|
306
|
+
},
|
|
307
|
+
"error": {
|
|
308
|
+
"selector": ".lt-error-text",
|
|
309
|
+
"description": "The error text of the group, wired with `aria-describedby` on the fieldset.",
|
|
310
|
+
"content": "text",
|
|
311
|
+
"optional": true
|
|
312
|
+
}
|
|
313
|
+
},
|
|
314
|
+
"attributes": {
|
|
315
|
+
"data-state": {
|
|
316
|
+
"values": [
|
|
317
|
+
"invalid",
|
|
318
|
+
"success"
|
|
319
|
+
],
|
|
320
|
+
"default": "default"
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
},
|
|
324
|
+
"lt-legend": {
|
|
325
|
+
"component": "fieldset",
|
|
326
|
+
"title": "Fieldset",
|
|
327
|
+
"description": "A group of controls with a shared label. CSS component with two classes and no JavaScript.",
|
|
328
|
+
"link": "https://lo-tek.sobernetics.no/components/fieldset/",
|
|
329
|
+
"content": "text",
|
|
330
|
+
"partOf": "lt-fieldset",
|
|
331
|
+
"attributes": {
|
|
332
|
+
"data-required": {
|
|
333
|
+
"values": [
|
|
334
|
+
"symbol",
|
|
335
|
+
"text"
|
|
336
|
+
]
|
|
337
|
+
},
|
|
338
|
+
"data-optional": {
|
|
339
|
+
"values": [],
|
|
340
|
+
"flag": true
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
},
|
|
344
|
+
"lt-file-upload": {
|
|
345
|
+
"component": "file-upload",
|
|
346
|
+
"title": "File Upload",
|
|
347
|
+
"description": "A field for uploading files. A CSS component with two classes and no JavaScript.",
|
|
348
|
+
"link": "https://lo-tek.sobernetics.no/components/file-upload/",
|
|
349
|
+
"content": "none",
|
|
350
|
+
"attributes": {
|
|
351
|
+
"data-state": {
|
|
352
|
+
"values": [
|
|
353
|
+
"invalid",
|
|
354
|
+
"success"
|
|
355
|
+
],
|
|
356
|
+
"default": "default"
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
},
|
|
360
|
+
"lt-file-upload-list": {
|
|
361
|
+
"component": "file-upload",
|
|
362
|
+
"title": "File Upload",
|
|
363
|
+
"description": "A field for uploading files. A CSS component with two classes and no JavaScript.",
|
|
364
|
+
"link": "https://lo-tek.sobernetics.no/components/file-upload/",
|
|
365
|
+
"content": "parts",
|
|
366
|
+
"parts": {
|
|
367
|
+
"item": {
|
|
368
|
+
"selector": "li",
|
|
369
|
+
"description": "One chosen file, with its name.",
|
|
370
|
+
"content": "free",
|
|
371
|
+
"multiple": true
|
|
372
|
+
},
|
|
373
|
+
"remove": {
|
|
374
|
+
"selector": "li > button",
|
|
375
|
+
"description": "The button that removes the file, with the file name in its text.",
|
|
376
|
+
"content": "text",
|
|
377
|
+
"multiple": true,
|
|
378
|
+
"optional": true
|
|
379
|
+
}
|
|
380
|
+
},
|
|
381
|
+
"attributes": {}
|
|
382
|
+
},
|
|
383
|
+
"lt-heading": {
|
|
384
|
+
"component": "heading",
|
|
385
|
+
"title": "Heading",
|
|
386
|
+
"description": "Headings in six sizes, independent of level. A CSS component with one class and no JavaScript.",
|
|
387
|
+
"link": "https://lo-tek.sobernetics.no/components/heading/",
|
|
388
|
+
"content": "text",
|
|
389
|
+
"attributes": {
|
|
390
|
+
"data-size": {
|
|
391
|
+
"values": [
|
|
392
|
+
"xs",
|
|
393
|
+
"s",
|
|
394
|
+
"m",
|
|
395
|
+
"xl",
|
|
396
|
+
"mega"
|
|
397
|
+
],
|
|
398
|
+
"default": "l"
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
},
|
|
402
|
+
"lt-help-text": {
|
|
403
|
+
"component": "help-text",
|
|
404
|
+
"title": "Help Text",
|
|
405
|
+
"description": "Explanatory text below a form field. A CSS component with one class and no JavaScript.",
|
|
406
|
+
"link": "https://lo-tek.sobernetics.no/components/help-text/",
|
|
407
|
+
"content": "text",
|
|
408
|
+
"attributes": {
|
|
409
|
+
"data-variant": {
|
|
410
|
+
"values": [
|
|
411
|
+
"strong",
|
|
412
|
+
"success",
|
|
413
|
+
"warning"
|
|
414
|
+
],
|
|
415
|
+
"default": "muted"
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
},
|
|
419
|
+
"lt-icon": {
|
|
420
|
+
"component": "icon",
|
|
421
|
+
"title": "Icon",
|
|
422
|
+
"description": "An icon from the app's own set, as large as the text around it. A CSS component with one class and no JavaScript.",
|
|
423
|
+
"link": "https://lo-tek.sobernetics.no/components/icon/",
|
|
424
|
+
"content": "none",
|
|
425
|
+
"attributes": {}
|
|
426
|
+
},
|
|
427
|
+
"lt-input": {
|
|
428
|
+
"component": "input",
|
|
429
|
+
"title": "Input",
|
|
430
|
+
"description": "A text field for forms, with states for valid and invalid. CSS component.",
|
|
431
|
+
"link": "https://lo-tek.sobernetics.no/components/input/",
|
|
432
|
+
"content": "none",
|
|
433
|
+
"attributes": {
|
|
434
|
+
"data-state": {
|
|
435
|
+
"values": [
|
|
436
|
+
"invalid",
|
|
437
|
+
"success"
|
|
438
|
+
],
|
|
439
|
+
"default": "default"
|
|
440
|
+
},
|
|
441
|
+
"data-variant": {
|
|
442
|
+
"values": [
|
|
443
|
+
"date",
|
|
444
|
+
"datetime-local",
|
|
445
|
+
"time"
|
|
446
|
+
]
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
},
|
|
450
|
+
"lt-label": {
|
|
451
|
+
"component": "label",
|
|
452
|
+
"title": "Label",
|
|
453
|
+
"description": "A label for form fields, with marking of required and optional. A CSS component.",
|
|
454
|
+
"link": "https://lo-tek.sobernetics.no/components/label/",
|
|
455
|
+
"content": "text",
|
|
456
|
+
"attributes": {
|
|
457
|
+
"data-required": {
|
|
458
|
+
"values": [
|
|
459
|
+
"symbol",
|
|
460
|
+
"text"
|
|
461
|
+
]
|
|
462
|
+
},
|
|
463
|
+
"data-optional": {
|
|
464
|
+
"values": [],
|
|
465
|
+
"flag": true
|
|
466
|
+
}
|
|
467
|
+
}
|
|
468
|
+
},
|
|
469
|
+
"lt-link": {
|
|
470
|
+
"component": "link",
|
|
471
|
+
"title": "Link",
|
|
472
|
+
"description": "Link style for navigation in running text. A CSS component with one class and no JavaScript.",
|
|
473
|
+
"link": "https://lo-tek.sobernetics.no/components/link/",
|
|
474
|
+
"content": "text",
|
|
475
|
+
"attributes": {}
|
|
476
|
+
},
|
|
477
|
+
"lt-list": {
|
|
478
|
+
"component": "list",
|
|
479
|
+
"title": "List",
|
|
480
|
+
"description": "Bulleted lists, numbered lists and lists without bullets. A CSS component with one class and no JavaScript.",
|
|
481
|
+
"link": "https://lo-tek.sobernetics.no/components/list/",
|
|
482
|
+
"content": "parts",
|
|
483
|
+
"parts": {
|
|
484
|
+
"item": {
|
|
485
|
+
"selector": "li",
|
|
486
|
+
"description": "One item in the list.",
|
|
487
|
+
"content": "free",
|
|
488
|
+
"multiple": true
|
|
489
|
+
}
|
|
490
|
+
},
|
|
491
|
+
"attributes": {
|
|
492
|
+
"data-variant": {
|
|
493
|
+
"values": [
|
|
494
|
+
"plain",
|
|
495
|
+
"divided"
|
|
496
|
+
],
|
|
497
|
+
"default": "default"
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
},
|
|
501
|
+
"lt-pagination": {
|
|
502
|
+
"component": "pagination",
|
|
503
|
+
"title": "Pagination",
|
|
504
|
+
"description": "Page navigation for long lists. A CSS component with two classes and no JavaScript.",
|
|
505
|
+
"link": "https://lo-tek.sobernetics.no/components/pagination/",
|
|
506
|
+
"content": "parts",
|
|
507
|
+
"parts": {
|
|
508
|
+
"item": {
|
|
509
|
+
"selector": "li",
|
|
510
|
+
"description": "One list item per page, arrow and gap.",
|
|
511
|
+
"content": "parts",
|
|
512
|
+
"multiple": true
|
|
513
|
+
},
|
|
514
|
+
"link": {
|
|
515
|
+
"selector": "li > a, li > button",
|
|
516
|
+
"description": "The link or button to a page, with the page number as text and an `aria-label` that says what it is. The current one has `aria-current=\"page\"`.",
|
|
517
|
+
"content": "text",
|
|
518
|
+
"multiple": true
|
|
519
|
+
},
|
|
520
|
+
"gap": {
|
|
521
|
+
"selector": ".lt-pagination__gap",
|
|
522
|
+
"description": "The gap where pages are left out.",
|
|
523
|
+
"content": "text",
|
|
524
|
+
"multiple": true,
|
|
525
|
+
"optional": true
|
|
526
|
+
}
|
|
527
|
+
},
|
|
528
|
+
"attributes": {}
|
|
529
|
+
},
|
|
530
|
+
"lt-pagination__gap": {
|
|
531
|
+
"component": "pagination",
|
|
532
|
+
"title": "Pagination",
|
|
533
|
+
"description": "Page navigation for long lists. A CSS component with two classes and no JavaScript.",
|
|
534
|
+
"link": "https://lo-tek.sobernetics.no/components/pagination/",
|
|
535
|
+
"content": "text",
|
|
536
|
+
"partOf": "lt-pagination",
|
|
537
|
+
"attributes": {}
|
|
538
|
+
},
|
|
539
|
+
"lt-paragraph": {
|
|
540
|
+
"component": "paragraph",
|
|
541
|
+
"title": "Paragraph",
|
|
542
|
+
"description": "Body text and lead paragraphs with a limited line length. A CSS component with one class and no JavaScript.",
|
|
543
|
+
"link": "https://lo-tek.sobernetics.no/components/paragraph/",
|
|
544
|
+
"content": "text",
|
|
545
|
+
"attributes": {
|
|
546
|
+
"data-variant": {
|
|
547
|
+
"values": [
|
|
548
|
+
"lead"
|
|
549
|
+
],
|
|
550
|
+
"default": "default"
|
|
551
|
+
},
|
|
552
|
+
"data-size": {
|
|
553
|
+
"values": [
|
|
554
|
+
"small",
|
|
555
|
+
"large"
|
|
556
|
+
],
|
|
557
|
+
"default": "medium"
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
},
|
|
561
|
+
"lt-progress": {
|
|
562
|
+
"component": "progress",
|
|
563
|
+
"title": "Progress",
|
|
564
|
+
"description": "A progress bar for something that has an end. CSS component with one class and no JavaScript.",
|
|
565
|
+
"link": "https://lo-tek.sobernetics.no/components/progress/",
|
|
566
|
+
"content": "none",
|
|
567
|
+
"attributes": {
|
|
568
|
+
"data-color": {
|
|
569
|
+
"values": [
|
|
570
|
+
"success",
|
|
571
|
+
"warning",
|
|
572
|
+
"danger"
|
|
573
|
+
]
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
},
|
|
577
|
+
"lt-radio": {
|
|
578
|
+
"component": "radio",
|
|
579
|
+
"title": "Radio",
|
|
580
|
+
"description": "Radio buttons for one choice among several. A CSS component with two classes and no JavaScript.",
|
|
581
|
+
"link": "https://lo-tek.sobernetics.no/components/radio/",
|
|
582
|
+
"content": "none",
|
|
583
|
+
"attributes": {
|
|
584
|
+
"data-state": {
|
|
585
|
+
"values": [
|
|
586
|
+
"invalid",
|
|
587
|
+
"success"
|
|
588
|
+
],
|
|
589
|
+
"default": "default"
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
},
|
|
593
|
+
"lt-radio-row": {
|
|
594
|
+
"component": "radio",
|
|
595
|
+
"title": "Radio",
|
|
596
|
+
"description": "Radio buttons for one choice among several. A CSS component with two classes and no JavaScript.",
|
|
597
|
+
"link": "https://lo-tek.sobernetics.no/components/radio/",
|
|
598
|
+
"content": "parts",
|
|
599
|
+
"parts": {
|
|
600
|
+
"control": {
|
|
601
|
+
"selector": "input[type='radio']",
|
|
602
|
+
"description": "The radio button, with its class.",
|
|
603
|
+
"content": "none",
|
|
604
|
+
"unique": true
|
|
605
|
+
},
|
|
606
|
+
"label": {
|
|
607
|
+
"selector": "label",
|
|
608
|
+
"description": "The label, wired to the control with `for`.",
|
|
609
|
+
"content": "text"
|
|
610
|
+
}
|
|
611
|
+
},
|
|
612
|
+
"attributes": {}
|
|
613
|
+
},
|
|
614
|
+
"lt-search": {
|
|
615
|
+
"component": "search",
|
|
616
|
+
"title": "Search",
|
|
617
|
+
"description": "A search field with a magnifying glass. A CSS component with two classes and no JavaScript.",
|
|
618
|
+
"link": "https://lo-tek.sobernetics.no/components/search/",
|
|
619
|
+
"content": "none",
|
|
620
|
+
"attributes": {
|
|
621
|
+
"data-state": {
|
|
622
|
+
"values": [
|
|
623
|
+
"invalid",
|
|
624
|
+
"success"
|
|
625
|
+
],
|
|
626
|
+
"default": "default"
|
|
627
|
+
}
|
|
628
|
+
}
|
|
629
|
+
},
|
|
630
|
+
"lt-search-row": {
|
|
631
|
+
"component": "search",
|
|
632
|
+
"title": "Search",
|
|
633
|
+
"description": "A search field with a magnifying glass. A CSS component with two classes and no JavaScript.",
|
|
634
|
+
"link": "https://lo-tek.sobernetics.no/components/search/",
|
|
635
|
+
"content": "parts",
|
|
636
|
+
"parts": {
|
|
637
|
+
"label": {
|
|
638
|
+
"selector": "label",
|
|
639
|
+
"description": "The label, wired with `for`. Often hidden with `lt-sr-only`.",
|
|
640
|
+
"content": "text"
|
|
641
|
+
},
|
|
642
|
+
"control": {
|
|
643
|
+
"selector": "input[type='search']",
|
|
644
|
+
"description": "The search field, with the classes `lt-input lt-search`.",
|
|
645
|
+
"content": "none",
|
|
646
|
+
"unique": true
|
|
647
|
+
},
|
|
648
|
+
"button": {
|
|
649
|
+
"selector": "button",
|
|
650
|
+
"description": "The search button.",
|
|
651
|
+
"content": "text",
|
|
652
|
+
"optional": true
|
|
653
|
+
}
|
|
654
|
+
},
|
|
655
|
+
"attributes": {}
|
|
656
|
+
},
|
|
657
|
+
"lt-select": {
|
|
658
|
+
"component": "select",
|
|
659
|
+
"title": "Select",
|
|
660
|
+
"description": "A dropdown list. CSS component with one class and no JavaScript.",
|
|
661
|
+
"link": "https://lo-tek.sobernetics.no/components/select/",
|
|
662
|
+
"content": "none",
|
|
663
|
+
"attributes": {
|
|
664
|
+
"data-state": {
|
|
665
|
+
"values": [
|
|
666
|
+
"invalid",
|
|
667
|
+
"success"
|
|
668
|
+
],
|
|
669
|
+
"default": "default"
|
|
670
|
+
},
|
|
671
|
+
"data-picker": {
|
|
672
|
+
"values": [
|
|
673
|
+
"styled"
|
|
674
|
+
],
|
|
675
|
+
"default": "auto"
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
},
|
|
679
|
+
"lt-skeleton": {
|
|
680
|
+
"component": "skeleton",
|
|
681
|
+
"title": "Skeleton",
|
|
682
|
+
"description": "A placeholder that shows the shape of content being loaded. A CSS component with one class and no JavaScript.",
|
|
683
|
+
"link": "https://lo-tek.sobernetics.no/components/skeleton/",
|
|
684
|
+
"content": "none",
|
|
685
|
+
"attributes": {
|
|
686
|
+
"data-variant": {
|
|
687
|
+
"values": [
|
|
688
|
+
"text",
|
|
689
|
+
"circle"
|
|
690
|
+
],
|
|
691
|
+
"default": "block"
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
},
|
|
695
|
+
"lt-skip-link": {
|
|
696
|
+
"component": "skip-link",
|
|
697
|
+
"title": "Skip Link",
|
|
698
|
+
"description": "A link that skips past the menu to the main content. A CSS component with one class and no JavaScript.",
|
|
699
|
+
"link": "https://lo-tek.sobernetics.no/components/skip-link/",
|
|
700
|
+
"content": "text",
|
|
701
|
+
"attributes": {}
|
|
702
|
+
},
|
|
703
|
+
"lt-spinner": {
|
|
704
|
+
"component": "spinner",
|
|
705
|
+
"title": "Spinner",
|
|
706
|
+
"description": "A wait indicator for something in progress. CSS component with one class and no JavaScript.",
|
|
707
|
+
"link": "https://lo-tek.sobernetics.no/components/spinner/",
|
|
708
|
+
"content": "none",
|
|
709
|
+
"attributes": {
|
|
710
|
+
"data-size": {
|
|
711
|
+
"values": [
|
|
712
|
+
"small",
|
|
713
|
+
"large"
|
|
714
|
+
],
|
|
715
|
+
"default": "medium"
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
},
|
|
719
|
+
"lt-sr-only": {
|
|
720
|
+
"component": "sr-only",
|
|
721
|
+
"title": "Sr Only",
|
|
722
|
+
"description": "Text only screen readers get. A CSS component with one class and no JavaScript.",
|
|
723
|
+
"link": "https://lo-tek.sobernetics.no/components/sr-only/",
|
|
724
|
+
"content": "text",
|
|
725
|
+
"attributes": {}
|
|
726
|
+
},
|
|
727
|
+
"lt-switch": {
|
|
728
|
+
"component": "switch",
|
|
729
|
+
"title": "Switch",
|
|
730
|
+
"description": "A switch for a setting that takes effect immediately. CSS component with two classes and no JavaScript.",
|
|
731
|
+
"link": "https://lo-tek.sobernetics.no/components/switch/",
|
|
732
|
+
"content": "none",
|
|
733
|
+
"attributes": {}
|
|
734
|
+
},
|
|
735
|
+
"lt-switch-row": {
|
|
736
|
+
"component": "switch",
|
|
737
|
+
"title": "Switch",
|
|
738
|
+
"description": "A switch for a setting that takes effect immediately. CSS component with two classes and no JavaScript.",
|
|
739
|
+
"link": "https://lo-tek.sobernetics.no/components/switch/",
|
|
740
|
+
"content": "parts",
|
|
741
|
+
"parts": {
|
|
742
|
+
"control": {
|
|
743
|
+
"selector": "input[role='switch']",
|
|
744
|
+
"description": "The switch, with its class.",
|
|
745
|
+
"content": "none",
|
|
746
|
+
"unique": true
|
|
747
|
+
},
|
|
748
|
+
"label": {
|
|
749
|
+
"selector": "label",
|
|
750
|
+
"description": "The label, wired to the control with `for`.",
|
|
751
|
+
"content": "text"
|
|
752
|
+
}
|
|
753
|
+
},
|
|
754
|
+
"attributes": {}
|
|
755
|
+
},
|
|
756
|
+
"lt-table": {
|
|
757
|
+
"component": "table",
|
|
758
|
+
"title": "Table",
|
|
759
|
+
"description": "A table for data in rows and columns. CSS component with two classes and no JavaScript.",
|
|
760
|
+
"link": "https://lo-tek.sobernetics.no/components/table/",
|
|
761
|
+
"content": "parts",
|
|
762
|
+
"parts": {
|
|
763
|
+
"caption": {
|
|
764
|
+
"selector": "> caption",
|
|
765
|
+
"description": "The name of the table.",
|
|
766
|
+
"content": "text",
|
|
767
|
+
"unique": true,
|
|
768
|
+
"optional": true
|
|
769
|
+
},
|
|
770
|
+
"head": {
|
|
771
|
+
"selector": "> thead",
|
|
772
|
+
"description": "The header row, with a `<th scope=\"col\">` per column.",
|
|
773
|
+
"content": "free",
|
|
774
|
+
"unique": true
|
|
775
|
+
},
|
|
776
|
+
"body": {
|
|
777
|
+
"selector": "tbody",
|
|
778
|
+
"description": "The rows, in one or more groups. A `<th scope=\"row\">` first in the row gives the row a name.",
|
|
779
|
+
"content": "free",
|
|
780
|
+
"multiple": true
|
|
781
|
+
},
|
|
782
|
+
"sort": {
|
|
783
|
+
"selector": "th > .lt-table__sort",
|
|
784
|
+
"description": "The button in a sortable header. `aria-sort` on the cell says which way.",
|
|
785
|
+
"content": "text",
|
|
786
|
+
"multiple": true,
|
|
787
|
+
"optional": true
|
|
788
|
+
}
|
|
789
|
+
},
|
|
790
|
+
"attributes": {
|
|
791
|
+
"data-variant": {
|
|
792
|
+
"values": [
|
|
793
|
+
"striped"
|
|
794
|
+
],
|
|
795
|
+
"default": "default"
|
|
796
|
+
},
|
|
797
|
+
"data-hoverable": {
|
|
798
|
+
"values": [],
|
|
799
|
+
"flag": true
|
|
800
|
+
}
|
|
801
|
+
}
|
|
802
|
+
},
|
|
803
|
+
"lt-table__sort": {
|
|
804
|
+
"component": "table",
|
|
805
|
+
"title": "Table",
|
|
806
|
+
"description": "A table for data in rows and columns. CSS component with two classes and no JavaScript.",
|
|
807
|
+
"link": "https://lo-tek.sobernetics.no/components/table/",
|
|
808
|
+
"content": "text",
|
|
809
|
+
"partOf": "lt-table",
|
|
810
|
+
"attributes": {}
|
|
811
|
+
},
|
|
812
|
+
"lt-table-scroll": {
|
|
813
|
+
"component": "table",
|
|
814
|
+
"title": "Table",
|
|
815
|
+
"description": "A table for data in rows and columns. CSS component with two classes and no JavaScript.",
|
|
816
|
+
"link": "https://lo-tek.sobernetics.no/components/table/",
|
|
817
|
+
"content": "parts",
|
|
818
|
+
"parts": {
|
|
819
|
+
"table": {
|
|
820
|
+
"selector": ".lt-table",
|
|
821
|
+
"description": "The table that can be scrolled sideways.",
|
|
822
|
+
"content": "free"
|
|
823
|
+
}
|
|
824
|
+
},
|
|
825
|
+
"attributes": {}
|
|
826
|
+
},
|
|
827
|
+
"lt-tag": {
|
|
828
|
+
"component": "tag",
|
|
829
|
+
"title": "Tag",
|
|
830
|
+
"description": "A tag for topics and filters. A CSS component with one class and no JavaScript.",
|
|
831
|
+
"link": "https://lo-tek.sobernetics.no/components/tag/",
|
|
832
|
+
"content": "text",
|
|
833
|
+
"attributes": {
|
|
834
|
+
"data-variant": {
|
|
835
|
+
"values": [
|
|
836
|
+
"filled"
|
|
837
|
+
],
|
|
838
|
+
"default": "outline"
|
|
839
|
+
},
|
|
840
|
+
"data-selectable": {
|
|
841
|
+
"values": [],
|
|
842
|
+
"flag": true
|
|
843
|
+
}
|
|
844
|
+
}
|
|
845
|
+
},
|
|
846
|
+
"lt-textarea": {
|
|
847
|
+
"component": "textarea",
|
|
848
|
+
"title": "Textarea",
|
|
849
|
+
"description": "A multi-line text field. A CSS component with one class and no JavaScript.",
|
|
850
|
+
"link": "https://lo-tek.sobernetics.no/components/textarea/",
|
|
851
|
+
"content": "none",
|
|
852
|
+
"attributes": {
|
|
853
|
+
"data-state": {
|
|
854
|
+
"values": [
|
|
855
|
+
"invalid",
|
|
856
|
+
"success"
|
|
857
|
+
],
|
|
858
|
+
"default": "default"
|
|
859
|
+
}
|
|
860
|
+
}
|
|
861
|
+
},
|
|
862
|
+
"lt-toggle-group": {
|
|
863
|
+
"component": "toggle-group",
|
|
864
|
+
"title": "Toggle Group",
|
|
865
|
+
"description": "A group where one option is selected at a time. A CSS component with two classes and no JavaScript.",
|
|
866
|
+
"link": "https://lo-tek.sobernetics.no/components/toggle-group/",
|
|
867
|
+
"content": "parts",
|
|
868
|
+
"parts": {
|
|
869
|
+
"legend": {
|
|
870
|
+
"selector": "> legend",
|
|
871
|
+
"description": "What the options choose between. Can be hidden with `lt-sr-only`, but must be there.",
|
|
872
|
+
"content": "text",
|
|
873
|
+
"unique": true
|
|
874
|
+
},
|
|
875
|
+
"option": {
|
|
876
|
+
"selector": ".lt-toggle-group__option",
|
|
877
|
+
"description": "One option: a `<label>` with the radio button and the text.",
|
|
878
|
+
"content": "free",
|
|
879
|
+
"multiple": true
|
|
880
|
+
},
|
|
881
|
+
"radio": {
|
|
882
|
+
"selector": ".lt-toggle-group__option > input[type='radio']",
|
|
883
|
+
"description": "The radio button in each option, with the same `name`.",
|
|
884
|
+
"content": "none",
|
|
885
|
+
"multiple": true
|
|
886
|
+
}
|
|
887
|
+
},
|
|
888
|
+
"attributes": {}
|
|
889
|
+
},
|
|
890
|
+
"lt-toggle-group__option": {
|
|
891
|
+
"component": "toggle-group",
|
|
892
|
+
"title": "Toggle Group",
|
|
893
|
+
"description": "A group where one option is selected at a time. A CSS component with two classes and no JavaScript.",
|
|
894
|
+
"link": "https://lo-tek.sobernetics.no/components/toggle-group/",
|
|
895
|
+
"content": "free",
|
|
896
|
+
"partOf": "lt-toggle-group",
|
|
897
|
+
"attributes": {}
|
|
898
|
+
},
|
|
899
|
+
"lt-tooltip": {
|
|
900
|
+
"component": "tooltip",
|
|
901
|
+
"title": "Tooltip",
|
|
902
|
+
"description": "A small help text shown on hover and focus. CSS component with two classes and no JavaScript.",
|
|
903
|
+
"link": "https://lo-tek.sobernetics.no/components/tooltip/",
|
|
904
|
+
"content": "parts",
|
|
905
|
+
"parts": {
|
|
906
|
+
"trigger": {
|
|
907
|
+
"selector": "[aria-describedby]",
|
|
908
|
+
"description": "The element the bubble describes, with `aria-describedby` pointing at the bubble's id.",
|
|
909
|
+
"content": "text"
|
|
910
|
+
},
|
|
911
|
+
"bubble": {
|
|
912
|
+
"selector": ".lt-tooltip__bubble",
|
|
913
|
+
"description": "The bubble, with `role=\"tooltip\"` and the id.",
|
|
914
|
+
"content": "text"
|
|
915
|
+
}
|
|
916
|
+
},
|
|
917
|
+
"attributes": {}
|
|
918
|
+
},
|
|
919
|
+
"lt-tooltip__bubble": {
|
|
920
|
+
"component": "tooltip",
|
|
921
|
+
"title": "Tooltip",
|
|
922
|
+
"description": "A small help text shown on hover and focus. CSS component with two classes and no JavaScript.",
|
|
923
|
+
"link": "https://lo-tek.sobernetics.no/components/tooltip/",
|
|
924
|
+
"content": "text",
|
|
925
|
+
"partOf": "lt-tooltip",
|
|
926
|
+
"attributes": {}
|
|
927
|
+
},
|
|
928
|
+
"lt-dialog": {
|
|
929
|
+
"component": "dialog",
|
|
930
|
+
"title": "Dialog",
|
|
931
|
+
"description": "Modal dialog built on the native dialog element. Six classes and no JavaScript, with an optional component for servers that cannot call showModal().",
|
|
932
|
+
"link": "https://lo-tek.sobernetics.no/components/dialog/",
|
|
933
|
+
"content": "free",
|
|
934
|
+
"parts": {
|
|
935
|
+
"header": {
|
|
936
|
+
"selector": ".lt-dialog__header",
|
|
937
|
+
"description": "The header, with the heading and the subtitle. `data-color` on the dialog colours it.",
|
|
938
|
+
"content": "parts",
|
|
939
|
+
"optional": true
|
|
940
|
+
},
|
|
941
|
+
"title": {
|
|
942
|
+
"selector": ".lt-dialog__title",
|
|
943
|
+
"description": "The heading, which `aria-labelledby` points to.",
|
|
944
|
+
"content": "text",
|
|
945
|
+
"optional": true
|
|
946
|
+
},
|
|
947
|
+
"subtitle": {
|
|
948
|
+
"selector": ".lt-dialog__subtitle",
|
|
949
|
+
"description": "The line below the heading, inside the header.",
|
|
950
|
+
"content": "text",
|
|
951
|
+
"optional": true
|
|
952
|
+
},
|
|
953
|
+
"body": {
|
|
954
|
+
"selector": ".lt-dialog__body",
|
|
955
|
+
"description": "The content, which scrolls when the dialog gets too tall. Must be a direct child.",
|
|
956
|
+
"content": "free",
|
|
957
|
+
"optional": true
|
|
958
|
+
},
|
|
959
|
+
"footer": {
|
|
960
|
+
"selector": ".lt-dialog__footer",
|
|
961
|
+
"description": "The row of buttons at the bottom, often a `<form method=\"dialog\">`.",
|
|
962
|
+
"content": "free",
|
|
963
|
+
"optional": true
|
|
964
|
+
}
|
|
965
|
+
},
|
|
966
|
+
"attributes": {
|
|
967
|
+
"data-color": {
|
|
968
|
+
"values": [
|
|
969
|
+
"brand",
|
|
970
|
+
"info",
|
|
971
|
+
"success",
|
|
972
|
+
"warning",
|
|
973
|
+
"danger"
|
|
974
|
+
],
|
|
975
|
+
"default": "neutral"
|
|
976
|
+
}
|
|
977
|
+
}
|
|
978
|
+
},
|
|
979
|
+
"lt-dialog__body": {
|
|
980
|
+
"component": "dialog",
|
|
981
|
+
"title": "Dialog",
|
|
982
|
+
"description": "Modal dialog built on the native dialog element. Six classes and no JavaScript, with an optional component for servers that cannot call showModal().",
|
|
983
|
+
"link": "https://lo-tek.sobernetics.no/components/dialog/",
|
|
984
|
+
"content": "free",
|
|
985
|
+
"partOf": "lt-dialog",
|
|
986
|
+
"attributes": {}
|
|
987
|
+
},
|
|
988
|
+
"lt-dialog__title": {
|
|
989
|
+
"component": "dialog",
|
|
990
|
+
"title": "Dialog",
|
|
991
|
+
"description": "Modal dialog built on the native dialog element. Six classes and no JavaScript, with an optional component for servers that cannot call showModal().",
|
|
992
|
+
"link": "https://lo-tek.sobernetics.no/components/dialog/",
|
|
993
|
+
"content": "text",
|
|
994
|
+
"partOf": "lt-dialog",
|
|
995
|
+
"attributes": {}
|
|
996
|
+
},
|
|
997
|
+
"lt-dialog__footer": {
|
|
998
|
+
"component": "dialog",
|
|
999
|
+
"title": "Dialog",
|
|
1000
|
+
"description": "Modal dialog built on the native dialog element. Six classes and no JavaScript, with an optional component for servers that cannot call showModal().",
|
|
1001
|
+
"link": "https://lo-tek.sobernetics.no/components/dialog/",
|
|
1002
|
+
"content": "free",
|
|
1003
|
+
"partOf": "lt-dialog",
|
|
1004
|
+
"attributes": {}
|
|
1005
|
+
},
|
|
1006
|
+
"lt-dialog__header": {
|
|
1007
|
+
"component": "dialog",
|
|
1008
|
+
"title": "Dialog",
|
|
1009
|
+
"description": "Modal dialog built on the native dialog element. Six classes and no JavaScript, with an optional component for servers that cannot call showModal().",
|
|
1010
|
+
"link": "https://lo-tek.sobernetics.no/components/dialog/",
|
|
1011
|
+
"content": "parts",
|
|
1012
|
+
"partOf": "lt-dialog",
|
|
1013
|
+
"parts": {
|
|
1014
|
+
"title": {
|
|
1015
|
+
"selector": ".lt-dialog__title",
|
|
1016
|
+
"description": "The heading.",
|
|
1017
|
+
"content": "text"
|
|
1018
|
+
},
|
|
1019
|
+
"subtitle": {
|
|
1020
|
+
"selector": ".lt-dialog__subtitle",
|
|
1021
|
+
"description": "The line below the heading.",
|
|
1022
|
+
"content": "text",
|
|
1023
|
+
"optional": true
|
|
1024
|
+
}
|
|
1025
|
+
},
|
|
1026
|
+
"attributes": {}
|
|
1027
|
+
},
|
|
1028
|
+
"lt-dialog__subtitle": {
|
|
1029
|
+
"component": "dialog",
|
|
1030
|
+
"title": "Dialog",
|
|
1031
|
+
"description": "Modal dialog built on the native dialog element. Six classes and no JavaScript, with an optional component for servers that cannot call showModal().",
|
|
1032
|
+
"link": "https://lo-tek.sobernetics.no/components/dialog/",
|
|
1033
|
+
"content": "text",
|
|
1034
|
+
"partOf": "lt-dialog",
|
|
1035
|
+
"attributes": {}
|
|
1036
|
+
},
|
|
1037
|
+
"lt-error-summary": {
|
|
1038
|
+
"component": "error-summary",
|
|
1039
|
+
"title": "Error Summary",
|
|
1040
|
+
"description": "Collects the errors in a form and takes the user to the field that failed. Frame component.",
|
|
1041
|
+
"link": "https://lo-tek.sobernetics.no/components/error-summary/",
|
|
1042
|
+
"content": "parts",
|
|
1043
|
+
"parts": {
|
|
1044
|
+
"title": {
|
|
1045
|
+
"selector": ".lt-error-summary__title",
|
|
1046
|
+
"description": "The heading, which says how many errors the form has.",
|
|
1047
|
+
"content": "text"
|
|
1048
|
+
},
|
|
1049
|
+
"list": {
|
|
1050
|
+
"selector": "ul",
|
|
1051
|
+
"description": "The list with one link per error.",
|
|
1052
|
+
"content": "parts"
|
|
1053
|
+
},
|
|
1054
|
+
"link": {
|
|
1055
|
+
"selector": "li a[href^='#']",
|
|
1056
|
+
"description": "The link to a field with an error, with the error message as text and the field's id after `#`.",
|
|
1057
|
+
"content": "text",
|
|
1058
|
+
"multiple": true
|
|
1059
|
+
}
|
|
1060
|
+
},
|
|
1061
|
+
"attributes": {}
|
|
1062
|
+
},
|
|
1063
|
+
"lt-error-summary__title": {
|
|
1064
|
+
"component": "error-summary",
|
|
1065
|
+
"title": "Error Summary",
|
|
1066
|
+
"description": "Collects the errors in a form and takes the user to the field that failed. Frame component.",
|
|
1067
|
+
"link": "https://lo-tek.sobernetics.no/components/error-summary/",
|
|
1068
|
+
"content": "text",
|
|
1069
|
+
"partOf": "lt-error-summary",
|
|
1070
|
+
"attributes": {}
|
|
1071
|
+
},
|
|
1072
|
+
"lt-popover": {
|
|
1073
|
+
"component": "popover",
|
|
1074
|
+
"title": "Popover",
|
|
1075
|
+
"description": "Panel that hangs below a button and closes itself. Frame component.",
|
|
1076
|
+
"link": "https://lo-tek.sobernetics.no/components/popover/",
|
|
1077
|
+
"content": "free",
|
|
1078
|
+
"attributes": {}
|
|
1079
|
+
},
|
|
1080
|
+
"lt-session-timeout": {
|
|
1081
|
+
"component": "session-timeout",
|
|
1082
|
+
"title": "Session Timeout",
|
|
1083
|
+
"description": "Warns before a logged-in session expires, and counts down. You write the dialog, the component keeps the time.",
|
|
1084
|
+
"link": "https://lo-tek.sobernetics.no/components/session-timeout/",
|
|
1085
|
+
"content": "parts",
|
|
1086
|
+
"parts": {
|
|
1087
|
+
"dialog": {
|
|
1088
|
+
"selector": ".lt-session-timeout__dialog",
|
|
1089
|
+
"description": "The dialog with the warning, with `role=\"alertdialog\"`.",
|
|
1090
|
+
"content": "parts"
|
|
1091
|
+
},
|
|
1092
|
+
"title": {
|
|
1093
|
+
"selector": ".lt-session-timeout__title",
|
|
1094
|
+
"description": "The heading in the dialog.",
|
|
1095
|
+
"content": "text",
|
|
1096
|
+
"optional": true
|
|
1097
|
+
},
|
|
1098
|
+
"text": {
|
|
1099
|
+
"selector": ".lt-session-timeout__text",
|
|
1100
|
+
"description": "The paragraph with the time remaining.",
|
|
1101
|
+
"content": "text"
|
|
1102
|
+
},
|
|
1103
|
+
"count": {
|
|
1104
|
+
"selector": ".lt-session-timeout__count",
|
|
1105
|
+
"description": "The number that counts down, inside the paragraph. The component fills it.",
|
|
1106
|
+
"content": "none"
|
|
1107
|
+
},
|
|
1108
|
+
"status": {
|
|
1109
|
+
"selector": "[role='status']",
|
|
1110
|
+
"description": "The announcement. Left empty, and the component fills it.",
|
|
1111
|
+
"content": "none"
|
|
1112
|
+
},
|
|
1113
|
+
"actions": {
|
|
1114
|
+
"selector": ".lt-session-timeout__actions",
|
|
1115
|
+
"description": "The button row, a `<form method=\"dialog\">`.",
|
|
1116
|
+
"content": "parts"
|
|
1117
|
+
},
|
|
1118
|
+
"button": {
|
|
1119
|
+
"selector": ".lt-session-timeout__actions button",
|
|
1120
|
+
"description": "The buttons that extend the session or log out.",
|
|
1121
|
+
"content": "text",
|
|
1122
|
+
"multiple": true
|
|
1123
|
+
}
|
|
1124
|
+
},
|
|
1125
|
+
"attributes": {}
|
|
1126
|
+
},
|
|
1127
|
+
"lt-session-timeout__dialog": {
|
|
1128
|
+
"component": "session-timeout",
|
|
1129
|
+
"title": "Session Timeout",
|
|
1130
|
+
"description": "Warns before a logged-in session expires, and counts down. You write the dialog, the component keeps the time.",
|
|
1131
|
+
"link": "https://lo-tek.sobernetics.no/components/session-timeout/",
|
|
1132
|
+
"content": "parts",
|
|
1133
|
+
"partOf": "lt-session-timeout",
|
|
1134
|
+
"parts": {
|
|
1135
|
+
"title": {
|
|
1136
|
+
"selector": ".lt-session-timeout__title",
|
|
1137
|
+
"description": "The heading.",
|
|
1138
|
+
"content": "text",
|
|
1139
|
+
"optional": true
|
|
1140
|
+
},
|
|
1141
|
+
"text": {
|
|
1142
|
+
"selector": ".lt-session-timeout__text",
|
|
1143
|
+
"description": "The paragraph with the time remaining.",
|
|
1144
|
+
"content": "text"
|
|
1145
|
+
},
|
|
1146
|
+
"count": {
|
|
1147
|
+
"selector": ".lt-session-timeout__count",
|
|
1148
|
+
"description": "The number that counts down, inside the paragraph.",
|
|
1149
|
+
"content": "none"
|
|
1150
|
+
},
|
|
1151
|
+
"status": {
|
|
1152
|
+
"selector": "[role='status']",
|
|
1153
|
+
"description": "The announcement, which the component fills.",
|
|
1154
|
+
"content": "none"
|
|
1155
|
+
},
|
|
1156
|
+
"actions": {
|
|
1157
|
+
"selector": ".lt-session-timeout__actions",
|
|
1158
|
+
"description": "The button row, a `<form method=\"dialog\">`.",
|
|
1159
|
+
"content": "parts"
|
|
1160
|
+
}
|
|
1161
|
+
},
|
|
1162
|
+
"attributes": {}
|
|
1163
|
+
},
|
|
1164
|
+
"lt-session-timeout__title": {
|
|
1165
|
+
"component": "session-timeout",
|
|
1166
|
+
"title": "Session Timeout",
|
|
1167
|
+
"description": "Warns before a logged-in session expires, and counts down. You write the dialog, the component keeps the time.",
|
|
1168
|
+
"link": "https://lo-tek.sobernetics.no/components/session-timeout/",
|
|
1169
|
+
"content": "text",
|
|
1170
|
+
"partOf": "lt-session-timeout",
|
|
1171
|
+
"attributes": {}
|
|
1172
|
+
},
|
|
1173
|
+
"lt-session-timeout__text": {
|
|
1174
|
+
"component": "session-timeout",
|
|
1175
|
+
"title": "Session Timeout",
|
|
1176
|
+
"description": "Warns before a logged-in session expires, and counts down. You write the dialog, the component keeps the time.",
|
|
1177
|
+
"link": "https://lo-tek.sobernetics.no/components/session-timeout/",
|
|
1178
|
+
"content": "text",
|
|
1179
|
+
"partOf": "lt-session-timeout",
|
|
1180
|
+
"attributes": {}
|
|
1181
|
+
},
|
|
1182
|
+
"lt-session-timeout__count": {
|
|
1183
|
+
"component": "session-timeout",
|
|
1184
|
+
"title": "Session Timeout",
|
|
1185
|
+
"description": "Warns before a logged-in session expires, and counts down. You write the dialog, the component keeps the time.",
|
|
1186
|
+
"link": "https://lo-tek.sobernetics.no/components/session-timeout/",
|
|
1187
|
+
"content": "none",
|
|
1188
|
+
"partOf": "lt-session-timeout",
|
|
1189
|
+
"attributes": {}
|
|
1190
|
+
},
|
|
1191
|
+
"lt-session-timeout__actions": {
|
|
1192
|
+
"component": "session-timeout",
|
|
1193
|
+
"title": "Session Timeout",
|
|
1194
|
+
"description": "Warns before a logged-in session expires, and counts down. You write the dialog, the component keeps the time.",
|
|
1195
|
+
"link": "https://lo-tek.sobernetics.no/components/session-timeout/",
|
|
1196
|
+
"content": "parts",
|
|
1197
|
+
"partOf": "lt-session-timeout",
|
|
1198
|
+
"parts": {
|
|
1199
|
+
"button": {
|
|
1200
|
+
"selector": "button",
|
|
1201
|
+
"description": "The buttons that extend the session or log out.",
|
|
1202
|
+
"content": "text",
|
|
1203
|
+
"multiple": true
|
|
1204
|
+
}
|
|
1205
|
+
},
|
|
1206
|
+
"attributes": {}
|
|
1207
|
+
},
|
|
1208
|
+
"lt-suggestion__list": {
|
|
1209
|
+
"component": "suggestion",
|
|
1210
|
+
"title": "Suggestion",
|
|
1211
|
+
"description": "Field with a suggestion list that narrows as the user types. Frame component.",
|
|
1212
|
+
"link": "https://lo-tek.sobernetics.no/components/suggestion/",
|
|
1213
|
+
"content": "parts",
|
|
1214
|
+
"parts": {
|
|
1215
|
+
"option": {
|
|
1216
|
+
"selector": "[role='option'], .lt-suggestion__option, > li:not([role])",
|
|
1217
|
+
"description": "One suggestion: the role or the class when they are there, otherwise an `<li>` without a role, which the component gives the class and the role. The list can be empty until the server fills it.",
|
|
1218
|
+
"content": "text",
|
|
1219
|
+
"multiple": true,
|
|
1220
|
+
"optional": true
|
|
1221
|
+
}
|
|
1222
|
+
},
|
|
1223
|
+
"attributes": {}
|
|
1224
|
+
},
|
|
1225
|
+
"lt-suggestion__option": {
|
|
1226
|
+
"component": "suggestion",
|
|
1227
|
+
"title": "Suggestion",
|
|
1228
|
+
"description": "Field with a suggestion list that narrows as the user types. Frame component.",
|
|
1229
|
+
"link": "https://lo-tek.sobernetics.no/components/suggestion/",
|
|
1230
|
+
"content": "text",
|
|
1231
|
+
"partOf": "lt-suggestion__list",
|
|
1232
|
+
"attributes": {}
|
|
1233
|
+
},
|
|
1234
|
+
"lt-suggestion__value": {
|
|
1235
|
+
"component": "suggestion",
|
|
1236
|
+
"title": "Suggestion",
|
|
1237
|
+
"description": "Field with a suggestion list that narrows as the user types. Frame component.",
|
|
1238
|
+
"link": "https://lo-tek.sobernetics.no/components/suggestion/",
|
|
1239
|
+
"content": "none",
|
|
1240
|
+
"attributes": {}
|
|
1241
|
+
},
|
|
1242
|
+
"lt-suggestion__empty": {
|
|
1243
|
+
"component": "suggestion",
|
|
1244
|
+
"title": "Suggestion",
|
|
1245
|
+
"description": "Field with a suggestion list that narrows as the user types. Frame component.",
|
|
1246
|
+
"link": "https://lo-tek.sobernetics.no/components/suggestion/",
|
|
1247
|
+
"content": "text",
|
|
1248
|
+
"attributes": {}
|
|
1249
|
+
},
|
|
1250
|
+
"lt-tabs__list": {
|
|
1251
|
+
"component": "tabs",
|
|
1252
|
+
"title": "Tabs",
|
|
1253
|
+
"description": "Tab list of links to their panels. Frame component.",
|
|
1254
|
+
"link": "https://lo-tek.sobernetics.no/components/tabs/",
|
|
1255
|
+
"content": "free",
|
|
1256
|
+
"parts": {
|
|
1257
|
+
"tab": {
|
|
1258
|
+
"selector": "a[role='tab'][href^='#'], a[href^='#']:not([role])",
|
|
1259
|
+
"description": "A tab: a link to its panel, such as `<a href=\"#attachments\">`. When the server has written `role=\"tab\"`, only the links with the role are tabs, and the list can hold other links. `role=\"tab\"` on something that is not a link is not a tab.",
|
|
1260
|
+
"content": "text",
|
|
1261
|
+
"multiple": true
|
|
1262
|
+
}
|
|
1263
|
+
},
|
|
1264
|
+
"attributes": {}
|
|
1265
|
+
},
|
|
1266
|
+
"lt-tabs__panel": {
|
|
1267
|
+
"component": "tabs",
|
|
1268
|
+
"title": "Tabs",
|
|
1269
|
+
"description": "Tab list of links to their panels. Frame component.",
|
|
1270
|
+
"link": "https://lo-tek.sobernetics.no/components/tabs/",
|
|
1271
|
+
"content": "free",
|
|
1272
|
+
"attributes": {}
|
|
1273
|
+
},
|
|
1274
|
+
"lt-connection-status": {
|
|
1275
|
+
"component": "connection-status",
|
|
1276
|
+
"title": "Connection Status",
|
|
1277
|
+
"description": "Tells the user when the connection to the server is gone. Standalone component.",
|
|
1278
|
+
"link": "https://lo-tek.sobernetics.no/components/connection-status/",
|
|
1279
|
+
"content": "none",
|
|
1280
|
+
"attributes": {}
|
|
1281
|
+
},
|
|
1282
|
+
"lt-connection-status__bar": {
|
|
1283
|
+
"component": "connection-status",
|
|
1284
|
+
"title": "Connection Status",
|
|
1285
|
+
"description": "Tells the user when the connection to the server is gone. Standalone component.",
|
|
1286
|
+
"link": "https://lo-tek.sobernetics.no/components/connection-status/",
|
|
1287
|
+
"content": "text",
|
|
1288
|
+
"attributes": {}
|
|
1289
|
+
},
|
|
1290
|
+
"lt-toast": {
|
|
1291
|
+
"component": "toast",
|
|
1292
|
+
"title": "Toast",
|
|
1293
|
+
"description": "A queue of short messages in the corner of the screen. Standalone component.",
|
|
1294
|
+
"link": "https://lo-tek.sobernetics.no/components/toast/",
|
|
1295
|
+
"content": "none",
|
|
1296
|
+
"attributes": {}
|
|
1297
|
+
},
|
|
1298
|
+
"lt-toast__message": {
|
|
1299
|
+
"component": "toast",
|
|
1300
|
+
"title": "Toast",
|
|
1301
|
+
"description": "A queue of short messages in the corner of the screen. Standalone component.",
|
|
1302
|
+
"link": "https://lo-tek.sobernetics.no/components/toast/",
|
|
1303
|
+
"content": "free",
|
|
1304
|
+
"attributes": {}
|
|
1305
|
+
},
|
|
1306
|
+
"lt-toast__close": {
|
|
1307
|
+
"component": "toast",
|
|
1308
|
+
"title": "Toast",
|
|
1309
|
+
"description": "A queue of short messages in the corner of the screen. Standalone component.",
|
|
1310
|
+
"link": "https://lo-tek.sobernetics.no/components/toast/",
|
|
1311
|
+
"content": "text",
|
|
1312
|
+
"attributes": {}
|
|
1313
|
+
},
|
|
1314
|
+
"lt-theme-control": {
|
|
1315
|
+
"component": "customising",
|
|
1316
|
+
"title": "Customising",
|
|
1317
|
+
"description": "Change colours, shape and size in LO-TEK without losing the changes on the next upgrade.",
|
|
1318
|
+
"link": "https://lo-tek.sobernetics.no/customising/",
|
|
1319
|
+
"content": "none",
|
|
1320
|
+
"attributes": {}
|
|
1321
|
+
}
|
|
1322
|
+
}
|