@shoper/phoenix_design_system 0.7.1 → 0.7.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/_virtual/_commonjsHelpers.js +14 -0
- package/build/cjs/_virtual/_commonjsHelpers.js.map +1 -0
- package/build/cjs/external/lit-html/async-directive.js +16 -0
- package/build/cjs/external/lit-html/async-directive.js.map +1 -0
- package/build/cjs/external/lit-html/directive-helpers.js +14 -0
- package/build/cjs/external/lit-html/directive-helpers.js.map +1 -0
- package/build/cjs/external/lit-html/directive.js +15 -0
- package/build/cjs/external/lit-html/directive.js.map +1 -0
- package/build/cjs/external/lit-html/directives/ref.js +17 -0
- package/build/cjs/external/lit-html/directives/ref.js.map +1 -0
- package/build/cjs/external/lit-html/lit-html.js +14 -0
- package/build/cjs/external/lit-html/lit-html.js.map +1 -0
- package/build/cjs/external/lodash/lodash.js +17110 -0
- package/build/cjs/external/lodash/lodash.js.map +1 -0
- package/build/cjs/external/tslib/tslib.es6.js +48 -0
- package/build/cjs/external/tslib/tslib.es6.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/regex.js +8 -0
- package/build/cjs/external/uuid/dist/esm-browser/regex.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/rng.js +26 -0
- package/build/cjs/external/uuid/dist/esm-browser/rng.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/stringify.js +36 -0
- package/build/cjs/external/uuid/dist/esm-browser/stringify.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/v4.js +29 -0
- package/build/cjs/external/uuid/dist/esm-browser/v4.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/validate.js +12 -0
- package/build/cjs/external/uuid/dist/esm-browser/validate.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +137 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js +28 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_content.js +30 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_content.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js +51 -0
- package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal.js +221 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_backdrop.js +66 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_backdrop.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_body.js +20 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_body.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_close.js +41 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_close.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_constants.js +19 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_footer.js +20 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_footer.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_header.js +20 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_header.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_opener.js +44 -0
- package/build/cjs/packages/phoenix/src/components/modal/modal_opener.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal.js +87 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal_constants.js +15 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal_target.js +77 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal_target.js.map +1 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal_target_error.js +9 -0
- package/build/cjs/packages/phoenix/src/components/portal/portal_target_error.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/btn_controller.js +24 -0
- package/build/cjs/packages/phoenix/src/controllers/btn_controller.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js +42 -0
- package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_messages.js +10 -0
- package/build/cjs/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_messages.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +50 -0
- package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.js +8 -0
- package/build/cjs/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_calculator.js +91 -0
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_calculator.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller.js +97 -0
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js +39 -0
- package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller.js +25 -0
- package/build/cjs/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller.js.map +1 -0
- package/build/cjs/packages/phoenix/src/core/context/context_consumer_controller.js +33 -0
- package/build/cjs/packages/phoenix/src/core/context/context_consumer_controller.js.map +1 -0
- package/build/cjs/packages/phoenix/src/core/context/context_consumer_messages_names.js +10 -0
- package/build/cjs/packages/phoenix/src/core/context/context_consumer_messages_names.js.map +1 -0
- package/build/cjs/packages/phoenix/src/core/context/context_provider_controller.js +39 -0
- package/build/cjs/packages/phoenix/src/core/context/context_provider_controller.js.map +1 -0
- package/build/cjs/packages/phoenix/src/core/decorators/phoenix_custom_element.js +58 -0
- package/build/cjs/packages/phoenix/src/core/decorators/phoenix_custom_element.js.map +1 -0
- package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element.js +48 -0
- package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_element.js.map +1 -0
- package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_elements_constants.js +8 -0
- package/build/cjs/packages/phoenix/src/core/phoenix_light_lit_elements_constants.js.map +1 -0
- package/build/cjs/packages/phoenix/src/hello_button.js +52 -0
- package/build/cjs/packages/phoenix/src/hello_button.js.map +1 -0
- package/build/cjs/packages/phoenix/src/index.js +115 -0
- package/build/cjs/packages/phoenix/src/index.js.map +1 -0
- package/build/cjs/packages/star_core/build/esm/packages/star_core/src/classes/values_container/values_container.js +67 -0
- package/build/cjs/packages/star_core/build/esm/packages/star_core/src/classes/values_container/values_container.js.map +1 -0
- package/build/esm/_virtual/_commonjsHelpers.js +9 -0
- package/build/esm/_virtual/_commonjsHelpers.js.map +1 -0
- package/build/esm/external/lit-html/async-directive.js +12 -0
- package/build/esm/external/lit-html/async-directive.js.map +1 -0
- package/build/esm/external/lit-html/directive-helpers.js +10 -0
- package/build/esm/external/lit-html/directive-helpers.js.map +1 -0
- package/build/esm/external/lit-html/directive.js +9 -0
- package/build/esm/external/lit-html/directive.js.map +1 -0
- package/build/esm/external/lit-html/directives/ref.js +12 -0
- package/build/esm/external/lit-html/directives/ref.js.map +1 -0
- package/build/esm/external/lit-html/lit-html.js +9 -0
- package/build/esm/external/lit-html/lit-html.js.map +1 -0
- package/build/esm/external/lodash/lodash.js +17106 -0
- package/build/esm/external/lodash/lodash.js.map +1 -0
- package/build/esm/external/tslib/tslib.es6.js +41 -0
- package/build/esm/external/tslib/tslib.es6.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/regex.js +4 -0
- package/build/esm/external/uuid/dist/esm-browser/regex.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/rng.js +22 -0
- package/build/esm/external/uuid/dist/esm-browser/rng.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/stringify.js +32 -0
- package/build/esm/external/uuid/dist/esm-browser/stringify.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/v4.js +25 -0
- package/build/esm/external/uuid/dist/esm-browser/v4.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/validate.js +8 -0
- package/build/esm/external/uuid/dist/esm-browser/validate.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +24 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +135 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.d.ts +12 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js +16 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.d.ts +6 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.js +28 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.d.ts +10 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js +49 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_types.d.ts +10 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_types.js +2 -0
- package/build/esm/packages/phoenix/src/components/dropdown/dropdown_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal.d.ts +31 -0
- package/build/esm/packages/phoenix/src/components/modal/modal.js +219 -0
- package/build/esm/packages/phoenix/src/components/modal/modal.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_backdrop.d.ts +12 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_backdrop.js +64 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_backdrop.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_body.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_body.js +18 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_body.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_close.d.ts +8 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_close.js +39 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_close.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_constants.d.ts +9 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_constants.js +12 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_footer.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_footer.js +18 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_footer.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_header.d.ts +4 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_header.js +18 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_header.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_opener.d.ts +9 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_opener.js +42 -0
- package/build/esm/packages/phoenix/src/components/modal/modal_opener.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/portal/portal.d.ts +14 -0
- package/build/esm/packages/phoenix/src/components/portal/portal.js +85 -0
- package/build/esm/packages/phoenix/src/components/portal/portal.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.d.ts +14 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.js +9 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_target.d.ts +13 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_target.js +75 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_target.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_target_error.d.ts +2 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_target_error.js +5 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_target_error.js.map +1 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_types.d.ts +5 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_types.js +2 -0
- package/build/esm/packages/phoenix/src/components/portal/portal_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/btn_controller.d.ts +8 -0
- package/build/esm/packages/phoenix/src/controllers/btn_controller.js +20 -0
- package/build/esm/packages/phoenix/src/controllers/btn_controller.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.d.ts +10 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js +38 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_messages.d.ts +3 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_messages.js +6 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_messages.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_types.d.ts +6 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_types.js +2 -0
- package/build/esm/packages/phoenix/src/controllers/click_outside_controller/click_outside_controller_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.d.ts +14 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js +46 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.d.ts +1 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.js +4 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_types.d.ts +6 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_types.js +2 -0
- package/build/esm/packages/phoenix/src/controllers/keystrokes_controller/keystrokes_controller_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_calculator.d.ts +10 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_calculator.js +87 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_calculator.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller.d.ts +12 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller.js +93 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.d.ts +26 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js +29 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_types.d.ts +27 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_types.js +4 -0
- package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller.d.ts +8 -0
- package/build/esm/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller.js +21 -0
- package/build/esm/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller.js.map +1 -0
- package/build/esm/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller_types.d.ts +9 -0
- package/build/esm/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller_types.js +3 -0
- package/build/esm/packages/phoenix/src/controllers/toggle_element_aria_controller/toggle_element_aria_controller_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.d.ts +8 -0
- package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.js +29 -0
- package/build/esm/packages/phoenix/src/core/context/context_consumer_controller.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/context/context_consumer_messages_names.d.ts +3 -0
- package/build/esm/packages/phoenix/src/core/context/context_consumer_messages_names.js +6 -0
- package/build/esm/packages/phoenix/src/core/context/context_consumer_messages_names.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/context/context_controller_types.d.ts +6 -0
- package/build/esm/packages/phoenix/src/core/context/context_controller_types.js +2 -0
- package/build/esm/packages/phoenix/src/core/context/context_controller_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/context/context_provider_controller.d.ts +9 -0
- package/build/esm/packages/phoenix/src/core/context/context_provider_controller.js +35 -0
- package/build/esm/packages/phoenix/src/core/context/context_provider_controller.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/decorators/phoenix_custom_element.d.ts +21 -0
- package/build/esm/packages/phoenix/src/core/decorators/phoenix_custom_element.js +54 -0
- package/build/esm/packages/phoenix/src/core/decorators/phoenix_custom_element.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element.d.ts +8 -0
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element.js +44 -0
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_element.js.map +1 -0
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_elements_constants.d.ts +1 -0
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_elements_constants.js +4 -0
- package/build/esm/packages/phoenix/src/core/phoenix_light_lit_elements_constants.js.map +1 -0
- package/build/esm/packages/phoenix/src/global_types.d.ts +25 -0
- package/build/esm/packages/phoenix/src/global_types.js +2 -0
- package/build/esm/packages/phoenix/src/global_types.js.map +1 -0
- package/build/esm/packages/phoenix/src/hello_button.d.ts +9 -0
- package/build/esm/packages/phoenix/src/hello_button.js +50 -0
- package/build/esm/packages/phoenix/src/hello_button.js.map +1 -0
- package/build/esm/packages/phoenix/src/index.d.ts +22 -0
- package/build/esm/packages/phoenix/src/index.js +22 -0
- package/build/esm/packages/phoenix/src/index.js.map +1 -0
- package/build/esm/packages/star_core/build/esm/packages/star_core/src/classes/values_container/values_container.js +63 -0
- package/build/esm/packages/star_core/build/esm/packages/star_core/src/classes/values_container/values_container.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { __classPrivateFieldSet, __classPrivateFieldGet } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import 'lit';
|
|
3
|
+
import { DEFAULT_THROTTLE_WAIT_TIME, DEFAULT_SCROLL_THROTTLE_WAIT_TIME, OVERFLOW_SCROLL, OVERFLOW_AUTO, NON_STATIC_POSITIONS } from './relative_position_controller_constants.js';
|
|
4
|
+
import { PositionCalculator } from './relative_position_calculator.js';
|
|
5
|
+
import lodash from '../../../../../external/lodash/lodash.js';
|
|
6
|
+
|
|
7
|
+
var _RelativePositionController_host, _RelativePositionController_container, _RelativePositionController_nearestNonStaticElementFromElementToPosition, _RelativePositionController_direction, _RelativePositionController_nearestScrollableElement, _RelativePositionController_relativeElement, _RelativePositionController_elementToPosition, _RelativePositionController_throttledReposition, _RelativePositionController_throttledRepositionForScroll;
|
|
8
|
+
class RelativePositionController {
|
|
9
|
+
constructor({ host, container, direction, relativeElement, elementToPosition }) {
|
|
10
|
+
_RelativePositionController_host.set(this, void 0);
|
|
11
|
+
_RelativePositionController_container.set(this, void 0);
|
|
12
|
+
_RelativePositionController_nearestNonStaticElementFromElementToPosition.set(this, void 0);
|
|
13
|
+
_RelativePositionController_direction.set(this, void 0);
|
|
14
|
+
_RelativePositionController_nearestScrollableElement.set(this, void 0);
|
|
15
|
+
_RelativePositionController_relativeElement.set(this, void 0);
|
|
16
|
+
_RelativePositionController_elementToPosition.set(this, void 0);
|
|
17
|
+
_RelativePositionController_throttledReposition.set(this, lodash.throttle(() => {
|
|
18
|
+
this.position();
|
|
19
|
+
}, DEFAULT_THROTTLE_WAIT_TIME));
|
|
20
|
+
_RelativePositionController_throttledRepositionForScroll.set(this, lodash.throttle(() => {
|
|
21
|
+
this.position();
|
|
22
|
+
}, DEFAULT_SCROLL_THROTTLE_WAIT_TIME));
|
|
23
|
+
__classPrivateFieldSet(this, _RelativePositionController_host, host, "f");
|
|
24
|
+
__classPrivateFieldSet(this, _RelativePositionController_container, container, "f");
|
|
25
|
+
__classPrivateFieldSet(this, _RelativePositionController_direction, direction, "f");
|
|
26
|
+
__classPrivateFieldSet(this, _RelativePositionController_relativeElement, relativeElement, "f");
|
|
27
|
+
__classPrivateFieldSet(this, _RelativePositionController_elementToPosition, elementToPosition, "f");
|
|
28
|
+
__classPrivateFieldGet(this, _RelativePositionController_host, "f").addController(this);
|
|
29
|
+
}
|
|
30
|
+
hostConnected() {
|
|
31
|
+
__classPrivateFieldGet(this, _RelativePositionController_host, "f").addEventListener('resize', __classPrivateFieldGet(this, _RelativePositionController_throttledReposition, "f"));
|
|
32
|
+
if (!__classPrivateFieldGet(this, _RelativePositionController_relativeElement, "f"))
|
|
33
|
+
return;
|
|
34
|
+
if (!__classPrivateFieldGet(this, _RelativePositionController_nearestScrollableElement, "f")) {
|
|
35
|
+
__classPrivateFieldSet(this, _RelativePositionController_nearestScrollableElement, this._findNearestScrollableElement(__classPrivateFieldGet(this, _RelativePositionController_relativeElement, "f")), "f");
|
|
36
|
+
}
|
|
37
|
+
__classPrivateFieldGet(this, _RelativePositionController_nearestScrollableElement, "f").addEventListener('scroll', __classPrivateFieldGet(this, _RelativePositionController_throttledRepositionForScroll, "f"));
|
|
38
|
+
}
|
|
39
|
+
hostDisconnected() {
|
|
40
|
+
__classPrivateFieldGet(this, _RelativePositionController_host, "f").removeEventListener('resize', __classPrivateFieldGet(this, _RelativePositionController_throttledReposition, "f"));
|
|
41
|
+
if (__classPrivateFieldGet(this, _RelativePositionController_nearestScrollableElement, "f"))
|
|
42
|
+
__classPrivateFieldGet(this, _RelativePositionController_nearestScrollableElement, "f").removeEventListener('scroll', __classPrivateFieldGet(this, _RelativePositionController_throttledRepositionForScroll, "f"));
|
|
43
|
+
}
|
|
44
|
+
position() {
|
|
45
|
+
if (!__classPrivateFieldGet(this, _RelativePositionController_relativeElement, "f") || !__classPrivateFieldGet(this, _RelativePositionController_elementToPosition, "f"))
|
|
46
|
+
return;
|
|
47
|
+
__classPrivateFieldSet(this, _RelativePositionController_nearestNonStaticElementFromElementToPosition, this._findContainer(__classPrivateFieldGet(this, _RelativePositionController_elementToPosition, "f")), "f");
|
|
48
|
+
if (!__classPrivateFieldGet(this, _RelativePositionController_container, "f"))
|
|
49
|
+
__classPrivateFieldSet(this, _RelativePositionController_container, __classPrivateFieldGet(this, _RelativePositionController_nearestNonStaticElementFromElementToPosition, "f"), "f");
|
|
50
|
+
const position = new PositionCalculator({
|
|
51
|
+
direction: __classPrivateFieldGet(this, _RelativePositionController_direction, "f"),
|
|
52
|
+
relativeElementRect: __classPrivateFieldGet(this, _RelativePositionController_relativeElement, "f").getBoundingClientRect(),
|
|
53
|
+
positionElementRect: __classPrivateFieldGet(this, _RelativePositionController_elementToPosition, "f").getBoundingClientRect(),
|
|
54
|
+
nearestNonStaticElementFromElementToPositionRect: __classPrivateFieldGet(this, _RelativePositionController_nearestNonStaticElementFromElementToPosition, "f").getBoundingClientRect(),
|
|
55
|
+
container: __classPrivateFieldGet(this, _RelativePositionController_container, "f")
|
|
56
|
+
}).calculatePosition();
|
|
57
|
+
this._setElementPosition(position);
|
|
58
|
+
}
|
|
59
|
+
_findNearestScrollableElement(element) {
|
|
60
|
+
const overflowArray = ['overflow', 'overflowY', 'overflowX'];
|
|
61
|
+
return this._findParentBasedOnStyle(element, overflowArray, (overflowArray) => overflowArray.includes(OVERFLOW_SCROLL) || overflowArray.includes(OVERFLOW_AUTO));
|
|
62
|
+
}
|
|
63
|
+
_findContainer(element) {
|
|
64
|
+
return this._findParentBasedOnStyle(element, ['position'], ([position]) => NON_STATIC_POSITIONS.includes(position));
|
|
65
|
+
}
|
|
66
|
+
_findParentBasedOnStyle(element, styles, callback) {
|
|
67
|
+
const parent = element.parentElement;
|
|
68
|
+
if (!parent)
|
|
69
|
+
return document.body;
|
|
70
|
+
const parentStyles = styles.reduce((styles, currentStyle) => {
|
|
71
|
+
return [...styles, window.getComputedStyle(parent)[currentStyle]];
|
|
72
|
+
}, []);
|
|
73
|
+
if (callback(parentStyles) || parent === document.body)
|
|
74
|
+
return parent;
|
|
75
|
+
return this._findParentBasedOnStyle(parent, styles, callback);
|
|
76
|
+
}
|
|
77
|
+
_setElementPosition(position) {
|
|
78
|
+
if (!__classPrivateFieldGet(this, _RelativePositionController_elementToPosition, "f"))
|
|
79
|
+
return;
|
|
80
|
+
const { style: elementStyle } = __classPrivateFieldGet(this, _RelativePositionController_elementToPosition, "f");
|
|
81
|
+
if (elementStyle.position !== 'absolute')
|
|
82
|
+
elementStyle.position = 'absolute';
|
|
83
|
+
if (elementStyle.top !== '0')
|
|
84
|
+
elementStyle.top = '0';
|
|
85
|
+
if (elementStyle.left !== '0')
|
|
86
|
+
elementStyle.left = '0';
|
|
87
|
+
__classPrivateFieldGet(this, _RelativePositionController_elementToPosition, "f").style.transform = `translate3d(${position.left}px, ${position.top}px, 0)`;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
_RelativePositionController_host = new WeakMap(), _RelativePositionController_container = new WeakMap(), _RelativePositionController_nearestNonStaticElementFromElementToPosition = new WeakMap(), _RelativePositionController_direction = new WeakMap(), _RelativePositionController_nearestScrollableElement = new WeakMap(), _RelativePositionController_relativeElement = new WeakMap(), _RelativePositionController_elementToPosition = new WeakMap(), _RelativePositionController_throttledReposition = new WeakMap(), _RelativePositionController_throttledRepositionForScroll = new WeakMap();
|
|
91
|
+
|
|
92
|
+
export { RelativePositionController };
|
|
93
|
+
//# sourceMappingURL=relative_position_controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,+DAA+D,4CAAgD;AAC/G;AACA;AACA;AACA,mBAAmB,0CAA8C;AACjE;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,26 @@
|
|
|
1
|
+
export declare const DIRECTIONS: {
|
|
2
|
+
readonly bottomLeft: "bottom-left";
|
|
3
|
+
readonly bottomRight: "bottom-right";
|
|
4
|
+
readonly bottomCenter: "bottom-center";
|
|
5
|
+
readonly topLeft: "top-left";
|
|
6
|
+
readonly topRight: "top-right";
|
|
7
|
+
readonly topCenter: "top-center";
|
|
8
|
+
readonly rightTop: "right-top";
|
|
9
|
+
readonly rightCenter: "right-center";
|
|
10
|
+
readonly rightBottom: "right-bottom";
|
|
11
|
+
readonly leftTop: "left-top";
|
|
12
|
+
readonly leftCenter: "left-center";
|
|
13
|
+
readonly leftBottom: "left-bottom";
|
|
14
|
+
};
|
|
15
|
+
export declare const CALCULATOR_DIRECTIONS: {
|
|
16
|
+
readonly bottom: "bottom";
|
|
17
|
+
readonly top: "top";
|
|
18
|
+
readonly left: "left";
|
|
19
|
+
readonly right: "right";
|
|
20
|
+
readonly center: "center";
|
|
21
|
+
};
|
|
22
|
+
export declare const NON_STATIC_POSITIONS: string[];
|
|
23
|
+
export declare const OVERFLOW_SCROLL = "scroll";
|
|
24
|
+
export declare const OVERFLOW_AUTO = "auto";
|
|
25
|
+
export declare const DEFAULT_THROTTLE_WAIT_TIME = 300;
|
|
26
|
+
export declare const DEFAULT_SCROLL_THROTTLE_WAIT_TIME = 15;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
const DIRECTIONS = {
|
|
2
|
+
bottomLeft: 'bottom-left',
|
|
3
|
+
bottomRight: 'bottom-right',
|
|
4
|
+
bottomCenter: 'bottom-center',
|
|
5
|
+
topLeft: 'top-left',
|
|
6
|
+
topRight: 'top-right',
|
|
7
|
+
topCenter: 'top-center',
|
|
8
|
+
rightTop: 'right-top',
|
|
9
|
+
rightCenter: 'right-center',
|
|
10
|
+
rightBottom: 'right-bottom',
|
|
11
|
+
leftTop: 'left-top',
|
|
12
|
+
leftCenter: 'left-center',
|
|
13
|
+
leftBottom: 'left-bottom'
|
|
14
|
+
};
|
|
15
|
+
const CALCULATOR_DIRECTIONS = {
|
|
16
|
+
bottom: 'bottom',
|
|
17
|
+
top: 'top',
|
|
18
|
+
left: 'left',
|
|
19
|
+
right: 'right',
|
|
20
|
+
center: 'center'
|
|
21
|
+
};
|
|
22
|
+
const NON_STATIC_POSITIONS = ['relative', 'absolute', 'fixed', 'sticky'];
|
|
23
|
+
const OVERFLOW_SCROLL = 'scroll';
|
|
24
|
+
const OVERFLOW_AUTO = 'auto';
|
|
25
|
+
const DEFAULT_THROTTLE_WAIT_TIME = 300;
|
|
26
|
+
const DEFAULT_SCROLL_THROTTLE_WAIT_TIME = 15;
|
|
27
|
+
|
|
28
|
+
export { CALCULATOR_DIRECTIONS, DEFAULT_SCROLL_THROTTLE_WAIT_TIME, DEFAULT_THROTTLE_WAIT_TIME, DIRECTIONS, NON_STATIC_POSITIONS, OVERFLOW_AUTO, OVERFLOW_SCROLL };
|
|
29
|
+
//# sourceMappingURL=relative_position_controller_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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { CALCULATOR_DIRECTIONS, DIRECTIONS } from "./relative_position_controller_constants";
|
|
2
|
+
import { ReactiveController, ReactiveControllerHost } from 'lit';
|
|
3
|
+
import { Any } from 'ts-toolbelt';
|
|
4
|
+
export declare type TDirection = Any.Keys<typeof DIRECTIONS>;
|
|
5
|
+
export declare type TSideDirection = Any.Keys<Pick<typeof CALCULATOR_DIRECTIONS, 'left' | 'right' | 'top' | 'bottom'>>;
|
|
6
|
+
export declare type TAlignmentDirection = Any.Keys<typeof CALCULATOR_DIRECTIONS>;
|
|
7
|
+
export declare type TRelativePositionControllerConstructorOptions = {
|
|
8
|
+
host: ReactiveControllerHost & HTMLElement;
|
|
9
|
+
direction: TDirection;
|
|
10
|
+
container?: HTMLElement;
|
|
11
|
+
relativeElement: HTMLElement;
|
|
12
|
+
elementToPosition: HTMLElement;
|
|
13
|
+
};
|
|
14
|
+
export interface IRelativePositionController extends ReactiveController {
|
|
15
|
+
position(): void;
|
|
16
|
+
}
|
|
17
|
+
export declare type TRelativePositionControllerPositionData = {
|
|
18
|
+
left: number;
|
|
19
|
+
top: number;
|
|
20
|
+
};
|
|
21
|
+
export declare type TRelativePositionCalculatorConstructorOptions = {
|
|
22
|
+
direction: TDirection;
|
|
23
|
+
relativeElementRect: DOMRect;
|
|
24
|
+
positionElementRect: DOMRect;
|
|
25
|
+
nearestNonStaticElementFromElementToPositionRect: DOMRect;
|
|
26
|
+
container?: HTMLElement;
|
|
27
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relative_position_controller_types.js","sourceRoot":"","sources":["../../../../../../../src/controllers/relative_position_controller/relative_position_controller_types.ts"],"names":[],"mappings":"AAAA,OAAkD,8FAA8F,CAAC;AACjJ,OAA2D,KAAK,CAAC;AAEjE,OAAoB,aAAa,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IToggleElementAriaController, TToggleElementAriaControllerProps } from './toggle_element_aria_controller_types';
|
|
2
|
+
export declare class ToggleElementAriaController implements IToggleElementAriaController {
|
|
3
|
+
#private;
|
|
4
|
+
private _initialAriaExpandedValue;
|
|
5
|
+
constructor({ host, initialAriaExpandedValue }: TToggleElementAriaControllerProps);
|
|
6
|
+
hostConnected(): void;
|
|
7
|
+
toggleAriaExpandedAttribute(): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { __classPrivateFieldSet, __classPrivateFieldGet } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
|
|
3
|
+
var _ToggleElementAriaController_host;
|
|
4
|
+
class ToggleElementAriaController {
|
|
5
|
+
constructor({ host, initialAriaExpandedValue }) {
|
|
6
|
+
_ToggleElementAriaController_host.set(this, void 0);
|
|
7
|
+
this._initialAriaExpandedValue = initialAriaExpandedValue;
|
|
8
|
+
__classPrivateFieldSet(this, _ToggleElementAriaController_host, host, "f");
|
|
9
|
+
__classPrivateFieldGet(this, _ToggleElementAriaController_host, "f").addController(this);
|
|
10
|
+
}
|
|
11
|
+
hostConnected() {
|
|
12
|
+
__classPrivateFieldGet(this, _ToggleElementAriaController_host, "f").setAttribute('aria-expanded', this._initialAriaExpandedValue ? 'true' : 'false');
|
|
13
|
+
}
|
|
14
|
+
toggleAriaExpandedAttribute() {
|
|
15
|
+
__classPrivateFieldGet(this, _ToggleElementAriaController_host, "f").setAttribute('aria-expanded', __classPrivateFieldGet(this, _ToggleElementAriaController_host, "f").getAttribute('aria-expanded') === 'true' ? 'false' : 'true');
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
_ToggleElementAriaController_host = new WeakMap();
|
|
19
|
+
|
|
20
|
+
export { ToggleElementAriaController };
|
|
21
|
+
//# sourceMappingURL=toggle_element_aria_controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,+DAA+D,4CAAgD;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactiveController } from 'lit';
|
|
2
|
+
import { TWebComponentsContextControllerHost } from "../../core/context/context_controller_types";
|
|
3
|
+
export interface IToggleElementAriaController extends ReactiveController {
|
|
4
|
+
toggleAriaExpandedAttribute: (newAriaExpandedValue: boolean) => void;
|
|
5
|
+
}
|
|
6
|
+
export declare type TToggleElementAriaControllerProps = {
|
|
7
|
+
host: TWebComponentsContextControllerHost;
|
|
8
|
+
initialAriaExpandedValue: boolean;
|
|
9
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggle_element_aria_controller_types.js","sourceRoot":"","sources":["../../../../../../../src/controllers/toggle_element_aria_controller/toggle_element_aria_controller_types.ts"],"names":[],"mappings":"AAAA,OAAmC,KAAK,CAAC;AACzC,OAAoD,oDAAoD,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TContextValueKey, TWebComponentsContextControllerHost } from "./context_controller_types";
|
|
2
|
+
import { ReactiveController } from 'lit';
|
|
3
|
+
export declare class ContextConsumerController<TValue> implements ReactiveController {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(host: TWebComponentsContextControllerHost);
|
|
6
|
+
consume(key: TContextValueKey): TValue;
|
|
7
|
+
hostConnected(): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { __classPrivateFieldSet, __classPrivateFieldGet } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import 'lit';
|
|
3
|
+
import { WEB_COMPONENT_CONTEXT_EVENTS } from './context_consumer_messages_names.js';
|
|
4
|
+
|
|
5
|
+
var _ContextConsumerController_host;
|
|
6
|
+
class ContextConsumerController {
|
|
7
|
+
constructor(host) {
|
|
8
|
+
_ContextConsumerController_host.set(this, void 0);
|
|
9
|
+
__classPrivateFieldSet(this, _ContextConsumerController_host, host, "f");
|
|
10
|
+
__classPrivateFieldGet(this, _ContextConsumerController_host, "f").addController(this);
|
|
11
|
+
}
|
|
12
|
+
consume(key) {
|
|
13
|
+
const consumeEvent = new CustomEvent(WEB_COMPONENT_CONTEXT_EVENTS.valueRequested, {
|
|
14
|
+
bubbles: true,
|
|
15
|
+
cancelable: true,
|
|
16
|
+
composed: true,
|
|
17
|
+
detail: { key }
|
|
18
|
+
});
|
|
19
|
+
__classPrivateFieldGet(this, _ContextConsumerController_host, "f").dispatchEvent(consumeEvent);
|
|
20
|
+
return consumeEvent.detail[key];
|
|
21
|
+
}
|
|
22
|
+
// Added to fix typescript error
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
24
|
+
hostConnected() { }
|
|
25
|
+
}
|
|
26
|
+
_ContextConsumerController_host = new WeakMap();
|
|
27
|
+
|
|
28
|
+
export { ContextConsumerController };
|
|
29
|
+
//# sourceMappingURL=context_consumer_controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,+DAA+D,4CAAgD;AAC/G;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 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ReactiveControllerHost } from 'lit';
|
|
2
|
+
export declare type TWebComponentsContextControllerHost = ReactiveControllerHost & Element;
|
|
3
|
+
export declare type TConsumerEventDetails<TValue> = {
|
|
4
|
+
[key: string]: TValue | TContextValueKey;
|
|
5
|
+
};
|
|
6
|
+
export declare type TContextValueKey = string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context_controller_types.js","sourceRoot":"","sources":["../../../../../../../src/core/context/context_controller_types.ts"],"names":[],"mappings":"AAAA,OAAuC,KAAK,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactiveController } from 'lit';
|
|
2
|
+
import { TContextValueKey, TWebComponentsContextControllerHost } from "./context_controller_types";
|
|
3
|
+
export declare class ContextProviderController<TValue> implements ReactiveController {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(host: TWebComponentsContextControllerHost);
|
|
6
|
+
provide(key: TContextValueKey, value: TValue): void;
|
|
7
|
+
hostConnected(): void;
|
|
8
|
+
hostDisconnected(): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from '../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import 'lit';
|
|
3
|
+
import { WEB_COMPONENT_CONTEXT_EVENTS } from './context_consumer_messages_names.js';
|
|
4
|
+
import { ValuesContainer } from '../../../../star_core/build/esm/packages/star_core/src/classes/values_container/values_container.js';
|
|
5
|
+
|
|
6
|
+
var _ContextProviderController_host, _ContextProviderController_contextValues, _ContextProviderController_handleRequestedValue;
|
|
7
|
+
class ContextProviderController {
|
|
8
|
+
constructor(host) {
|
|
9
|
+
_ContextProviderController_host.set(this, void 0);
|
|
10
|
+
_ContextProviderController_contextValues.set(this, new ValuesContainer());
|
|
11
|
+
_ContextProviderController_handleRequestedValue.set(this, (event) => {
|
|
12
|
+
const customEvent = event;
|
|
13
|
+
const valueKey = customEvent.detail.key;
|
|
14
|
+
if (!__classPrivateFieldGet(this, _ContextProviderController_contextValues, "f").has(valueKey))
|
|
15
|
+
return;
|
|
16
|
+
customEvent.detail[valueKey] = __classPrivateFieldGet(this, _ContextProviderController_contextValues, "f").get(valueKey);
|
|
17
|
+
event.stopPropagation();
|
|
18
|
+
});
|
|
19
|
+
__classPrivateFieldSet(this, _ContextProviderController_host, host, "f");
|
|
20
|
+
__classPrivateFieldGet(this, _ContextProviderController_host, "f").addController(this);
|
|
21
|
+
}
|
|
22
|
+
provide(key, value) {
|
|
23
|
+
__classPrivateFieldGet(this, _ContextProviderController_contextValues, "f").add(key, value);
|
|
24
|
+
}
|
|
25
|
+
hostConnected() {
|
|
26
|
+
__classPrivateFieldGet(this, _ContextProviderController_host, "f").addEventListener(WEB_COMPONENT_CONTEXT_EVENTS.valueRequested, __classPrivateFieldGet(this, _ContextProviderController_handleRequestedValue, "f"));
|
|
27
|
+
}
|
|
28
|
+
hostDisconnected() {
|
|
29
|
+
__classPrivateFieldGet(this, _ContextProviderController_host, "f").removeEventListener(WEB_COMPONENT_CONTEXT_EVENTS.valueRequested, __classPrivateFieldGet(this, _ContextProviderController_handleRequestedValue, "f"));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
_ContextProviderController_host = new WeakMap(), _ContextProviderController_contextValues = new WeakMap(), _ContextProviderController_handleRequestedValue = new WeakMap();
|
|
33
|
+
|
|
34
|
+
export { ContextProviderController };
|
|
35
|
+
//# sourceMappingURL=context_provider_controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,+DAA+D,4CAAgD;AAC/G;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,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Allow for custom element classes with private constructors
|
|
3
|
+
*/
|
|
4
|
+
import { ClassDescriptor, IPhoenixWebComponentClass } from "../../global_types";
|
|
5
|
+
declare type CustomElementClass = Omit<typeof HTMLElement, 'new'> & IPhoenixWebComponentClass;
|
|
6
|
+
/**
|
|
7
|
+
* Class decorator factory that defines the decorated class as a custom element.
|
|
8
|
+
*
|
|
9
|
+
* ```js
|
|
10
|
+
* @phoenixCustomElement('my-element')
|
|
11
|
+
* class MyElement extends LitElement {
|
|
12
|
+
* render() {
|
|
13
|
+
* return html``;
|
|
14
|
+
* }
|
|
15
|
+
* }
|
|
16
|
+
* ```
|
|
17
|
+
* @category Decorator
|
|
18
|
+
* @param tagName The tag name of the custom element to define.
|
|
19
|
+
*/
|
|
20
|
+
export declare const phoenixCustomElement: (tagName: string) => (classOrDescriptor: CustomElementClass | ClassDescriptor) => any;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Allow for custom element classes with private constructors
|
|
3
|
+
*/
|
|
4
|
+
const legacyCustomElement = (tagName, clazz) => {
|
|
5
|
+
// Cast as any because TS doesn't recognize the return type as being a
|
|
6
|
+
// subtype of the decorated class when clazz is typed as
|
|
7
|
+
// `Constructor<HTMLElement>` for some reason.
|
|
8
|
+
// `Constructor<HTMLElement>` is helpful to make sure the decorator is
|
|
9
|
+
// applied to elements however.
|
|
10
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
11
|
+
defineComponent(tagName, clazz);
|
|
12
|
+
clazz.__componentName__ = tagName;
|
|
13
|
+
return clazz;
|
|
14
|
+
};
|
|
15
|
+
const standardCustomElement = (tagName, descriptor) => {
|
|
16
|
+
const { kind, elements } = descriptor;
|
|
17
|
+
return {
|
|
18
|
+
kind,
|
|
19
|
+
elements,
|
|
20
|
+
// This callback is called once the class is otherwise fully defined
|
|
21
|
+
finisher(clazz) {
|
|
22
|
+
clazz.__componentName__ = tagName;
|
|
23
|
+
defineComponent(tagName, clazz);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Class decorator factory that defines the decorated class as a custom element.
|
|
29
|
+
*
|
|
30
|
+
* ```js
|
|
31
|
+
* @phoenixCustomElement('my-element')
|
|
32
|
+
* class MyElement extends LitElement {
|
|
33
|
+
* render() {
|
|
34
|
+
* return html``;
|
|
35
|
+
* }
|
|
36
|
+
* }
|
|
37
|
+
* ```
|
|
38
|
+
* @category Decorator
|
|
39
|
+
* @param tagName The tag name of the custom element to define.
|
|
40
|
+
*/
|
|
41
|
+
const phoenixCustomElement = (tagName) => (classOrDescriptor) => typeof classOrDescriptor === 'function'
|
|
42
|
+
? legacyCustomElement(tagName, classOrDescriptor)
|
|
43
|
+
: standardCustomElement(tagName, classOrDescriptor);
|
|
44
|
+
const defineComponent = (tagName, componentClass) => {
|
|
45
|
+
const isCustomElementAlreadyDefined = customElements.get(tagName);
|
|
46
|
+
if (!isCustomElementAlreadyDefined)
|
|
47
|
+
window.customElements.define(tagName, componentClass);
|
|
48
|
+
if (isCustomElementAlreadyDefined && window.__debug_mode__) {
|
|
49
|
+
console.warn(`Custom element ${tagName} is already defined.`);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export { phoenixCustomElement };
|
|
54
|
+
//# sourceMappingURL=phoenix_custom_element.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;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,8 @@
|
|
|
1
|
+
import { LitElement, TemplateResult, nothing, PropertyValues } from 'lit';
|
|
2
|
+
export declare class PhoenixLightLitElement extends LitElement {
|
|
3
|
+
_slots: Record<string, TemplateResult[]>;
|
|
4
|
+
firstUpdated(props: PropertyValues): void;
|
|
5
|
+
private _assignSlots;
|
|
6
|
+
getSlot(name: string): TemplateResult[] | typeof nothing;
|
|
7
|
+
createRenderRoot(): PhoenixLightLitElement;
|
|
8
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { __decorate, __metadata } from '../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { LitElement, html, nothing } from 'lit';
|
|
3
|
+
import { DEFAULT_SLOT_NAME } from './phoenix_light_lit_elements_constants.js';
|
|
4
|
+
import { state } from 'lit/decorators';
|
|
5
|
+
|
|
6
|
+
class PhoenixLightLitElement extends LitElement {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this._slots = {};
|
|
10
|
+
}
|
|
11
|
+
firstUpdated(props) {
|
|
12
|
+
super.firstUpdated(props);
|
|
13
|
+
this._slots = this._assignSlots();
|
|
14
|
+
this.requestUpdate();
|
|
15
|
+
}
|
|
16
|
+
_assignSlots() {
|
|
17
|
+
return [...this.querySelectorAll(':scope > [slot]')].reduce((acc, $el) => {
|
|
18
|
+
var _a;
|
|
19
|
+
const slotName = $el.slot || DEFAULT_SLOT_NAME;
|
|
20
|
+
acc[slotName] = acc[slotName] || [];
|
|
21
|
+
acc[slotName].push(html `${$el}`);
|
|
22
|
+
(_a = $el.parentElement) === null || _a === void 0 ? void 0 : _a.removeChild($el);
|
|
23
|
+
$el.removeAttribute('slot');
|
|
24
|
+
return acc;
|
|
25
|
+
}, this._slots);
|
|
26
|
+
}
|
|
27
|
+
getSlot(name) {
|
|
28
|
+
try {
|
|
29
|
+
return this._slots[name];
|
|
30
|
+
}
|
|
31
|
+
catch (_a) { }
|
|
32
|
+
return nothing;
|
|
33
|
+
}
|
|
34
|
+
createRenderRoot() {
|
|
35
|
+
return this;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
__decorate([
|
|
39
|
+
state(),
|
|
40
|
+
__metadata("design:type", Object)
|
|
41
|
+
], PhoenixLightLitElement.prototype, "_slots", void 0);
|
|
42
|
+
|
|
43
|
+
export { PhoenixLightLitElement };
|
|
44
|
+
//# sourceMappingURL=phoenix_light_lit_element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,yCAA6C;AACpF;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 @@
|
|
|
1
|
+
export declare const DEFAULT_SLOT_NAME = "default";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare type Constructor<T> = {
|
|
2
|
+
new (...args: any[]): T;
|
|
3
|
+
};
|
|
4
|
+
export interface ClassDescriptor {
|
|
5
|
+
kind: 'class';
|
|
6
|
+
elements: ClassElement[];
|
|
7
|
+
finisher?: <T>(clazz: Constructor<T>) => void | Constructor<T>;
|
|
8
|
+
}
|
|
9
|
+
export interface ClassElement {
|
|
10
|
+
kind: 'field' | 'method';
|
|
11
|
+
key: PropertyKey;
|
|
12
|
+
placement: 'static' | 'prototype' | 'own';
|
|
13
|
+
initializer?: Function;
|
|
14
|
+
extras?: ClassElement[];
|
|
15
|
+
finisher?: <T>(clazz: Constructor<T>) => void | Constructor<T>;
|
|
16
|
+
descriptor?: PropertyDescriptor;
|
|
17
|
+
}
|
|
18
|
+
export interface IPhoenixWebComponentClass {
|
|
19
|
+
__componentName__?: string;
|
|
20
|
+
}
|
|
21
|
+
declare global {
|
|
22
|
+
interface Window {
|
|
23
|
+
__debug_mode__?: boolean;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global_types.js","sourceRoot":"","sources":["../../../../../src/global_types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
export declare class HelloButton extends LitElement {
|
|
3
|
+
static moduleName: string;
|
|
4
|
+
static styles: import("lit").CSSResult;
|
|
5
|
+
greeting: string;
|
|
6
|
+
planet: string;
|
|
7
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
8
|
+
togglePlanet(): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { __decorate, __metadata } from '../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { LitElement, html, css } from 'lit';
|
|
3
|
+
import { state } from 'lit/decorators';
|
|
4
|
+
import { phoenixCustomElement } from './core/decorators/phoenix_custom_element.js';
|
|
5
|
+
|
|
6
|
+
let HelloButton = class HelloButton extends LitElement {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.greeting = 'Hello';
|
|
10
|
+
this.planet = 'World';
|
|
11
|
+
}
|
|
12
|
+
render() {
|
|
13
|
+
super.render();
|
|
14
|
+
return html `
|
|
15
|
+
<span @click="${this.togglePlanet}"
|
|
16
|
+
>${this.greeting}
|
|
17
|
+
<span class="planet">${this.planet}</span>
|
|
18
|
+
<slot></slot>
|
|
19
|
+
</span>
|
|
20
|
+
`;
|
|
21
|
+
}
|
|
22
|
+
togglePlanet() {
|
|
23
|
+
this.planet = this.planet === 'World' ? 'Mars' : 'World';
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
HelloButton.moduleName = 'my-element';
|
|
27
|
+
HelloButton.styles = css `
|
|
28
|
+
:host {
|
|
29
|
+
display: inline-block;
|
|
30
|
+
padding: 10px;
|
|
31
|
+
background: lightgray;
|
|
32
|
+
}
|
|
33
|
+
.planet {
|
|
34
|
+
color: var(--planet-color, blue);
|
|
35
|
+
}
|
|
36
|
+
`;
|
|
37
|
+
__decorate([
|
|
38
|
+
state(),
|
|
39
|
+
__metadata("design:type", Object)
|
|
40
|
+
], HelloButton.prototype, "greeting", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
state(),
|
|
43
|
+
__metadata("design:type", Object)
|
|
44
|
+
], HelloButton.prototype, "planet", void 0);
|
|
45
|
+
HelloButton = __decorate([
|
|
46
|
+
phoenixCustomElement('hello-button')
|
|
47
|
+
], HelloButton);
|
|
48
|
+
|
|
49
|
+
export { HelloButton };
|
|
50
|
+
//# sourceMappingURL=hello_button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,sCAA0C;AACjF;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;"}
|