@shoper/phoenix_design_system 1.0.0 → 1.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.
- package/build/cjs/external/lit/external/lit-html/directive.js +14 -0
- package/build/cjs/external/lit/external/lit-html/directive.js.map +1 -0
- package/build/cjs/external/lit/external/lit-html/lit-html.js +14 -0
- package/build/cjs/external/lit/external/lit-html/lit-html.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_item/color_item.js +70 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_item/color_item.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_item/color_item_constants.js +12 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_item/color_item_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_swatches.js +115 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_swatches.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_swatches_constants.js +22 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/color_swatches_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/show-more/show_more.js +38 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/show-more/show_more.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/show-more/show_more_constants.js +12 -0
- package/build/cjs/packages/phoenix/src/components/color_swatches/show-more/show_more_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +56 -32
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js +0 -2
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js +26 -6
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +75 -0
- package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control_constants.js +13 -0
- package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/form/input/input_icon.js +4 -9
- package/build/cjs/packages/phoenix/src/components/form/input/input_icon.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/icon/icon.js +64 -0
- package/build/cjs/packages/phoenix/src/components/icon/icon.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/icon/icon_constants.js +14 -1
- package/build/cjs/packages/phoenix/src/components/icon/icon_constants.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/messages/base_message.js +155 -0
- package/build/cjs/packages/phoenix/src/components/messages/base_message.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/base_message_constants.js +27 -0
- package/build/cjs/packages/phoenix/src/components/messages/base_message_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/base_message_content.js +32 -0
- package/build/cjs/packages/phoenix/src/components/messages/base_message_content.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint.js +34 -0
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint_constants.js +16 -0
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint_content.js +19 -0
- package/build/cjs/packages/phoenix/src/components/messages/hints/hint_content.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip.js +29 -0
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip_constants.js +14 -0
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip_content.js +19 -0
- package/build/cjs/packages/phoenix/src/components/messages/tooltips/tooltip_content.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal_constants.js +3 -1
- package/build/cjs/packages/phoenix/src/components/portal/portal_constants.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/tabs/tabs.js +2 -1
- package/build/cjs/packages/phoenix/src/components/tabs/tabs.js.map +1 -1
- package/build/cjs/packages/phoenix/src/components/tag/tag.js +47 -0
- package/build/cjs/packages/phoenix/src/components/tag/tag.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/tag/tag_constants.js +20 -0
- package/build/cjs/packages/phoenix/src/components/tag/tag_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/tag/tag_remove_button.js +29 -0
- package/build/cjs/packages/phoenix/src/components/tag/tag_remove_button.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/btn_controller.js +1 -1
- package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +44 -8
- package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js.map +1 -1
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller.js +1 -1
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js +22 -2
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js.map +1 -1
- package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js +11 -4
- package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js.map +1 -1
- package/build/cjs/packages/phoenix/src/directives/namespaced_attribure_directive.js +22 -0
- package/build/cjs/packages/phoenix/src/directives/namespaced_attribure_directive.js.map +1 -0
- package/build/cjs/packages/phoenix/src/index.js +77 -0
- package/build/cjs/packages/phoenix/src/index.js.map +1 -1
- package/build/esm/external/lit/external/lit-html/directive.js +9 -0
- package/build/esm/external/lit/external/lit-html/directive.js.map +1 -0
- package/build/esm/external/lit/external/lit-html/lit-html.js +9 -0
- package/build/esm/external/lit/external/lit-html/lit-html.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item.d.ts +14 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item.js +68 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item_constants.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item_constants.js +7 -0
- package/build/esm/packages/phoenix/src/{controllers/keystrokes_controller/keystrokes_controller_constants.js.map → components/color_swatches/color_item/color_item_constants.js.map} +1 -1
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item_types.d.ts +5 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item_types.js +2 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_item/color_item_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches.d.ts +21 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches.js +113 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches_constants.d.ts +11 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches_constants.js +15 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches_types.d.ts +3 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches_types.js +2 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/color_swatches_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more.d.ts +9 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more.js +36 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more_constants.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more_constants.js +7 -0
- package/build/esm/packages/phoenix/src/components/color_swatches/show-more/show_more_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +9 -6
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +57 -33
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.d.ts +0 -1
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js +1 -2
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.d.ts +3 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js +27 -7
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_types.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_types.js +2 -1
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_types.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.d.ts +14 -0
- package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +73 -0
- package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control_constants.d.ts +5 -0
- package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control_constants.js +9 -0
- package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/form/input/input_icon.d.ts +0 -1
- package/build/esm/packages/phoenix/src/components/form/input/input_icon.js +4 -9
- package/build/esm/packages/phoenix/src/components/form/input/input_icon.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/groups/toggle_button_group/toggle_button.d.ts +1 -1
- package/build/esm/packages/phoenix/src/components/icon/icon.d.ts +14 -0
- package/build/esm/packages/phoenix/src/components/icon/icon.js +62 -0
- package/build/esm/packages/phoenix/src/components/icon/icon.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/icon/icon_constants.d.ts +13 -0
- package/build/esm/packages/phoenix/src/components/icon/icon_constants.js +14 -2
- package/build/esm/packages/phoenix/src/components/icon/icon_constants.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/messages/base_message.d.ts +27 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message.js +151 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_constants.d.ts +9 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_constants.js +15 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_content.d.ts +6 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_content.js +28 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_content.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_types.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_types.js +2 -0
- package/build/esm/packages/phoenix/src/components/messages/base_message_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint.d.ts +7 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint.js +32 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint_constants.d.ts +6 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint_constants.js +8 -0
- package/build/{cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.js.map → esm/packages/phoenix/src/components/messages/hints/hint_constants.js.map} +0 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint_content.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint_content.js +17 -0
- package/build/esm/packages/phoenix/src/components/messages/hints/hint_content.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip.d.ts +6 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip.js +27 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip_constants.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip_constants.js +7 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip_content.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip_content.js +17 -0
- package/build/esm/packages/phoenix/src/components/messages/tooltips/tooltip_content.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.d.ts +1 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.js +3 -2
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/tabs/tabs.d.ts +1 -0
- package/build/esm/packages/phoenix/src/components/tabs/tabs.js +2 -1
- package/build/esm/packages/phoenix/src/components/tabs/tabs.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/tag/tag.d.ts +9 -0
- package/build/esm/packages/phoenix/src/components/tag/tag.js +45 -0
- package/build/esm/packages/phoenix/src/components/tag/tag.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/tag/tag_constants.d.ts +10 -0
- package/build/esm/packages/phoenix/src/components/tag/tag_constants.js +14 -0
- package/build/esm/packages/phoenix/src/components/tag/tag_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/tag/tag_remove_button.d.ts +7 -0
- package/build/esm/packages/phoenix/src/components/tag/tag_remove_button.js +27 -0
- package/build/esm/packages/phoenix/src/components/tag/tag_remove_button.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/btn_controller.js +1 -1
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.d.ts +8 -2
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +44 -8
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js.map +1 -1
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_types.d.ts +1 -1
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_calculator_types.js +4 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_calculator_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller.js +1 -1
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.d.ts +34 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js +20 -3
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js.map +1 -1
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_types.js +2 -1
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_types.js.map +1 -1
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.d.ts +5 -2
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js +11 -4
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element/phoenix_light_lit_element.js.map +1 -1
- package/build/esm/packages/phoenix/src/directives/namespaced_attribure_directive.d.ts +8 -0
- package/build/esm/packages/phoenix/src/directives/namespaced_attribure_directive.js +18 -0
- package/build/esm/packages/phoenix/src/directives/namespaced_attribure_directive.js.map +1 -0
- package/build/esm/packages/phoenix/src/index.d.ts +11 -0
- package/build/esm/packages/phoenix/src/index.js +11 -0
- package/build/esm/packages/phoenix/src/index.js.map +1 -1
- package/package.json +2 -2
- package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.js +0 -8
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.d.ts +0 -1
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.js +0 -4
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Any } from 'ts-toolbelt';
|
|
2
|
+
import { VERTICAL_DIRECTIONS } from "../../controllers/relative_position_controller/relative_position_controller_constants";
|
|
1
3
|
export declare type TDropdownSelectors = {
|
|
2
4
|
getDropdownPortalTargetName(): string;
|
|
3
5
|
getDropdownContainerName(): string;
|
|
@@ -7,9 +9,11 @@ export interface IDropdown {
|
|
|
7
9
|
show(): void;
|
|
8
10
|
hide(): void;
|
|
9
11
|
toggle(): void;
|
|
12
|
+
isOpened(): boolean;
|
|
10
13
|
}
|
|
11
14
|
export declare type TDropdownHideEvent = Event & {
|
|
12
15
|
detail: {
|
|
13
16
|
name: string;
|
|
14
17
|
};
|
|
15
18
|
};
|
|
19
|
+
export declare type TDropdownDirection = typeof VERTICAL_DIRECTIONS[Any.Keys<typeof VERTICAL_DIRECTIONS>];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown_types.js","sourceRoot":"","sources":["../../../../../../../src/components/dropdown/dropdown_types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"dropdown_types.js","sourceRoot":"","sources":["../../../../../../../src/components/dropdown/dropdown_types.ts"],"names":[],"mappings":"AAAA,OAAoB,aAAa,CAAC;AAClC,OAAoC,8FAA8F,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TemplateResult } from 'lit';
|
|
2
|
+
import { PhoenixLightLitElement } from "../../../core/phoenix_light_lit_element/phoenix_light_lit_element";
|
|
3
|
+
export declare class HColorSwatchesControl extends PhoenixLightLitElement {
|
|
4
|
+
controlId: string;
|
|
5
|
+
controlName: string;
|
|
6
|
+
disabled: boolean;
|
|
7
|
+
required: boolean;
|
|
8
|
+
error: boolean;
|
|
9
|
+
selectedColors: string | undefined;
|
|
10
|
+
connectedCallback(): void;
|
|
11
|
+
private _setupEvents;
|
|
12
|
+
private _serializeArrayOfColors;
|
|
13
|
+
protected render(): TemplateResult;
|
|
14
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { html } from 'lit';
|
|
3
|
+
import { property, state } from 'lit/decorators';
|
|
4
|
+
import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
|
|
5
|
+
import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
|
|
6
|
+
import { INPUT_CONTROL_TYPES } from '../input/input_constants.js';
|
|
7
|
+
import classnames from '../../../../external/classnames/index.js';
|
|
8
|
+
import { COLOR_SWATCHES_CONTROL_CSS_CLASSES } from './color_swatches_control_constants.js';
|
|
9
|
+
import { COLOR_SWATCHES_EVENT_NAMES } from '../../color_swatches/color_swatches_constants.js';
|
|
10
|
+
|
|
11
|
+
let HColorSwatchesControl = class HColorSwatchesControl extends PhoenixLightLitElement {
|
|
12
|
+
connectedCallback() {
|
|
13
|
+
super.connectedCallback();
|
|
14
|
+
this._setupEvents();
|
|
15
|
+
this.classList.add(COLOR_SWATCHES_CONTROL_CSS_CLASSES.colorSwatchesControl);
|
|
16
|
+
const cssClasses = classnames({
|
|
17
|
+
[COLOR_SWATCHES_CONTROL_CSS_CLASSES.colorSwatchesControlDisabled]: this.disabled,
|
|
18
|
+
[COLOR_SWATCHES_CONTROL_CSS_CLASSES.colorSwatchesControlError]: this.error
|
|
19
|
+
});
|
|
20
|
+
if (cssClasses)
|
|
21
|
+
this.classList.add(cssClasses);
|
|
22
|
+
}
|
|
23
|
+
_setupEvents() {
|
|
24
|
+
this.addEventListener(COLOR_SWATCHES_EVENT_NAMES.selected, (event) => {
|
|
25
|
+
const eventValue = event.detail.colors;
|
|
26
|
+
this.selectedColors = Array.isArray(eventValue) ? this._serializeArrayOfColors(eventValue) : eventValue;
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
_serializeArrayOfColors(colors) {
|
|
30
|
+
return colors.reduce((colorPrev, colorCurr) => {
|
|
31
|
+
return colorPrev ? `${colorPrev}, ${colorCurr}` : colorCurr;
|
|
32
|
+
}, '');
|
|
33
|
+
}
|
|
34
|
+
render() {
|
|
35
|
+
return html `
|
|
36
|
+
<h-input-control
|
|
37
|
+
controlName="${this.controlName}"
|
|
38
|
+
type="${INPUT_CONTROL_TYPES.hidden}"
|
|
39
|
+
value="${this.selectedColors}"
|
|
40
|
+
></h-input-control>
|
|
41
|
+
`;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
__decorate([
|
|
45
|
+
property({ type: String, attribute: 'control-id' }),
|
|
46
|
+
__metadata("design:type", String)
|
|
47
|
+
], HColorSwatchesControl.prototype, "controlId", void 0);
|
|
48
|
+
__decorate([
|
|
49
|
+
property({ type: String }),
|
|
50
|
+
__metadata("design:type", String)
|
|
51
|
+
], HColorSwatchesControl.prototype, "controlName", void 0);
|
|
52
|
+
__decorate([
|
|
53
|
+
property({ type: Boolean }),
|
|
54
|
+
__metadata("design:type", Boolean)
|
|
55
|
+
], HColorSwatchesControl.prototype, "disabled", void 0);
|
|
56
|
+
__decorate([
|
|
57
|
+
property({ type: Boolean }),
|
|
58
|
+
__metadata("design:type", Boolean)
|
|
59
|
+
], HColorSwatchesControl.prototype, "required", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
property({ type: Boolean }),
|
|
62
|
+
__metadata("design:type", Boolean)
|
|
63
|
+
], HColorSwatchesControl.prototype, "error", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
state(),
|
|
66
|
+
__metadata("design:type", Object)
|
|
67
|
+
], HColorSwatchesControl.prototype, "selectedColors", void 0);
|
|
68
|
+
HColorSwatchesControl = __decorate([
|
|
69
|
+
phoenixCustomElement('h-color-swatches-control')
|
|
70
|
+
], HColorSwatchesControl);
|
|
71
|
+
|
|
72
|
+
export { HColorSwatchesControl };
|
|
73
|
+
//# sourceMappingURL=color_swatches_control.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const baseColorSwatchesControlClass = 'color-swatches-control';
|
|
2
|
+
const COLOR_SWATCHES_CONTROL_CSS_CLASSES = {
|
|
3
|
+
colorSwatchesControl: baseColorSwatchesControlClass,
|
|
4
|
+
colorSwatchesControlDisabled: `${baseColorSwatchesControlClass}_disabled`,
|
|
5
|
+
colorSwatchesControlError: `${baseColorSwatchesControlClass}_error`
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export { COLOR_SWATCHES_CONTROL_CSS_CLASSES };
|
|
9
|
+
//# sourceMappingURL=color_swatches_control_constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { PhoenixLightLitElement } from "../../../core/phoenix_light_lit_element/phoenix_light_lit_element";
|
|
2
2
|
import { TemplateResult } from 'lit';
|
|
3
3
|
export declare class HInputIcon extends PhoenixLightLitElement {
|
|
4
|
-
static src: string;
|
|
5
4
|
iconName: string;
|
|
6
5
|
connectedCallback(): void;
|
|
7
6
|
protected render(): TemplateResult;
|
|
@@ -6,26 +6,21 @@ import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_el
|
|
|
6
6
|
import { INPUT_CONTROL_CSS_CLASSES } from './input_constants.js';
|
|
7
7
|
import { ICON_CSS_CLASSES } from '../../icon/icon_constants.js';
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
let HInputIcon = HInputIcon_1 = class HInputIcon extends PhoenixLightLitElement {
|
|
9
|
+
let HInputIcon = class HInputIcon extends PhoenixLightLitElement {
|
|
11
10
|
connectedCallback() {
|
|
12
11
|
super.connectedCallback();
|
|
13
12
|
this.classList.add(INPUT_CONTROL_CSS_CLASSES.inputIcon, ICON_CSS_CLASSES.icon);
|
|
14
13
|
}
|
|
15
14
|
render() {
|
|
16
15
|
super.render();
|
|
17
|
-
return html `
|
|
18
|
-
<svg>
|
|
19
|
-
<use xlink:href="${HInputIcon_1.src}#${this.iconName}"></use>
|
|
20
|
-
</svg>
|
|
21
|
-
`;
|
|
16
|
+
return html ` <h-icon icon-name=${this.iconName}></h-icon> `;
|
|
22
17
|
}
|
|
23
18
|
};
|
|
24
19
|
__decorate([
|
|
25
|
-
property({ type: String }),
|
|
20
|
+
property({ type: String, attribute: 'icon-name' }),
|
|
26
21
|
__metadata("design:type", String)
|
|
27
22
|
], HInputIcon.prototype, "iconName", void 0);
|
|
28
|
-
HInputIcon =
|
|
23
|
+
HInputIcon = __decorate([
|
|
29
24
|
phoenixCustomElement('h-input-icon')
|
|
30
25
|
], HInputIcon);
|
|
31
26
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
package/build/esm/packages/phoenix/src/components/groups/toggle_button_group/toggle_button.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { PropertyValues } from 'lit';
|
|
2
1
|
import { PhoenixLightLitElement } from "../../../core/phoenix_light_lit_element/phoenix_light_lit_element";
|
|
2
|
+
import { PropertyValues } from 'lit';
|
|
3
3
|
export declare class HToggleButton extends PhoenixLightLitElement {
|
|
4
4
|
toggledOn: boolean;
|
|
5
5
|
willUpdate(propertyValues: PropertyValues): void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TemplateResult } from 'lit';
|
|
2
|
+
import { TIconSize } from "./icon_constants";
|
|
3
|
+
import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/phoenix_light_lit_element";
|
|
4
|
+
export declare class HIcon extends PhoenixLightLitElement {
|
|
5
|
+
static src: string;
|
|
6
|
+
iconName: string;
|
|
7
|
+
size?: TIconSize | undefined;
|
|
8
|
+
filled: boolean;
|
|
9
|
+
clickable: boolean;
|
|
10
|
+
noStroke: boolean;
|
|
11
|
+
private _cssClasses;
|
|
12
|
+
connectedCallback(): void;
|
|
13
|
+
protected render(): TemplateResult;
|
|
14
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { html } from 'lit';
|
|
3
|
+
import { property } from 'lit/decorators';
|
|
4
|
+
import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
|
|
5
|
+
import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
|
|
6
|
+
import classnames from '../../../external/classnames/index.js';
|
|
7
|
+
import { ICON_CSS_CLASSES, ICON_SIZES_CSS_CLASS_MAP } from './icon_constants.js';
|
|
8
|
+
import { namespacedAttribute } from '../../directives/namespaced_attribure_directive.js';
|
|
9
|
+
|
|
10
|
+
var HIcon_1;
|
|
11
|
+
let HIcon = HIcon_1 = class HIcon extends PhoenixLightLitElement {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.filled = false;
|
|
15
|
+
this.clickable = false;
|
|
16
|
+
this.noStroke = false;
|
|
17
|
+
}
|
|
18
|
+
connectedCallback() {
|
|
19
|
+
var _a;
|
|
20
|
+
super.connectedCallback();
|
|
21
|
+
this._cssClasses = classnames(ICON_CSS_CLASSES.icon, {
|
|
22
|
+
[ICON_SIZES_CSS_CLASS_MAP[(_a = this.size) !== null && _a !== void 0 ? _a : '']]: Boolean(this.size),
|
|
23
|
+
[ICON_CSS_CLASSES.iconFilled]: this.filled,
|
|
24
|
+
[ICON_CSS_CLASSES.iconNoStroke]: this.noStroke,
|
|
25
|
+
[ICON_CSS_CLASSES.iconClickable]: this.clickable
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
render() {
|
|
29
|
+
super.render();
|
|
30
|
+
return html `
|
|
31
|
+
<svg class="${this._cssClasses}">
|
|
32
|
+
<use xlink:href="${namespacedAttribute('http://www.w3.org/1999/xlink', `${HIcon_1.src}#${this.iconName}`)}"></use>
|
|
33
|
+
</svg>
|
|
34
|
+
`;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
__decorate([
|
|
38
|
+
property({ type: String, attribute: 'icon-name' }),
|
|
39
|
+
__metadata("design:type", String)
|
|
40
|
+
], HIcon.prototype, "iconName", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
property({ type: String }),
|
|
43
|
+
__metadata("design:type", Object)
|
|
44
|
+
], HIcon.prototype, "size", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
property({ type: Boolean }),
|
|
47
|
+
__metadata("design:type", Boolean)
|
|
48
|
+
], HIcon.prototype, "filled", void 0);
|
|
49
|
+
__decorate([
|
|
50
|
+
property({ type: Boolean }),
|
|
51
|
+
__metadata("design:type", Boolean)
|
|
52
|
+
], HIcon.prototype, "clickable", void 0);
|
|
53
|
+
__decorate([
|
|
54
|
+
property({ type: Boolean }),
|
|
55
|
+
__metadata("design:type", Boolean)
|
|
56
|
+
], HIcon.prototype, "noStroke", void 0);
|
|
57
|
+
HIcon = HIcon_1 = __decorate([
|
|
58
|
+
phoenixCustomElement('h-icon')
|
|
59
|
+
], HIcon);
|
|
60
|
+
|
|
61
|
+
export { HIcon };
|
|
62
|
+
//# sourceMappingURL=icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA,uBAAuB,uCAA2C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
import { Any } from 'ts-toolbelt';
|
|
1
2
|
export declare const ICON_CSS_CLASSES: {
|
|
2
3
|
readonly icon: "icon";
|
|
4
|
+
readonly iconFilled: "icon_filled";
|
|
5
|
+
readonly iconNoStroke: "icon_no-stroke";
|
|
6
|
+
readonly iconSizeL: "icon_l";
|
|
7
|
+
readonly iconSizeXl: "icon_xl";
|
|
8
|
+
readonly iconSizeXxl: "icon_xxl";
|
|
9
|
+
readonly iconClickable: "icon_clickable";
|
|
3
10
|
};
|
|
11
|
+
export declare const ICON_SIZES_CSS_CLASS_MAP: {
|
|
12
|
+
readonly l: "icon_l";
|
|
13
|
+
readonly xl: "icon_xl";
|
|
14
|
+
readonly xxl: "icon_xxl";
|
|
15
|
+
};
|
|
16
|
+
export declare type TIconSize = Any.Keys<typeof ICON_SIZES_CSS_CLASS_MAP>;
|
|
@@ -1,6 +1,18 @@
|
|
|
1
|
+
const iconBaseClass = 'icon';
|
|
1
2
|
const ICON_CSS_CLASSES = {
|
|
2
|
-
icon:
|
|
3
|
+
icon: iconBaseClass,
|
|
4
|
+
iconFilled: `${iconBaseClass}_filled`,
|
|
5
|
+
iconNoStroke: `${iconBaseClass}_no-stroke`,
|
|
6
|
+
iconSizeL: `${iconBaseClass}_l`,
|
|
7
|
+
iconSizeXl: `${iconBaseClass}_xl`,
|
|
8
|
+
iconSizeXxl: `${iconBaseClass}_xxl`,
|
|
9
|
+
iconClickable: `${iconBaseClass}_clickable`
|
|
10
|
+
};
|
|
11
|
+
const ICON_SIZES_CSS_CLASS_MAP = {
|
|
12
|
+
l: ICON_CSS_CLASSES.iconSizeL,
|
|
13
|
+
xl: ICON_CSS_CLASSES.iconSizeXl,
|
|
14
|
+
xxl: ICON_CSS_CLASSES.iconSizeXxl
|
|
3
15
|
};
|
|
4
16
|
|
|
5
|
-
export { ICON_CSS_CLASSES };
|
|
17
|
+
export { ICON_CSS_CLASSES, ICON_SIZES_CSS_CLASS_MAP };
|
|
6
18
|
//# sourceMappingURL=icon_constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;"}
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { IBaseMessage } from './base_message_types';
|
|
2
|
+
import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/phoenix_light_lit_element";
|
|
3
|
+
import type { TDirection } from "../../controllers/relative_position_controller/relative_position_controller_types";
|
|
4
|
+
export declare class BaseMessage extends PhoenixLightLitElement implements IBaseMessage {
|
|
5
|
+
opened: boolean;
|
|
6
|
+
portalTarget: string;
|
|
7
|
+
direction: TDirection;
|
|
8
|
+
offset: number;
|
|
9
|
+
private _positionController;
|
|
10
|
+
private _clickOutsideController;
|
|
11
|
+
private _$messageContent;
|
|
12
|
+
private _openTimeout;
|
|
13
|
+
private _tooltipOpenTime;
|
|
14
|
+
private _shouldDelayClosing;
|
|
15
|
+
private _closeTimeout;
|
|
16
|
+
private _messageComponentName;
|
|
17
|
+
constructor();
|
|
18
|
+
connectedCallback(messageComponentName?: string): void;
|
|
19
|
+
private static _appendMessagePortal;
|
|
20
|
+
private _setupEventListeners;
|
|
21
|
+
protected _positionMessage: () => void;
|
|
22
|
+
open: () => void;
|
|
23
|
+
close: () => void;
|
|
24
|
+
private _handleFocusWithinMessage;
|
|
25
|
+
private _handleReverseTab;
|
|
26
|
+
private _isBaseMessage;
|
|
27
|
+
}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { property } from 'lit/decorators';
|
|
3
|
+
import { UiDomUtils } from '@dreamcommerce/utilities';
|
|
4
|
+
import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
|
|
5
|
+
import { PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP, PORTAL_TARGET_ATTRIBUTE_NAME } from '../portal/portal_constants.js';
|
|
6
|
+
import { KeystrokesController } from '../../controllers/keystrokes_controller/keystrokes_controller.js';
|
|
7
|
+
import { DIRECTIONS } from '../../controllers/relative_position_controller/relative_position_controller_constants.js';
|
|
8
|
+
import { ClickOutsideController } from '../../controllers/click_outside_controller/click_outside_controller.js';
|
|
9
|
+
import { RelativePositionController } from '../../controllers/relative_position_controller/relative_position_controller.js';
|
|
10
|
+
import { DEFAULT_MESSAGE_PORTAL_NAME, DEFAULT_MESSAGE_OFFSET, MESSAGE_SHOW_DELAY_IN_MS, MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS, MESSAGE_REMOVED_CLASS_NAME, MESSAGE_CLOSE_DELAY_IN_MS, MESSAGE_CONTENT_ELEMENTS, MESSAGE_ELEMENTS } from './base_message_constants.js';
|
|
11
|
+
|
|
12
|
+
class BaseMessage extends PhoenixLightLitElement {
|
|
13
|
+
constructor() {
|
|
14
|
+
super();
|
|
15
|
+
this.opened = false;
|
|
16
|
+
this.portalTarget = DEFAULT_MESSAGE_PORTAL_NAME;
|
|
17
|
+
this.direction = DIRECTIONS.topCenter;
|
|
18
|
+
this.offset = DEFAULT_MESSAGE_OFFSET;
|
|
19
|
+
this._setupEventListeners = () => {
|
|
20
|
+
this.addEventListener('mouseenter', this.open);
|
|
21
|
+
this.addEventListener('mouseleave', this.close);
|
|
22
|
+
this.addEventListener('focus', this.open);
|
|
23
|
+
};
|
|
24
|
+
this._positionMessage = () => {
|
|
25
|
+
requestAnimationFrame(() => {
|
|
26
|
+
var _a;
|
|
27
|
+
(_a = this._$messageContent) === null || _a === void 0 ? void 0 : _a.setAttribute('direction', this._positionController.position());
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
this.open = () => {
|
|
31
|
+
this._tooltipOpenTime = Date.now();
|
|
32
|
+
clearTimeout(this._closeTimeout);
|
|
33
|
+
this._openTimeout = setTimeout(() => {
|
|
34
|
+
if (this.opened)
|
|
35
|
+
return;
|
|
36
|
+
this.opened = true;
|
|
37
|
+
}, MESSAGE_SHOW_DELAY_IN_MS);
|
|
38
|
+
};
|
|
39
|
+
this.close = () => {
|
|
40
|
+
this._shouldDelayClosing = Date.now() - this._tooltipOpenTime > MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS;
|
|
41
|
+
clearTimeout(this._openTimeout);
|
|
42
|
+
if (!this.opened)
|
|
43
|
+
return;
|
|
44
|
+
this._closeTimeout = setTimeout(() => {
|
|
45
|
+
const transitionDuration = parseFloat(getComputedStyle(this._$messageContent || this).transitionDuration) * 1000;
|
|
46
|
+
window.requestAnimationFrame(() => {
|
|
47
|
+
var _a;
|
|
48
|
+
(_a = this._$messageContent) === null || _a === void 0 ? void 0 : _a.classList.add(`${this._messageComponentName}_${MESSAGE_REMOVED_CLASS_NAME}`);
|
|
49
|
+
setTimeout(() => {
|
|
50
|
+
var _a;
|
|
51
|
+
this.opened = false;
|
|
52
|
+
this._shouldDelayClosing = false;
|
|
53
|
+
(_a = this._$messageContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${this._messageComponentName}_${MESSAGE_REMOVED_CLASS_NAME}`);
|
|
54
|
+
}, transitionDuration);
|
|
55
|
+
});
|
|
56
|
+
}, this._shouldDelayClosing ? MESSAGE_CLOSE_DELAY_IN_MS : 0);
|
|
57
|
+
};
|
|
58
|
+
this._handleFocusWithinMessage = (ev) => {
|
|
59
|
+
var _a;
|
|
60
|
+
if (((_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.closest(`.${this._messageComponentName}`)) !== this)
|
|
61
|
+
this.close();
|
|
62
|
+
if (!document.activeElement || ev.shiftKey)
|
|
63
|
+
return;
|
|
64
|
+
const $focusableElements = UiDomUtils.getFocusableElements(this);
|
|
65
|
+
const activeElementIndex = $focusableElements.indexOf(document.activeElement);
|
|
66
|
+
const isLastFocusableChild = activeElementIndex === $focusableElements.length - 1;
|
|
67
|
+
if (!isLastFocusableChild)
|
|
68
|
+
return;
|
|
69
|
+
this.close();
|
|
70
|
+
};
|
|
71
|
+
this._handleReverseTab = () => {
|
|
72
|
+
const $focusableElements = UiDomUtils.getFocusableElements(document.body);
|
|
73
|
+
const activeElement = document.activeElement;
|
|
74
|
+
const indexOfCurrentlyFocusedElement = $focusableElements.indexOf(activeElement);
|
|
75
|
+
const $previousElement = $focusableElements[indexOfCurrentlyFocusedElement - 1];
|
|
76
|
+
const $previousElementMessageParent = $previousElement === null || $previousElement === void 0 ? void 0 : $previousElement.closest(`h-${this._messageComponentName}`);
|
|
77
|
+
if ($previousElementMessageParent === this)
|
|
78
|
+
return;
|
|
79
|
+
if ($previousElementMessageParent)
|
|
80
|
+
$previousElementMessageParent.open();
|
|
81
|
+
if (this._isBaseMessage(activeElement))
|
|
82
|
+
activeElement.close();
|
|
83
|
+
};
|
|
84
|
+
this._clickOutsideController = new ClickOutsideController({
|
|
85
|
+
host: this,
|
|
86
|
+
container: this,
|
|
87
|
+
action: this.close
|
|
88
|
+
});
|
|
89
|
+
new KeystrokesController({
|
|
90
|
+
host: this,
|
|
91
|
+
keys: ['tab'],
|
|
92
|
+
target: this,
|
|
93
|
+
callback: this._handleFocusWithinMessage
|
|
94
|
+
});
|
|
95
|
+
new KeystrokesController({
|
|
96
|
+
host: this,
|
|
97
|
+
keys: [['shift', 'tab']],
|
|
98
|
+
target: document.body,
|
|
99
|
+
callback: this._handleReverseTab
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
connectedCallback(messageComponentName = '') {
|
|
103
|
+
super.connectedCallback();
|
|
104
|
+
this._messageComponentName = messageComponentName;
|
|
105
|
+
BaseMessage._appendMessagePortal();
|
|
106
|
+
if (!this._$messageContent)
|
|
107
|
+
this._$messageContent = this.querySelector(MESSAGE_CONTENT_ELEMENTS.join(','));
|
|
108
|
+
if (!this._positionController && this._$messageContent)
|
|
109
|
+
this._positionController = new RelativePositionController({
|
|
110
|
+
host: this,
|
|
111
|
+
direction: this.direction,
|
|
112
|
+
relativeElement: this,
|
|
113
|
+
elementToPosition: this._$messageContent,
|
|
114
|
+
offset: this.offset
|
|
115
|
+
});
|
|
116
|
+
this.setAttribute('tabindex', '0');
|
|
117
|
+
this._setupEventListeners();
|
|
118
|
+
}
|
|
119
|
+
static _appendMessagePortal() {
|
|
120
|
+
const $messagePortalTarget = document.querySelector(`[name="${DEFAULT_MESSAGE_PORTAL_NAME}"]`);
|
|
121
|
+
if ($messagePortalTarget)
|
|
122
|
+
return;
|
|
123
|
+
const $portalTarget = document.createElement(PORTAL_TARGET_COMPONENT_NAME);
|
|
124
|
+
$portalTarget.setAttribute(PORTAL_TARGET_NAME_PROP, DEFAULT_MESSAGE_PORTAL_NAME);
|
|
125
|
+
document.body.appendChild($portalTarget);
|
|
126
|
+
}
|
|
127
|
+
_isBaseMessage($element) {
|
|
128
|
+
if (MESSAGE_ELEMENTS.includes($element.localName))
|
|
129
|
+
return true;
|
|
130
|
+
return false;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
__decorate([
|
|
134
|
+
property({ type: Boolean, reflect: true }),
|
|
135
|
+
__metadata("design:type", Object)
|
|
136
|
+
], BaseMessage.prototype, "opened", void 0);
|
|
137
|
+
__decorate([
|
|
138
|
+
property({ type: String, attribute: PORTAL_TARGET_ATTRIBUTE_NAME }),
|
|
139
|
+
__metadata("design:type", Object)
|
|
140
|
+
], BaseMessage.prototype, "portalTarget", void 0);
|
|
141
|
+
__decorate([
|
|
142
|
+
property({ type: String, reflect: true }),
|
|
143
|
+
__metadata("design:type", String)
|
|
144
|
+
], BaseMessage.prototype, "direction", void 0);
|
|
145
|
+
__decorate([
|
|
146
|
+
property({ type: String }),
|
|
147
|
+
__metadata("design:type", Number)
|
|
148
|
+
], BaseMessage.prototype, "offset", void 0);
|
|
149
|
+
|
|
150
|
+
export { BaseMessage };
|
|
151
|
+
//# sourceMappingURL=base_message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const DEFAULT_MESSAGE_PORTAL_NAME = "message-portal";
|
|
2
|
+
export declare const MESSAGE_CONTENT_SLOT_NAME = "message-content";
|
|
3
|
+
export declare const MESSAGE_REMOVED_CLASS_NAME = "removed";
|
|
4
|
+
export declare const DEFAULT_MESSAGE_OFFSET = 10;
|
|
5
|
+
export declare const MESSAGE_ELEMENTS: string[];
|
|
6
|
+
export declare const MESSAGE_CONTENT_ELEMENTS: string[];
|
|
7
|
+
export declare const MESSAGE_SHOW_DELAY_IN_MS = 100;
|
|
8
|
+
export declare const MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS = 500;
|
|
9
|
+
export declare const MESSAGE_CLOSE_DELAY_IN_MS = 500;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { HINT_ELEMENT_NAME, HINT_CONTENT_ELEMENT_NAME } from './hints/hint_constants.js';
|
|
2
|
+
import { TOOLTIP_ELEMENT_NAME, TOOLTIP_CONTENT_ELEMENT_NAME } from './tooltips/tooltip_constants.js';
|
|
3
|
+
|
|
4
|
+
const DEFAULT_MESSAGE_PORTAL_NAME = 'message-portal';
|
|
5
|
+
const MESSAGE_CONTENT_SLOT_NAME = 'message-content';
|
|
6
|
+
const MESSAGE_REMOVED_CLASS_NAME = `removed`;
|
|
7
|
+
const DEFAULT_MESSAGE_OFFSET = 10;
|
|
8
|
+
const MESSAGE_ELEMENTS = [TOOLTIP_ELEMENT_NAME, HINT_ELEMENT_NAME];
|
|
9
|
+
const MESSAGE_CONTENT_ELEMENTS = [TOOLTIP_CONTENT_ELEMENT_NAME, HINT_CONTENT_ELEMENT_NAME];
|
|
10
|
+
const MESSAGE_SHOW_DELAY_IN_MS = 100;
|
|
11
|
+
const MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS = 500;
|
|
12
|
+
const MESSAGE_CLOSE_DELAY_IN_MS = 500;
|
|
13
|
+
|
|
14
|
+
export { DEFAULT_MESSAGE_OFFSET, DEFAULT_MESSAGE_PORTAL_NAME, MESSAGE_CLOSE_DELAY_IN_MS, MESSAGE_CONTENT_ELEMENTS, MESSAGE_CONTENT_SLOT_NAME, MESSAGE_ELEMENTS, MESSAGE_REMOVED_CLASS_NAME, MESSAGE_SHOW_DELAY_IN_MS, MESSAGE_TIME_TO_DELAY_CLOSING_IN_MS };
|
|
15
|
+
//# sourceMappingURL=base_message_constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { property } from 'lit/decorators';
|
|
3
|
+
import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
|
|
4
|
+
import { PORTAL_TARGET_ATTRIBUTE_NAME } from '../portal/portal_constants.js';
|
|
5
|
+
import { DEFAULT_MESSAGE_PORTAL_NAME, MESSAGE_CONTENT_SLOT_NAME } from './base_message_constants.js';
|
|
6
|
+
|
|
7
|
+
class BaseMessageContent extends PhoenixLightLitElement {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
this.portalTarget = DEFAULT_MESSAGE_PORTAL_NAME;
|
|
11
|
+
}
|
|
12
|
+
connectedCallback() {
|
|
13
|
+
super.connectedCallback();
|
|
14
|
+
this.slot = MESSAGE_CONTENT_SLOT_NAME;
|
|
15
|
+
this._setupAriaAttributes();
|
|
16
|
+
}
|
|
17
|
+
_setupAriaAttributes() {
|
|
18
|
+
this.setAttribute('role', 'tooltip');
|
|
19
|
+
this.setAttribute('inert', '');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
__decorate([
|
|
23
|
+
property({ type: String, attribute: PORTAL_TARGET_ATTRIBUTE_NAME }),
|
|
24
|
+
__metadata("design:type", Object)
|
|
25
|
+
], BaseMessageContent.prototype, "portalTarget", void 0);
|
|
26
|
+
|
|
27
|
+
export { BaseMessageContent };
|
|
28
|
+
//# sourceMappingURL=base_message_content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base_message_types.js","sourceRoot":"","sources":["../../../../../../../src/components/messages/base_message_types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
|
|
3
|
+
import { html } from 'lit-html';
|
|
4
|
+
import { HINT_DEFAULT_OFFSET, HINT_CLASS_NAME, HINT_ELEMENT_NAME } from './hint_constants.js';
|
|
5
|
+
import { MESSAGE_CONTENT_SLOT_NAME } from '../base_message_constants.js';
|
|
6
|
+
import { BaseMessage } from '../base_message.js';
|
|
7
|
+
|
|
8
|
+
let HHint = class HHint extends BaseMessage {
|
|
9
|
+
constructor() {
|
|
10
|
+
super();
|
|
11
|
+
this.offset = HINT_DEFAULT_OFFSET;
|
|
12
|
+
}
|
|
13
|
+
connectedCallback() {
|
|
14
|
+
super.connectedCallback(HINT_CLASS_NAME);
|
|
15
|
+
this.classList.add(HINT_CLASS_NAME);
|
|
16
|
+
}
|
|
17
|
+
render() {
|
|
18
|
+
super.render();
|
|
19
|
+
return html `
|
|
20
|
+
<h-portal ?disabled="${!this.opened}" @portal.open="${this._positionMessage}" to="${this.portalTarget}" hidden>
|
|
21
|
+
${this.getSlot(MESSAGE_CONTENT_SLOT_NAME)}
|
|
22
|
+
</h-portal>
|
|
23
|
+
`;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
HHint = __decorate([
|
|
27
|
+
phoenixCustomElement(HINT_ELEMENT_NAME),
|
|
28
|
+
__metadata("design:paramtypes", [])
|
|
29
|
+
], HHint);
|
|
30
|
+
|
|
31
|
+
export { HHint };
|
|
32
|
+
//# sourceMappingURL=hint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|