solid-ui 3.0.6 → 3.1.1-test.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/README.md +146 -2
- package/dist/acl/access-groups.js +1 -1
- package/dist/components/button/index.d.ts +1 -0
- package/dist/components/button/index.esm.js +546 -0
- package/dist/components/button/index.esm.js.map +1 -0
- package/dist/components/button/index.esm.min.js +268 -0
- package/dist/components/button/index.esm.min.js.map +1 -0
- package/dist/components/button/index.js +428 -0
- package/dist/components/button/index.js.map +1 -0
- package/dist/components/button/index.min.js +257 -0
- package/dist/components/button/index.min.js.map +1 -0
- package/dist/components/combobox/index.d.ts +1 -0
- package/dist/components/combobox/index.esm.js +953 -0
- package/dist/components/combobox/index.esm.js.map +1 -0
- package/dist/components/combobox/index.esm.min.js +339 -0
- package/dist/components/combobox/index.esm.min.js.map +1 -0
- package/dist/components/combobox/index.js +782 -0
- package/dist/components/combobox/index.js.map +1 -0
- package/dist/components/combobox/index.min.js +328 -0
- package/dist/components/combobox/index.min.js.map +1 -0
- package/dist/components/footer/index.d.ts +1 -0
- package/dist/components/footer/index.esm.js +24406 -0
- package/dist/components/footer/index.esm.js.map +1 -0
- package/dist/components/footer/index.esm.min.js +137 -0
- package/dist/components/footer/index.esm.min.js.map +1 -0
- package/dist/components/footer/index.js +23303 -0
- package/dist/components/footer/index.js.map +1 -0
- package/dist/components/footer/index.min.js +125 -0
- package/dist/components/footer/index.min.js.map +1 -0
- package/dist/components/header/index.d.ts +1 -0
- package/dist/components/header/index.esm.js +1936 -0
- package/dist/components/header/index.esm.js.map +1 -0
- package/dist/components/header/index.esm.min.js +1125 -0
- package/dist/components/header/index.esm.min.js.map +1 -0
- package/dist/components/header/index.js +1897 -0
- package/dist/components/header/index.js.map +1 -0
- package/dist/components/header/index.min.js +1126 -0
- package/dist/components/header/index.min.js.map +1 -0
- package/dist/components/loginButton/index.d.ts +1 -0
- package/dist/components/loginButton/index.esm.js +761 -0
- package/dist/components/loginButton/index.esm.js.map +1 -0
- package/dist/components/loginButton/index.esm.min.js +444 -0
- package/dist/components/loginButton/index.esm.min.js.map +1 -0
- package/dist/components/loginButton/index.js +743 -0
- package/dist/components/loginButton/index.js.map +1 -0
- package/dist/components/loginButton/index.min.js +444 -0
- package/dist/components/loginButton/index.min.js.map +1 -0
- package/dist/components/photoCapture/index.d.ts +1 -0
- package/dist/components/photoCapture/index.esm.js +966 -0
- package/dist/components/photoCapture/index.esm.js.map +1 -0
- package/dist/components/photoCapture/index.esm.min.js +304 -0
- package/dist/components/photoCapture/index.esm.min.js.map +1 -0
- package/dist/components/photoCapture/index.js +848 -0
- package/dist/components/photoCapture/index.js.map +1 -0
- package/dist/components/photoCapture/index.min.js +293 -0
- package/dist/components/photoCapture/index.min.js.map +1 -0
- package/dist/components/select/index.d.ts +1 -0
- package/dist/components/select/index.esm.js +939 -0
- package/dist/components/select/index.esm.js.map +1 -0
- package/dist/components/select/index.esm.min.js +370 -0
- package/dist/components/select/index.esm.min.js.map +1 -0
- package/dist/components/select/index.js +771 -0
- package/dist/components/select/index.js.map +1 -0
- package/dist/components/select/index.min.js +359 -0
- package/dist/components/select/index.min.js.map +1 -0
- package/dist/components/signupButton/index.d.ts +1 -0
- package/dist/components/signupButton/index.esm.js +270 -0
- package/dist/components/signupButton/index.esm.js.map +1 -0
- package/dist/components/signupButton/index.esm.min.js +82 -0
- package/dist/components/signupButton/index.esm.min.js.map +1 -0
- package/dist/components/signupButton/index.js +264 -0
- package/dist/components/signupButton/index.js.map +1 -0
- package/dist/components/signupButton/index.min.js +82 -0
- package/dist/components/signupButton/index.min.js.map +1 -0
- package/dist/footer/index.d.ts.map +1 -1
- package/dist/footer/index.js +8 -4
- package/dist/footer/index.js.map +1 -1
- package/dist/icons/v2/icons-svg/contactIcons.d.ts +3 -0
- package/dist/icons/v2/icons-svg/contactIcons.d.ts.map +1 -0
- package/dist/icons/v2/icons-svg/contactIcons.js +27 -0
- package/dist/icons/v2/icons-svg/contactIcons.js.map +1 -0
- package/dist/icons/v2/icons-svg/headerIcons.d.ts +18 -0
- package/dist/icons/v2/icons-svg/headerIcons.d.ts.map +1 -0
- package/dist/icons/v2/icons-svg/headerIcons.js +245 -0
- package/dist/icons/v2/icons-svg/headerIcons.js.map +1 -0
- package/dist/icons/v2/icons-svg/pngIcons.d.ts +3 -0
- package/dist/icons/v2/icons-svg/pngIcons.d.ts.map +1 -0
- package/dist/icons/v2/icons-svg/pngIcons.js +4 -0
- package/dist/icons/v2/icons-svg/pngIcons.js.map +1 -0
- package/dist/icons/v2/icons-svg/profileIcons.d.ts +23 -0
- package/dist/icons/v2/icons-svg/profileIcons.d.ts.map +1 -0
- package/dist/icons/v2/icons-svg/profileIcons.js +317 -0
- package/dist/icons/v2/icons-svg/profileIcons.js.map +1 -0
- package/dist/login/login.d.ts.map +1 -1
- package/dist/login/login.js +12 -2
- package/dist/login/login.js.map +1 -1
- package/dist/matrix/matrix.js.map +1 -1
- package/dist/pad.d.ts.map +1 -1
- package/dist/pad.js +13 -13
- package/dist/pad.js.map +1 -1
- package/dist/solid-ui.esm.js +9627 -12206
- package/dist/solid-ui.esm.js.map +1 -1
- package/dist/solid-ui.esm.min.js +15 -14
- package/dist/solid-ui.esm.min.js.map +1 -1
- package/dist/solid-ui.js +12621 -14833
- package/dist/solid-ui.js.map +1 -1
- package/dist/solid-ui.min.js +23 -22
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/tabs.js +2 -2
- package/dist/tabs.js.map +1 -1
- package/dist/utils/headerFooterHelpers.d.ts.map +1 -1
- package/dist/utils/headerFooterHelpers.js +11 -2
- package/dist/utils/headerFooterHelpers.js.map +1 -1
- package/dist/v2/components/actions/button/Button.d.ts +97 -0
- package/dist/v2/components/actions/button/Button.d.ts.map +1 -0
- package/dist/v2/components/actions/button/Button.js +325 -0
- package/dist/v2/components/actions/button/Button.js.map +1 -0
- package/dist/v2/components/actions/button/Button.test.d.ts +2 -0
- package/dist/v2/components/actions/button/Button.test.d.ts.map +1 -0
- package/dist/v2/components/actions/button/Button.test.js +117 -0
- package/dist/v2/components/actions/button/Button.test.js.map +1 -0
- package/dist/v2/components/actions/button/index.d.ts +8 -0
- package/dist/v2/components/actions/button/index.d.ts.map +1 -0
- package/dist/v2/components/actions/button/index.js +7 -0
- package/dist/v2/components/actions/button/index.js.map +1 -0
- package/dist/v2/components/auth/loginButton/LoginButton.d.ts +62 -0
- package/dist/v2/components/auth/loginButton/LoginButton.d.ts.map +1 -0
- package/dist/v2/components/auth/loginButton/LoginButton.js +539 -0
- package/dist/v2/components/auth/loginButton/LoginButton.js.map +1 -0
- package/dist/v2/components/auth/loginButton/LoginButton.test.d.ts +2 -0
- package/dist/v2/components/auth/loginButton/LoginButton.test.d.ts.map +1 -0
- package/dist/v2/components/auth/loginButton/LoginButton.test.js +53 -0
- package/dist/v2/components/auth/loginButton/LoginButton.test.js.map +1 -0
- package/dist/v2/components/auth/loginButton/downArrow.d.ts +2 -0
- package/dist/v2/components/auth/loginButton/downArrow.d.ts.map +1 -0
- package/dist/v2/components/auth/loginButton/downArrow.js +10 -0
- package/dist/v2/components/auth/loginButton/downArrow.js.map +1 -0
- package/dist/v2/components/auth/loginButton/index.d.ts +3 -0
- package/dist/v2/components/auth/loginButton/index.d.ts.map +1 -0
- package/dist/v2/components/auth/loginButton/index.js +7 -0
- package/dist/v2/components/auth/loginButton/index.js.map +1 -0
- package/dist/v2/components/auth/signupButton/SignupButton.d.ts +36 -0
- package/dist/v2/components/auth/signupButton/SignupButton.d.ts.map +1 -0
- package/dist/v2/components/auth/signupButton/SignupButton.js +84 -0
- package/dist/v2/components/auth/signupButton/SignupButton.js.map +1 -0
- package/dist/v2/components/auth/signupButton/SignupButton.test.d.ts +2 -0
- package/dist/v2/components/auth/signupButton/SignupButton.test.d.ts.map +1 -0
- package/dist/v2/components/auth/signupButton/SignupButton.test.js +49 -0
- package/dist/v2/components/auth/signupButton/SignupButton.test.js.map +1 -0
- package/dist/v2/components/auth/signupButton/index.d.ts +3 -0
- package/dist/v2/components/auth/signupButton/index.d.ts.map +1 -0
- package/dist/v2/components/auth/signupButton/index.js +7 -0
- package/dist/v2/components/auth/signupButton/index.js.map +1 -0
- package/dist/v2/components/forms/combobox/Combobox.d.ts +82 -0
- package/dist/v2/components/forms/combobox/Combobox.d.ts.map +1 -0
- package/dist/v2/components/forms/combobox/Combobox.js +506 -0
- package/dist/v2/components/forms/combobox/Combobox.js.map +1 -0
- package/dist/v2/components/forms/combobox/Combobox.test.d.ts +2 -0
- package/dist/v2/components/forms/combobox/Combobox.test.d.ts.map +1 -0
- package/dist/v2/components/forms/combobox/Combobox.test.js +201 -0
- package/dist/v2/components/forms/combobox/Combobox.test.js.map +1 -0
- package/dist/v2/components/forms/combobox/comboboxTypes.d.ts +6 -0
- package/dist/v2/components/forms/combobox/comboboxTypes.d.ts.map +1 -0
- package/dist/v2/components/forms/combobox/comboboxTypes.js +2 -0
- package/dist/v2/components/forms/combobox/comboboxTypes.js.map +1 -0
- package/dist/v2/components/forms/combobox/index.d.ts +3 -0
- package/dist/v2/components/forms/combobox/index.d.ts.map +1 -0
- package/dist/v2/components/forms/combobox/index.js +7 -0
- package/dist/v2/components/forms/combobox/index.js.map +1 -0
- package/dist/v2/components/forms/select/Select.d.ts +68 -0
- package/dist/v2/components/forms/select/Select.d.ts.map +1 -0
- package/dist/v2/components/forms/select/Select.js +499 -0
- package/dist/v2/components/forms/select/Select.js.map +1 -0
- package/dist/v2/components/forms/select/Select.test.d.ts +2 -0
- package/dist/v2/components/forms/select/Select.test.d.ts.map +1 -0
- package/dist/v2/components/forms/select/Select.test.js +168 -0
- package/dist/v2/components/forms/select/Select.test.js.map +1 -0
- package/dist/v2/components/forms/select/index.d.ts +3 -0
- package/dist/v2/components/forms/select/index.d.ts.map +1 -0
- package/dist/v2/components/forms/select/index.js +7 -0
- package/dist/v2/components/forms/select/index.js.map +1 -0
- package/dist/v2/components/forms/shared/downArrow.d.ts +2 -0
- package/dist/v2/components/forms/shared/downArrow.d.ts.map +1 -0
- package/dist/v2/components/forms/shared/downArrow.js +10 -0
- package/dist/v2/components/forms/shared/downArrow.js.map +1 -0
- package/dist/v2/components/forms/shared/keyboard.d.ts +7 -0
- package/dist/v2/components/forms/shared/keyboard.d.ts.map +1 -0
- package/dist/v2/components/forms/shared/keyboard.js +56 -0
- package/dist/v2/components/forms/shared/keyboard.js.map +1 -0
- package/dist/v2/components/forms/shared/listboxStyles.d.ts +2 -0
- package/dist/v2/components/forms/shared/listboxStyles.d.ts.map +1 -0
- package/dist/v2/components/forms/shared/listboxStyles.js +96 -0
- package/dist/v2/components/forms/shared/listboxStyles.js.map +1 -0
- package/dist/v2/components/forms/shared/listboxTemplate.d.ts +11 -0
- package/dist/v2/components/forms/shared/listboxTemplate.d.ts.map +1 -0
- package/dist/v2/components/forms/shared/listboxTemplate.js +37 -0
- package/dist/v2/components/forms/shared/listboxTemplate.js.map +1 -0
- package/dist/v2/components/forms/shared/optionTypes.d.ts +6 -0
- package/dist/v2/components/forms/shared/optionTypes.d.ts.map +1 -0
- package/dist/v2/components/forms/shared/optionTypes.js +2 -0
- package/dist/v2/components/forms/shared/optionTypes.js.map +1 -0
- package/dist/v2/components/layout/footer/Footer.d.ts +60 -0
- package/dist/v2/components/layout/footer/Footer.d.ts.map +1 -0
- package/dist/v2/components/layout/footer/Footer.js +148 -0
- package/dist/v2/components/layout/footer/Footer.js.map +1 -0
- package/dist/v2/components/layout/footer/Footer.test.d.ts +2 -0
- package/dist/v2/components/layout/footer/Footer.test.d.ts.map +1 -0
- package/dist/v2/components/layout/footer/Footer.test.js +53 -0
- package/dist/v2/components/layout/footer/Footer.test.js.map +1 -0
- package/dist/v2/components/layout/footer/index.d.ts +3 -0
- package/dist/v2/components/layout/footer/index.d.ts.map +1 -0
- package/dist/v2/components/layout/footer/index.js +7 -0
- package/dist/v2/components/layout/footer/index.js.map +1 -0
- package/dist/v2/components/layout/header/Header.d.ts +155 -0
- package/dist/v2/components/layout/header/Header.d.ts.map +1 -0
- package/dist/v2/components/layout/header/Header.js +845 -0
- package/dist/v2/components/layout/header/Header.js.map +1 -0
- package/dist/v2/components/layout/header/header.test.d.ts +2 -0
- package/dist/v2/components/layout/header/header.test.d.ts.map +1 -0
- package/dist/v2/components/layout/header/header.test.js +242 -0
- package/dist/v2/components/layout/header/header.test.js.map +1 -0
- package/dist/v2/components/layout/header/index.d.ts +4 -0
- package/dist/v2/components/layout/header/index.d.ts.map +1 -0
- package/dist/v2/components/layout/header/index.js +7 -0
- package/dist/v2/components/layout/header/index.js.map +1 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts +200 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts.map +1 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.js +723 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.js.map +1 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts +2 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts.map +1 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.test.js +157 -0
- package/dist/v2/components/media/photoCapture/PhotoCapture.test.js.map +1 -0
- package/dist/v2/components/media/photoCapture/index.d.ts +3 -0
- package/dist/v2/components/media/photoCapture/index.d.ts.map +1 -0
- package/dist/v2/components/media/photoCapture/index.js +7 -0
- package/dist/v2/components/media/photoCapture/index.js.map +1 -0
- package/dist/versionInfo.js +15 -15
- package/dist/widgets/buttons.d.ts +10 -3
- package/dist/widgets/buttons.d.ts.map +1 -1
- package/dist/widgets/buttons.js +81 -7
- package/dist/widgets/buttons.js.map +1 -1
- package/package.json +139 -46
package/README.md
CHANGED
|
@@ -17,9 +17,12 @@ See [Forms introduction](./docs/FormsReadme.md) for UI vocabulary implementation
|
|
|
17
17
|
- [Use Directly in Browser](#use-directly-in-a-browser)
|
|
18
18
|
- [UMD Bundle](#umd-bundle-global-variable)
|
|
19
19
|
- [ESM Bundle](#esm-bundle-import-as-module)
|
|
20
|
-
- [
|
|
20
|
+
- [Web Components](#web-components)
|
|
21
|
+
- [solid-ui-header](#solid-ui-header)
|
|
22
|
+
- [Development](#development)
|
|
21
23
|
- [Testing](#adding-tests)
|
|
22
24
|
- [Further Documentation](#further-documentation)
|
|
25
|
+
- [Generative AI usage](#generative-ai-usage)
|
|
23
26
|
|
|
24
27
|
|
|
25
28
|
## Getting started
|
|
@@ -66,6 +69,8 @@ Solid-UI provides both **UMD** and **ESM** bundles for direct browser usage. Bot
|
|
|
66
69
|
|
|
67
70
|
### UMD Bundle (Global Variable)
|
|
68
71
|
|
|
72
|
+
If you use the legacy UMD bundle (`solid-ui.js` / `solid-ui.min.js`), `rdflib` must define `window.$rdf` before `solid-ui` loads. If `rdflib` is missing, `solid-ui` will throw `ReferenceError: $rdf is not defined`.
|
|
73
|
+
|
|
69
74
|
Load via `<script>` tags and access through global variables `window.$rdf`, `window.SolidLogic`, and `window.UI`.
|
|
70
75
|
|
|
71
76
|
```html
|
|
@@ -253,7 +258,101 @@ Use import maps for cleaner module specifiers:
|
|
|
253
258
|
</html>
|
|
254
259
|
```
|
|
255
260
|
|
|
256
|
-
|
|
261
|
+
## Web Components
|
|
262
|
+
|
|
263
|
+
solid-ui ships self-contained Lit-based custom elements as subpath exports. Each component is independently importable, registers its custom element on import, and ships its own styles encapsulated in a Shadow DOM.
|
|
264
|
+
|
|
265
|
+
> Component UMD bundles do not export a shared global like `window.UI`. They only register the custom element on import, while the legacy main bundle still provides the `UI` global.
|
|
266
|
+
|
|
267
|
+
### solid-ui-header
|
|
268
|
+
|
|
269
|
+
A header bar with branding, auth state (logged-out / logged-in), an account dropdown, an optional logout icon, and a desktop-only help menu.
|
|
270
|
+
|
|
271
|
+
**Subpath export:** `solid-ui/components/header`
|
|
272
|
+
|
|
273
|
+
```typescript
|
|
274
|
+
import { Header } from 'solid-ui/components/header'
|
|
275
|
+
import type { HeaderMenuItem, HeaderAccountMenuItem, HeaderAuthState } from 'solid-ui/components/header'
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
```html
|
|
279
|
+
<solid-ui-header theme="dark" layout="desktop" brand-link="/">
|
|
280
|
+
<a slot="help-menu" href="/help">Help</a>
|
|
281
|
+
</solid-ui-header>
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
Importing this module automatically registers `<solid-ui-header>` as a custom element.
|
|
285
|
+
|
|
286
|
+
### solid-ui-login-button
|
|
287
|
+
|
|
288
|
+
A standalone login button that encapsulates the Solid OIDC login flow and emits `login-success` when authentication succeeds.
|
|
289
|
+
|
|
290
|
+
**Subpath export:** `solid-ui/components/login-button`
|
|
291
|
+
|
|
292
|
+
```typescript
|
|
293
|
+
import { LoginButton } from 'solid-ui/components/login-button'
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
```html
|
|
297
|
+
<solid-ui-login-button label="Log in" issuer-url="https://solidcommunity.net" icon="https://example.com/login-icon.svg"></solid-ui-login-button>
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
```typescript
|
|
301
|
+
const loginButton = document.querySelector('solid-ui-login-button') as LoginButton
|
|
302
|
+
loginButton.addEventListener('login-success', (event: CustomEvent) => {
|
|
303
|
+
console.log('Logged in as', event.detail.webId)
|
|
304
|
+
})
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
### solid-ui-signup-button
|
|
308
|
+
|
|
309
|
+
A standalone sign-up button that opens a signup URL in a new browser tab.
|
|
310
|
+
|
|
311
|
+
**Subpath export:** `solid-ui/components/signup-button`
|
|
312
|
+
|
|
313
|
+
```typescript
|
|
314
|
+
import { SignupButton } from 'solid-ui/components/signup-button'
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
```html
|
|
318
|
+
<solid-ui-signup-button label="Get a Pod" signup-url="https://solidproject.org/get_a_pod" icon="https://example.com/icon.svg"></solid-ui-signup-button>
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
### Component build pipeline
|
|
322
|
+
|
|
323
|
+
Web components use a two-stage build to produce a clean public runtime layout while keeping internal TypeScript artifacts separate:
|
|
324
|
+
|
|
325
|
+
1. **`scripts/component-manifest.mjs`** is the source of truth for v2 web components. It defines the component entrypoints used by webpack and the public subpath names exposed from the package.
|
|
326
|
+
2. **webpack** (`npm run build-dist`) bundles each component entrypoint from the manifest and emits the runtime files to `dist/components/<name>/index.js` and `dist/components/<name>/index.esm.js`.
|
|
327
|
+
3. **tsc** (`npm run build-js`) emits internal declaration and JS artifacts mirroring the source tree under `dist/v2/components/<name>/`.
|
|
328
|
+
4. **`scripts/build-component-dts.mjs`** (runs automatically after tsc as part of `postbuild-js`) writes thin public declaration wrappers at `dist/components/<name>/index.d.ts`, re-exporting from the internal `dist/v2/components/<name>/` output.
|
|
329
|
+
5. **`scripts/sync-component-exports.mjs`** keeps the `package.json` `exports` map aligned with the manifest. It runs automatically as part of `npm run build` and `npm version` workflows.
|
|
330
|
+
|
|
331
|
+
The legacy main bundle remains a special case. In [webpack.config.mjs](webpack.config.mjs) only the `main` entry keeps the UMD `UI` global export; component entries are generated from the manifest and built as standalone scripts so they do not clobber one another when loaded directly.
|
|
332
|
+
|
|
333
|
+
This keeps the `package.json` subpath export fully aligned while exposing only the public `dist/components/...` layout:
|
|
334
|
+
|
|
335
|
+
```json
|
|
336
|
+
"./components/header": {
|
|
337
|
+
"types": "./dist/components/header/index.d.ts",
|
|
338
|
+
"import": "./dist/components/header/index.esm.js",
|
|
339
|
+
"require": "./dist/components/header/index.js"
|
|
340
|
+
}
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
Consumers never import from `dist/v2/components/...`; that path is an internal build artifact only.
|
|
344
|
+
|
|
345
|
+
### Adding a new web component
|
|
346
|
+
|
|
347
|
+
When adding a new v2 component:
|
|
348
|
+
|
|
349
|
+
1. Create the component folder under `src/v2/components/` with its `index.ts` entrypoint. Components can be grouped in nested directories such as `src/v2/components/forms/select/`, `src/v2/components/auth/loginButton/`, or `src/v2/components/layout/header/`.
|
|
350
|
+
2. Add one record to `scripts/component-manifest.mjs`. If the component lives in a nested directory, set its `sourcePath` in the manifest to match that grouped path.
|
|
351
|
+
3. Run `npm run sync-component-exports` if you want to update `package.json` immediately, or just run `npm run build` and let the build do it automatically.
|
|
352
|
+
|
|
353
|
+
You should not need to hand-edit the webpack component entry list or the `package.json` component export map anymore.
|
|
354
|
+
|
|
355
|
+
## Development
|
|
257
356
|
|
|
258
357
|
When developing a component in solid-ui you can test it in isolation using storybook
|
|
259
358
|
|
|
@@ -286,3 +385,48 @@ The following document gives guidance on how to add and perform testing in solid
|
|
|
286
385
|
## Further documentation
|
|
287
386
|
|
|
288
387
|
- [Some code know-how](https://github.com/SolidOS/solidos/wiki/2.-Solid-UI-know-how)
|
|
388
|
+
|
|
389
|
+
## Generative AI usage
|
|
390
|
+
The SolidOS team is using GitHub Copilot integrated in Visual Studio Code.
|
|
391
|
+
We have added comments in the code to make it explicit which parts are 100% written by AI.
|
|
392
|
+
|
|
393
|
+
### Prompt usage history:
|
|
394
|
+
|
|
395
|
+
* Raptor mini: If I want to make the header a web component with a self contained CSS which only consumes CSS variables from a theme, how would I do this?
|
|
396
|
+
|
|
397
|
+
* Raptor mini: Go ahead and create a header web component, for backward compatibility keep the current code too.
|
|
398
|
+
In the new header component I need to be flexible and receive from consumer - the layout (mobile or desktop) and the theme (light or dark) and its according CSS variables for light to dark.
|
|
399
|
+
|
|
400
|
+
* Raptor mini: Propose code. how about webpack config for distribution?
|
|
401
|
+
|
|
402
|
+
* Raptor mini: pls add a readme in the component documenting it usage and test and all
|
|
403
|
+
|
|
404
|
+
* Raptor mini: the helpMenuList should be menu items inside the help icon drop down menu
|
|
405
|
+
|
|
406
|
+
* Raptor mini: When I am not logged in I want the header to display: Log in button and Sign Up button.
|
|
407
|
+
When the user is logged in, there is only one button, a drop down button called Accounts. The icon of the button is the avatar of the profile and it displays a list of available accounts of the user.
|
|
408
|
+
I want this all to be presented flexible in the component.
|
|
409
|
+
|
|
410
|
+
* Claude Sonnet 4.6: create a LitElement also for the signupButton in the SignupButton.ts based on the signup.js code and wire it into the header like you did the loginButton.
|
|
411
|
+
|
|
412
|
+
* Raptor mini: when we are on layout mobile we do not want to display the help menu at all.
|
|
413
|
+
|
|
414
|
+
* Raptor mini: Create for me a footer Lit Component in tsy style of the components I have and under v2. Take the code from this index.ts to start with.
|
|
415
|
+
|
|
416
|
+
* Raptor mini: Good. Now, I want the footer to be a rectangular with round corners, grey background and it should have an adjustable position.
|
|
417
|
+
|
|
418
|
+
* Raptor mini: The content of the footer should be different upon loggedin or not.
|
|
419
|
+
If not logged in, it should say:
|
|
420
|
+
Title Public View
|
|
421
|
+
You are viewving this profile as a guest,
|
|
422
|
+
And if logged in:
|
|
423
|
+
Title: Logged in View
|
|
424
|
+
You are logged in as nameOfLoggedIn user.
|
|
425
|
+
|
|
426
|
+
* Raptor mini: add a readme to the Footer component with example.
|
|
427
|
+
|
|
428
|
+
* Claude Sonnet 4.6: Make the drop down as a list under the input field and enlarge the pop up, make it higher, adjustable to fit the drop down. And make the drop down arrow area larger
|
|
429
|
+
|
|
430
|
+
* GPT-5.4 Model: can you wire up the keyboard interactions and aria attributes for Select?
|
|
431
|
+
|
|
432
|
+
* GPT-5.4 Model: Take the code from /Users/sharon/2025Dev/solid-ui/src/media/media-capture.ts and make it a web component. Make it work in forms as well as not. Make it configurable and follow LoginButton.
|
|
@@ -230,7 +230,7 @@ export class AccessGroups {
|
|
|
230
230
|
? `Detected RDF types: ${detectedTypes.join(', ')}`
|
|
231
231
|
: 'No RDF type was detected for this URI.';
|
|
232
232
|
const error = `Error: Failed to add access target: ${uri} is not a recognized ACL target type.` +
|
|
233
|
-
|
|
233
|
+
' Expected one of: vcard:WebID, vcard:Group, foaf:Person, foaf:Agent, solid:AppProvider, solid:AppProviderClass, or recognized ACL classes.' +
|
|
234
234
|
' Hint: try dropping a WebID profile URI, a vcard:Group URI, or a web app origin.' +
|
|
235
235
|
typeDetails;
|
|
236
236
|
debug.error(error);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../../v2/components/actions/button/index';
|