@golemui/gui-lit 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +529 -0
  2. package/README.md +7 -0
  3. package/accordion.element-D1RfC2ew.js +92 -0
  4. package/alert.element-B4rpyqGV.js +55 -0
  5. package/button.element-BnUBVNSH.js +58 -0
  6. package/calendar.element-D7mAbpAa.js +70 -0
  7. package/checkbox.element--Kc7sWBx.js +65 -0
  8. package/currency.element-D9dyGRBH.js +71 -0
  9. package/date-picker.element-Dcs5OpxN.js +136 -0
  10. package/date.element-na_Uywms.js +74 -0
  11. package/default-list-item-renderer-DNVEjKSX.js +23 -0
  12. package/dropdown.element-Cfj40aJz.js +225 -0
  13. package/flex.element-BSMOum-h.js +65 -0
  14. package/index.d.ts +2 -0
  15. package/index.js +2254 -0
  16. package/index.umd.cjs +535 -0
  17. package/lib/components/accordion.element.d.ts +21 -0
  18. package/lib/components/alert.element.d.ts +16 -0
  19. package/lib/components/button.element.d.ts +15 -0
  20. package/lib/components/calendar.element.d.ts +16 -0
  21. package/lib/components/checkbox.element.d.ts +17 -0
  22. package/lib/components/currency.element.d.ts +17 -0
  23. package/lib/components/date-picker.element.d.ts +26 -0
  24. package/lib/components/date.element.d.ts +18 -0
  25. package/lib/components/default-list-item-renderer.d.ts +2 -0
  26. package/lib/components/dropdown.element.d.ts +38 -0
  27. package/lib/components/flex.element.d.ts +16 -0
  28. package/lib/components/form.element.d.ts +21 -0
  29. package/lib/components/list.element.d.ts +25 -0
  30. package/lib/components/number.element.d.ts +17 -0
  31. package/lib/components/password.element.d.ts +17 -0
  32. package/lib/components/radiogroup.element.d.ts +17 -0
  33. package/lib/components/range-calendar.element.d.ts +16 -0
  34. package/lib/components/renderer.element.d.ts +15 -0
  35. package/lib/components/repeater.element.d.ts +18 -0
  36. package/lib/components/select.element.d.ts +18 -0
  37. package/lib/components/tabs.element.d.ts +27 -0
  38. package/lib/components/textarea.element.d.ts +17 -0
  39. package/lib/components/textinput.element.d.ts +17 -0
  40. package/lib/components/toggle.element.d.ts +17 -0
  41. package/lib/widget.loaders.d.ts +4 -0
  42. package/list.element--aj6sNNU.js +138 -0
  43. package/number.element-Bl5YReaL.js +69 -0
  44. package/package.json +34 -0
  45. package/password.element-CKmcH8Gn.js +70 -0
  46. package/radiogroup.element-Cn1lyyVE.js +67 -0
  47. package/range-calendar.element-C2YUElqM.js +70 -0
  48. package/renderer.element-B7AjPqr2.js +43 -0
  49. package/repeater.element-BfwzCooC.js +83 -0
  50. package/select.element-LWiqYxzA.js +73 -0
  51. package/tabs.element-DYg1wAz9.js +158 -0
  52. package/textarea.element-BXc-rLZE.js +70 -0
  53. package/textinput.element-x9LYeW8B.js +66 -0
  54. package/toggle.element-BP4YKWyR.js +65 -0
@@ -0,0 +1,21 @@
1
+ import { AccordionProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class AccordionElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.LayoutWidget;
8
+ activeSections: {
9
+ [key: string]: boolean;
10
+ };
11
+ formContext: Lit.LitFormContext<any>;
12
+ adapter: Lit.LayoutWidgetAdapter<AccordionProps>;
13
+ subscriptions: Subscription[];
14
+ createRenderRoot(): this;
15
+ connectedCallback(): void;
16
+ onClickButton(uid: string): void;
17
+ getChild(uid: string): Core.FormWidget<string>;
18
+ updated(changedProperties: any): void;
19
+ render(): import('lit-html').TemplateResult<1>;
20
+ disconnectedCallback(): void;
21
+ }
@@ -0,0 +1,16 @@
1
+ import { LitElement } from 'lit';
2
+ import { AlertProps } from '@golemui/gui-shared';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class AlertElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.DisplayWidget;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.DisplayWidgetAdapter<AlertProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ disconnectedCallback(): void;
16
+ }
@@ -0,0 +1,15 @@
1
+ import { LitElement } from 'lit';
2
+ import { Subscription } from 'rxjs';
3
+ import * as Core from '@golemui/core';
4
+ import * as Lit from '@golemui/lit';
5
+ export declare class ButtonElement extends LitElement implements Core.WithWidget {
6
+ widget: Core.ActionWidget;
7
+ formContext: Lit.LitFormContext<any>;
8
+ adapter: Lit.ActionWidgetAdapter;
9
+ subscriptions: Subscription[];
10
+ createRenderRoot(): this;
11
+ connectedCallback(): void;
12
+ updated(changedProperties: any): void;
13
+ render(): import('lit-html').TemplateResult<1>;
14
+ disconnectedCallback(): void;
15
+ }
@@ -0,0 +1,16 @@
1
+ import { CalendarProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class CalendarElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, CalendarProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ render(): import('lit-html').TemplateResult<1>;
14
+ valueChanged(event: InputEvent): void;
15
+ disconnectedCallback(): void;
16
+ }
@@ -0,0 +1,17 @@
1
+ import { CheckboxProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class CheckboxElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<boolean>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<boolean, CheckboxProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,17 @@
1
+ import { CurrencyProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class CurrencyElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<number>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<number, CurrencyProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,26 @@
1
+ import { DatePickerProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class DatePickerElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, DatePickerProps>;
10
+ dateInput?: HTMLElement;
11
+ calendarInput?: HTMLElement;
12
+ isCalendarOpen: boolean;
13
+ subscriptions: Subscription[];
14
+ onDocumentClick: (event: MouseEvent) => void;
15
+ createRenderRoot(): this;
16
+ connectedCallback(): void;
17
+ updated(changedProperties: any): void;
18
+ render(): import('lit-html').TemplateResult<1>;
19
+ valueChanged(event: CustomEvent): void;
20
+ onBlurCalendar(): void;
21
+ onInputError(event: CustomEvent): void;
22
+ onKeyUp(event: Event | undefined): void;
23
+ openCalendar(): void;
24
+ closeCalendar(): void;
25
+ disconnectedCallback(): void;
26
+ }
@@ -0,0 +1,18 @@
1
+ import { DatePickerProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class DateElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, DatePickerProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ onInputError(event: CustomEvent): void;
17
+ disconnectedCallback(): void;
18
+ }
@@ -0,0 +1,2 @@
1
+ import { ItemRenderContext } from '@golemui/core';
2
+ export declare const defaultListItemRenderer: (ctx: ItemRenderContext<any>) => import('lit-html').TemplateResult<1>;
@@ -0,0 +1,38 @@
1
+ import { DropdownProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subject, Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class DropdownElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, DropdownProps<never>>;
10
+ debouncer: Subject<string>;
11
+ subscriptions: Subscription[];
12
+ private _range;
13
+ private _filteredItems;
14
+ private _listItems;
15
+ private _focusedIndex;
16
+ private _isFiltering;
17
+ private _isListVisible;
18
+ private _selectedItem;
19
+ private _inputRef;
20
+ private _listRef;
21
+ onDocumentClick: (event: MouseEvent) => void;
22
+ createRenderRoot(): this;
23
+ connectedCallback(): void;
24
+ updated(changedProperties: any): void;
25
+ disconnectedCallback(): void;
26
+ private _onRangeChange;
27
+ private _onUpdateItems;
28
+ private _onFocusChange;
29
+ private _onClickItem;
30
+ private _onValueChange;
31
+ private _onKeyDown;
32
+ private _onInput;
33
+ private _filterItems;
34
+ private _onFocus;
35
+ private _onFocusOutInput;
36
+ private _onBlur;
37
+ render(): import('lit-html').TemplateResult<1>;
38
+ }
@@ -0,0 +1,16 @@
1
+ import { FlexProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class FlexElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.LayoutWidget;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.LayoutWidgetAdapter<FlexProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ disconnectedCallback(): void;
16
+ }
@@ -0,0 +1,21 @@
1
+ import { WidgetLoaders, WithWidget } from '@golemui/core';
2
+ import { CustomValidatorSchemas, Validator } from '@golemui/gui-validators';
3
+ import { LitElement } from 'lit';
4
+ import { LitItemRenderer, Type } from '@golemui/lit';
5
+ import * as Core from '@golemui/core';
6
+ export declare class FormElement extends LitElement {
7
+ formDef: string | Record<string, any>;
8
+ data: any;
9
+ widgetLoaders: WidgetLoaders<Type<WithWidget>>;
10
+ itemRenderers: Record<string, LitItemRenderer<any>>;
11
+ localization?: Core.I18nTranslator;
12
+ validators: CustomValidatorSchemas;
13
+ middlewares: Core.Middleware<Core.State, Core.Action>[];
14
+ validateOn: Core.ValidateOn;
15
+ protected customWidgetLoaders: WidgetLoaders<Type<WithWidget>>;
16
+ protected customValidators: Core.ValidatorFn<Validator>;
17
+ protected customMiddlewares: Core.Middleware<Core.State, Core.Action>[];
18
+ createRenderRoot(): this;
19
+ connectedCallback(): void;
20
+ render(): import('lit-html').TemplateResult<1>;
21
+ }
@@ -0,0 +1,25 @@
1
+ import { ListProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class ListElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, ListProps<any>>;
10
+ subscriptions: Subscription[];
11
+ private _range;
12
+ private _listItems;
13
+ private _focusedIndex;
14
+ private _guiListRef;
15
+ createRenderRoot(): this;
16
+ connectedCallback(): void;
17
+ disconnectedCallback(): void;
18
+ updated(changedProperties: any): void;
19
+ render(): import('lit-html').TemplateResult<1>;
20
+ private _onRangeChange;
21
+ private _onUpdateItems;
22
+ private _onFocusChange;
23
+ private _onClickItem;
24
+ private _valueChanged;
25
+ }
@@ -0,0 +1,17 @@
1
+ import { NumberinputProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class NumberElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<number>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<number, NumberinputProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,17 @@
1
+ import { PasswordProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class PasswordElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, PasswordProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,17 @@
1
+ import { RadiogroupProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class RadiogroupElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, RadiogroupProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,16 @@
1
+ import { DateRange, RangeCalendarProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class RangeCalendarElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<DateRange[]>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<DateRange[], RangeCalendarProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ render(): import('lit-html').TemplateResult<1>;
14
+ valueChanged(event: InputEvent): void;
15
+ disconnectedCallback(): void;
16
+ }
@@ -0,0 +1,15 @@
1
+ import { RendererProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class RendererElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.DisplayWidget;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.DisplayWidgetAdapter<RendererProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ render(): import('lit-html').TemplateResult<1>;
14
+ disconnectedCallback(): void;
15
+ }
@@ -0,0 +1,18 @@
1
+ import { RepeaterProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class RepeaterElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<Record<string, unknown>[]>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<Record<string, unknown>[], RepeaterProps<any>>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ disconnectedCallback(): void;
16
+ private addItem;
17
+ private removeItem;
18
+ }
@@ -0,0 +1,18 @@
1
+ import { SelectProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class SelectElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, SelectProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ onInputError(event: Event): void;
17
+ disconnectedCallback(): void;
18
+ }
@@ -0,0 +1,27 @@
1
+ import { TabsProps } from '@golemui/gui-shared';
2
+ import { LitElement, PropertyValues } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class TabsElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.LayoutWidget;
8
+ startSentinel: HTMLElement;
9
+ endSentinel: HTMLElement;
10
+ isStartVisible: boolean;
11
+ isEndVisible: boolean;
12
+ tabButtons: HTMLButtonElement[];
13
+ activeTab: string;
14
+ formContext: Lit.LitFormContext<any>;
15
+ adapter: Lit.LayoutWidgetAdapter<TabsProps>;
16
+ subscriptions: Subscription[];
17
+ private startObserver?;
18
+ private endObserver?;
19
+ createRenderRoot(): this;
20
+ connectedCallback(): void;
21
+ updated(changedProperties: any): void;
22
+ protected firstUpdated(_changedProperties: PropertyValues): void;
23
+ render(): import('lit-html').TemplateResult<1>;
24
+ disconnectedCallback(): void;
25
+ private onClickTab;
26
+ private onKeyDown;
27
+ }
@@ -0,0 +1,17 @@
1
+ import { TextareaProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class TextareaElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, TextareaProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,17 @@
1
+ import { TextinputProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class TextinputElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<string>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<string, TextinputProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,17 @@
1
+ import { ToggleProps } from '@golemui/gui-shared';
2
+ import { LitElement } from 'lit';
3
+ import { Subscription } from 'rxjs';
4
+ import * as Core from '@golemui/core';
5
+ import * as Lit from '@golemui/lit';
6
+ export declare class ToggleElement extends LitElement implements Core.WithWidget {
7
+ widget: Core.InputWidget<boolean>;
8
+ formContext: Lit.LitFormContext<any>;
9
+ adapter: Lit.InputWidgetAdapter<boolean, ToggleProps>;
10
+ subscriptions: Subscription[];
11
+ createRenderRoot(): this;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: any): void;
14
+ render(): import('lit-html').TemplateResult<1>;
15
+ valueChanged(event: CustomEvent): void;
16
+ disconnectedCallback(): void;
17
+ }
@@ -0,0 +1,4 @@
1
+ import { Type } from '@golemui/lit';
2
+ import { VanillaWidget } from '@golemui/gui-shared';
3
+ import * as Core from '@golemui/core';
4
+ export declare const vanillaWidgetLoaders: Core.WidgetLoaders<Type<Core.WithWidget>, VanillaWidget>;
@@ -0,0 +1,138 @@
1
+ import * as o from "@golemui/lit";
2
+ import { consume as g, provide as m } from "@lit/context";
3
+ import { LitElement as f, nothing as h, html as p } from "lit";
4
+ import { property as _, state as u, query as $, customElement as b } from "lit/decorators.js";
5
+ import { d as v } from "./default-list-item-renderer-DNVEjKSX.js";
6
+ var I = Object.defineProperty, x = Object.getOwnPropertyDescriptor, d = (e, t, n, i) => {
7
+ for (var s = i > 1 ? void 0 : i ? x(t, n) : t, a = e.length - 1, l; a >= 0; a--)
8
+ (l = e[a]) && (s = (i ? l(t, n, s) : l(s)) || s);
9
+ return i && s && I(t, n, s), s;
10
+ };
11
+ let r = class extends f {
12
+ constructor() {
13
+ super(...arguments), this.adapter = new o.InputWidgetAdapter(), this.subscriptions = [], this._range = { start: 0, end: 10 }, this._listItems = [], this._focusedIndex = -1;
14
+ }
15
+ createRenderRoot() {
16
+ return this;
17
+ }
18
+ connectedCallback() {
19
+ super.connectedCallback(), this.classList.add("gui-list"), this.adapter.context = this.formContext, this.adapter.init(this.widget), this.subscriptions.push(
20
+ this.adapter.templateDataChanged$.subscribe(() => {
21
+ const e = this.adapter.templateData;
22
+ e.items && this._listItems.length === 0 && (this._listItems = e.items), this.requestUpdate();
23
+ })
24
+ );
25
+ }
26
+ disconnectedCallback() {
27
+ super.disconnectedCallback(), this.adapter.destroy(), this.subscriptions.forEach((e) => e.unsubscribe());
28
+ }
29
+ updated(e) {
30
+ super.updated(e);
31
+ const t = this.adapter.templateData.size;
32
+ t ? this.style.flex = String(t) : this.style.removeProperty("flex");
33
+ }
34
+ render() {
35
+ const e = this.adapter.templateData, t = this._listItems.slice(this._range.start, this._range.end), n = this.adapter.getItemRenderer(e.itemRenderer, v);
36
+ return p`
37
+ <gui-label
38
+ .targetElement=${this._guiListRef}
39
+ .uid=${this.widget.uid}
40
+ .label=${e.label}
41
+ .hint=${e.hint}
42
+ .errors=${e.errors}
43
+ .touched=${e.touched}
44
+ .required=${e.validator?.required}
45
+ .native=${!1}
46
+ ></gui-label>
47
+
48
+ <div class="gui-widget">
49
+ <gui-list
50
+ .uid=${this.widget.uid}
51
+ .value=${e.value ?? ""}
52
+ .valueField=${e.valueField}
53
+ .items=${e.items}
54
+ .itemHeight=${e.itemHeight}
55
+ .height=${e.height}
56
+ ?required=${e.validator?.required}
57
+ ?touched=${e.touched}
58
+ ?disabled=${e.disabled}
59
+ ?readonly=${e.readonly}
60
+ aria-labelledby=${e.label ? `${this.widget.uid}_label` : h}
61
+ aria-describedby=${e.hint ? `${this.widget.uid}_hint` : h}
62
+ @gui-range-change=${this._onRangeChange}
63
+ @gui-update-items=${this._onUpdateItems}
64
+ @gui-focus-change=${this._onFocusChange}
65
+ @blur=${() => this.adapter.onBlur()}
66
+ @change=${this._valueChanged}
67
+ >
68
+ ${t.map((i, s) => {
69
+ const a = this._range.start + s, l = e.value === i.value, c = this._focusedIndex === a;
70
+ return p`
71
+ <div
72
+ role="option"
73
+ tabindex="-1"
74
+ class="gui-list__item-wrapper"
75
+ id="${this.widget.uid}-item-${a}"
76
+ style="height: ${e.itemHeight || 40}px"
77
+ aria-selected=${l ? "true" : "false"}
78
+ aria-disabled=${e.disabled ? "true" : "false"}
79
+ @click=${() => this._onClickItem(i, a)}
80
+ >
81
+ ${n({
82
+ template: i.template,
83
+ value: i.value,
84
+ index: a,
85
+ selected: l,
86
+ disabled: !!e.disabled,
87
+ focused: c
88
+ })}
89
+ </div>
90
+ `;
91
+ })}
92
+ </gui-list>
93
+ </div>
94
+
95
+ <gui-errors .errors=${e.errors} .touched=${e.touched}></gui-errors>
96
+ `;
97
+ }
98
+ _onRangeChange(e) {
99
+ this._range = { start: e.detail.startIndex, end: e.detail.endIndex };
100
+ }
101
+ _onUpdateItems(e) {
102
+ this._listItems = e.detail || [];
103
+ }
104
+ _onFocusChange(e) {
105
+ this._focusedIndex = e.detail.index;
106
+ }
107
+ _onClickItem(e, t) {
108
+ this.adapter.templateData.disabled || (this.adapter.valueChanged(e.value), this._focusedIndex = t, this._guiListRef && typeof this._guiListRef.focusItemAtIndex == "function" && this._guiListRef.focusItemAtIndex(t));
109
+ }
110
+ _valueChanged(e) {
111
+ this.adapter.templateData.readonly || this.adapter.valueChanged(e.detail.value);
112
+ }
113
+ };
114
+ d([
115
+ g({ context: o.formContext }),
116
+ _({ attribute: !1 })
117
+ ], r.prototype, "formContext", 2);
118
+ d([
119
+ m({ context: o.inputContext })
120
+ ], r.prototype, "adapter", 2);
121
+ d([
122
+ u()
123
+ ], r.prototype, "_range", 2);
124
+ d([
125
+ u()
126
+ ], r.prototype, "_listItems", 2);
127
+ d([
128
+ u()
129
+ ], r.prototype, "_focusedIndex", 2);
130
+ d([
131
+ $("gui-list")
132
+ ], r.prototype, "_guiListRef", 2);
133
+ r = d([
134
+ b("gui-list-input")
135
+ ], r);
136
+ export {
137
+ r as ListElement
138
+ };