yuyeon 0.3.1-rc.5 → 0.3.1
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/dist/yuyeon.js +1512 -1572
- package/dist/yuyeon.umd.cjs +3 -3
- package/lib/abstract/items.js +20 -0
- package/lib/abstract/items.js.map +1 -0
- package/lib/components/alert/YAlert.js +83 -0
- package/lib/components/alert/YAlert.js.map +1 -0
- package/lib/components/alert/index.js +2 -0
- package/lib/components/alert/index.js.map +1 -0
- package/lib/components/app/YApp.js +21 -0
- package/lib/components/app/YApp.js.map +1 -0
- package/lib/components/app/index.js +2 -0
- package/lib/components/app/index.js.map +1 -0
- package/lib/components/badge/YBadge.js +83 -0
- package/lib/components/badge/YBadge.js.map +1 -0
- package/lib/components/badge/index.js +2 -0
- package/lib/components/badge/index.js.map +1 -0
- package/lib/components/bench/YBench.js +43 -0
- package/lib/components/bench/YBench.js.map +1 -0
- package/lib/components/bench/index.js +2 -0
- package/lib/components/bench/index.js.map +1 -0
- package/lib/components/button/YButton.js +169 -0
- package/lib/components/button/YButton.js.map +1 -0
- package/lib/components/button/index.js +2 -0
- package/lib/components/button/index.js.map +1 -0
- package/lib/components/card/YCard.js +28 -0
- package/lib/components/card/YCard.js.map +1 -0
- package/lib/components/card/YCardBody.js +11 -0
- package/lib/components/card/YCardBody.js.map +1 -0
- package/lib/components/card/YCardFooter.js +11 -0
- package/lib/components/card/YCardFooter.js.map +1 -0
- package/lib/components/card/YCardHeader.js +11 -0
- package/lib/components/card/YCardHeader.js.map +1 -0
- package/lib/components/card/index.js +5 -0
- package/lib/components/card/index.js.map +1 -0
- package/lib/components/checkbox/YCheckbox.js +160 -0
- package/lib/components/checkbox/YCheckbox.js.map +1 -0
- package/lib/components/checkbox/YInputCheckbox.js +114 -0
- package/lib/components/checkbox/YInputCheckbox.js.map +1 -0
- package/lib/components/checkbox/index.js +4 -0
- package/lib/components/checkbox/index.js.map +1 -0
- package/lib/components/chip/YChip.js +39 -0
- package/lib/components/chip/YChip.js.map +1 -0
- package/lib/components/chip/index.js +2 -0
- package/lib/components/chip/index.js.map +1 -0
- package/lib/components/date-picker/YDateCalendar.js +243 -0
- package/lib/components/date-picker/YDateCalendar.js.map +1 -0
- package/lib/components/date-picker/YDatePicker.js +132 -0
- package/lib/components/date-picker/YDatePicker.js.map +1 -0
- package/lib/components/date-picker/YDatePickerControl.js +107 -0
- package/lib/components/date-picker/YDatePickerControl.js.map +1 -0
- package/lib/components/date-picker/YMonthPicker.js +64 -0
- package/lib/components/date-picker/YMonthPicker.js.map +1 -0
- package/lib/components/date-picker/YYearPicker.js +87 -0
- package/lib/components/date-picker/YYearPicker.js.map +1 -0
- package/lib/components/date-picker/index.js +4 -0
- package/lib/components/date-picker/index.js.map +1 -0
- package/lib/components/default-provider/YDefaultProvider.js +2 -0
- package/lib/components/default-provider/YDefaultProvider.js.map +1 -0
- package/lib/components/default-provider/index.js +2 -0
- package/lib/components/default-provider/index.js.map +1 -0
- package/lib/components/dialog/YDialog.js +213 -0
- package/lib/components/dialog/YDialog.js.map +1 -0
- package/lib/components/dialog/index.js +2 -0
- package/lib/components/dialog/index.js.map +1 -0
- package/lib/components/divider/YDivider.js +20 -0
- package/lib/components/divider/YDivider.js.map +1 -0
- package/lib/components/divider/index.js +2 -0
- package/lib/components/divider/index.js.map +1 -0
- package/lib/components/draggable/YDraggable.js +95 -0
- package/lib/components/draggable/YDraggable.js.map +1 -0
- package/lib/components/dropdown/YDropdown.js +109 -0
- package/lib/components/dropdown/YDropdown.js.map +1 -0
- package/lib/components/dropdown/index.js +2 -0
- package/lib/components/dropdown/index.js.map +1 -0
- package/lib/components/field-input/YFieldInput.js +229 -0
- package/lib/components/field-input/YFieldInput.js.map +1 -0
- package/lib/components/field-input/index.js +2 -0
- package/lib/components/field-input/index.js.map +1 -0
- package/lib/components/form/YForm.js +65 -0
- package/lib/components/form/YForm.js.map +1 -0
- package/lib/components/form/index.js +2 -0
- package/lib/components/form/index.js.map +1 -0
- package/lib/components/hover/YHover.js +54 -0
- package/lib/components/hover/YHover.js.map +1 -0
- package/lib/components/hover/index.js +2 -0
- package/lib/components/hover/index.js.map +1 -0
- package/lib/components/icon/YIcon.js +63 -0
- package/lib/components/icon/YIcon.js.map +1 -0
- package/lib/components/icon/index.js +2 -0
- package/lib/components/icon/index.js.map +1 -0
- package/lib/components/icons/YIconCheckbox.js +32 -0
- package/lib/components/icons/YIconCheckbox.js.map +1 -0
- package/lib/components/icons/YIconClear.js +16 -0
- package/lib/components/icons/YIconClear.js.map +1 -0
- package/lib/components/icons/YIconDropdown.js +16 -0
- package/lib/components/icons/YIconDropdown.js.map +1 -0
- package/lib/components/icons/YIconExpand.js +20 -0
- package/lib/components/icons/YIconExpand.js.map +1 -0
- package/lib/components/icons/YIconPageControl.js +32 -0
- package/lib/components/icons/YIconPageControl.js.map +1 -0
- package/lib/components/icons/YIconSort.js +45 -0
- package/lib/components/icons/YIconSort.js.map +1 -0
- package/lib/components/icons/index.js +32 -0
- package/lib/components/icons/index.js.map +1 -0
- package/lib/components/img/YImg.js +173 -0
- package/lib/components/img/YImg.js.map +1 -0
- package/lib/components/img/index.js +2 -0
- package/lib/components/img/index.js.map +1 -0
- package/lib/components/index.js +39 -0
- package/lib/components/index.js.map +1 -0
- package/lib/components/input/YInput.js +258 -0
- package/lib/components/input/YInput.js.map +1 -0
- package/lib/components/input/index.js +2 -0
- package/lib/components/input/index.js.map +1 -0
- package/lib/components/ip-field/YIpv4Field.js +297 -0
- package/lib/components/ip-field/YIpv4Field.js.map +1 -0
- package/lib/components/ip-field/index.js +2 -0
- package/lib/components/ip-field/index.js.map +1 -0
- package/lib/components/layer/YLayer.js +326 -0
- package/lib/components/layer/YLayer.js.map +1 -0
- package/lib/components/layer/active-delay.js +28 -0
- package/lib/components/layer/active-delay.js.map +1 -0
- package/lib/components/layer/active-stack.js +52 -0
- package/lib/components/layer/active-stack.js.map +1 -0
- package/lib/components/layer/base.js +87 -0
- package/lib/components/layer/base.js.map +1 -0
- package/lib/components/layer/content.js +22 -0
- package/lib/components/layer/content.js.map +1 -0
- package/lib/components/layer/index.js +2 -0
- package/lib/components/layer/index.js.map +1 -0
- package/lib/components/layer/scroll-strategies.js +132 -0
- package/lib/components/layer/scroll-strategies.js.map +1 -0
- package/lib/components/list/YList.js +55 -0
- package/lib/components/list/YList.js.map +1 -0
- package/lib/components/list/YListItem.js +59 -0
- package/lib/components/list/YListItem.js.map +1 -0
- package/lib/components/list/index.js +3 -0
- package/lib/components/list/index.js.map +1 -0
- package/lib/components/loading/YSpinnerRing.js +25 -0
- package/lib/components/loading/YSpinnerRing.js.map +1 -0
- package/lib/components/loading/index.js +2 -0
- package/lib/components/loading/index.js.map +1 -0
- package/lib/components/menu/YMenu.js +211 -0
- package/lib/components/menu/YMenu.js.map +1 -0
- package/lib/components/menu/index.js +2 -0
- package/lib/components/menu/index.js.map +1 -0
- package/lib/components/navigation/YNavigation.js +18 -0
- package/lib/components/navigation/YNavigation.js.map +1 -0
- package/lib/components/navigation/index.js +2 -0
- package/lib/components/navigation/index.js.map +1 -0
- package/lib/components/pagination/YPagination.js +288 -0
- package/lib/components/pagination/YPagination.js.map +1 -0
- package/lib/components/pagination/index.js +2 -0
- package/lib/components/pagination/index.js.map +1 -0
- package/lib/components/panel/YDividePanel.js +90 -0
- package/lib/components/panel/YDividePanel.js.map +1 -0
- package/lib/components/panel/index.js +2 -0
- package/lib/components/panel/index.js.map +1 -0
- package/lib/components/plate/YPlate.js +28 -0
- package/lib/components/plate/YPlate.js.map +1 -0
- package/lib/components/plate/index.js +2 -0
- package/lib/components/plate/index.js.map +1 -0
- package/lib/components/progress-bar/YProgressBar.js +117 -0
- package/lib/components/progress-bar/YProgressBar.js.map +1 -0
- package/lib/components/progress-bar/index.js +2 -0
- package/lib/components/progress-bar/index.js.map +1 -0
- package/lib/components/progress-ring/YProgressRing.js +128 -0
- package/lib/components/progress-ring/YProgressRing.js.map +1 -0
- package/lib/components/progress-ring/index.js +2 -0
- package/lib/components/progress-ring/index.js.map +1 -0
- package/lib/components/select/YSelect.js +344 -0
- package/lib/components/select/YSelect.js.map +1 -0
- package/lib/components/select/index.js +2 -0
- package/lib/components/select/index.js.map +1 -0
- package/lib/components/slider/YSlider.js +26 -0
- package/lib/components/slider/YSlider.js.map +1 -0
- package/lib/components/slider/index.js +2 -0
- package/lib/components/slider/index.js.map +1 -0
- package/lib/components/snackbar/YSnackbar.js +209 -0
- package/lib/components/snackbar/YSnackbar.js.map +1 -0
- package/lib/components/snackbar/index.js +2 -0
- package/lib/components/snackbar/index.js.map +1 -0
- package/lib/components/switch/YSwitch.js +184 -0
- package/lib/components/switch/YSwitch.js.map +1 -0
- package/lib/components/switch/index.js +2 -0
- package/lib/components/switch/index.js.map +1 -0
- package/lib/components/tab/YTab.js +64 -0
- package/lib/components/tab/YTab.js.map +1 -0
- package/lib/components/tab/YTabs.js +86 -0
- package/lib/components/tab/YTabs.js.map +1 -0
- package/lib/components/tab/index.js +4 -0
- package/lib/components/tab/index.js.map +1 -0
- package/lib/components/tab/shared.js +2 -0
- package/lib/components/tab/shared.js.map +1 -0
- package/lib/components/tab/types.js +2 -0
- package/lib/components/tab/types.js.map +1 -0
- package/lib/components/table/YDataTable.js +182 -0
- package/lib/components/table/YDataTable.js.map +1 -0
- package/lib/components/table/YDataTableBody.js +131 -0
- package/lib/components/table/YDataTableBody.js.map +1 -0
- package/lib/components/table/YDataTableCell.js +78 -0
- package/lib/components/table/YDataTableCell.js.map +1 -0
- package/lib/components/table/YDataTableControl.js +46 -0
- package/lib/components/table/YDataTableControl.js.map +1 -0
- package/lib/components/table/YDataTableHead.js +172 -0
- package/lib/components/table/YDataTableHead.js.map +1 -0
- package/lib/components/table/YDataTableLayer.js +29 -0
- package/lib/components/table/YDataTableLayer.js.map +1 -0
- package/lib/components/table/YDataTableRow.js +150 -0
- package/lib/components/table/YDataTableRow.js.map +1 -0
- package/lib/components/table/YDataTableServer.js +173 -0
- package/lib/components/table/YDataTableServer.js.map +1 -0
- package/lib/components/table/YTable.js +77 -0
- package/lib/components/table/YTable.js.map +1 -0
- package/lib/components/table/composibles/header.js +127 -0
- package/lib/components/table/composibles/header.js.map +1 -0
- package/lib/components/table/composibles/items.js +52 -0
- package/lib/components/table/composibles/items.js.map +1 -0
- package/lib/components/table/composibles/measure.js +39 -0
- package/lib/components/table/composibles/measure.js.map +1 -0
- package/lib/components/table/composibles/options.js +33 -0
- package/lib/components/table/composibles/options.js.map +1 -0
- package/lib/components/table/composibles/pagination.js +99 -0
- package/lib/components/table/composibles/pagination.js.map +1 -0
- package/lib/components/table/composibles/selection.js +196 -0
- package/lib/components/table/composibles/selection.js.map +1 -0
- package/lib/components/table/composibles/sorted-items.js +50 -0
- package/lib/components/table/composibles/sorted-items.js.map +1 -0
- package/lib/components/table/composibles/sorting.js +73 -0
- package/lib/components/table/composibles/sorting.js.map +1 -0
- package/lib/components/table/index.js +9 -0
- package/lib/components/table/index.js.map +1 -0
- package/lib/components/table/types/common.js +2 -0
- package/lib/components/table/types/common.js.map +1 -0
- package/lib/components/table/types/header.js +2 -0
- package/lib/components/table/types/header.js.map +1 -0
- package/lib/components/table/types/index.js +2 -0
- package/lib/components/table/types/index.js.map +1 -0
- package/lib/components/table/types/item.js +2 -0
- package/lib/components/table/types/item.js.map +1 -0
- package/lib/components/table/types/row.js +2 -0
- package/lib/components/table/types/row.js.map +1 -0
- package/lib/components/text-ellipsis/YTextEllipsis.js +66 -0
- package/lib/components/text-ellipsis/YTextEllipsis.js.map +1 -0
- package/lib/components/text-ellipsis/index.js +2 -0
- package/lib/components/text-ellipsis/index.js.map +1 -0
- package/lib/components/text-highlighter/YTextHighlighter.js +95 -0
- package/lib/components/text-highlighter/YTextHighlighter.js.map +1 -0
- package/lib/components/text-highlighter/index.js +2 -0
- package/lib/components/text-highlighter/index.js.map +1 -0
- package/lib/components/text-interpolation/YTi.js +47 -0
- package/lib/components/text-interpolation/YTi.js.map +1 -0
- package/lib/components/text-interpolation/index.js +2 -0
- package/lib/components/text-interpolation/index.js.map +1 -0
- package/lib/components/textarea/YTextarea.js +157 -0
- package/lib/components/textarea/YTextarea.js.map +1 -0
- package/lib/components/textarea/index.js +2 -0
- package/lib/components/textarea/index.js.map +1 -0
- package/lib/components/toggle-button/YToggleButton.js +2 -0
- package/lib/components/toggle-button/YToggleButton.js.map +1 -0
- package/lib/components/toggle-button/index.js +2 -0
- package/lib/components/toggle-button/index.js.map +1 -0
- package/lib/components/tooltip/YTooltip.js +157 -0
- package/lib/components/tooltip/YTooltip.js.map +1 -0
- package/lib/components/tooltip/index.js +2 -0
- package/lib/components/tooltip/index.js.map +1 -0
- package/lib/components/transitions/expand-transition.js +109 -0
- package/lib/components/transitions/expand-transition.js.map +1 -0
- package/lib/components/transitions/index.js +4 -0
- package/lib/components/transitions/index.js.map +1 -0
- package/lib/components/tree-view/YTreeView.js +289 -0
- package/lib/components/tree-view/YTreeView.js.map +1 -0
- package/lib/components/tree-view/YTreeViewNode.js +250 -0
- package/lib/components/tree-view/YTreeViewNode.js.map +1 -0
- package/lib/components/tree-view/index.js +3 -0
- package/lib/components/tree-view/index.js.map +1 -0
- package/lib/components/tree-view/tree-view.js +179 -0
- package/lib/components/tree-view/tree-view.js.map +1 -0
- package/lib/components/tree-view/types.js +2 -0
- package/lib/components/tree-view/types.js.map +1 -0
- package/lib/components/tree-view/util.js +40 -0
- package/lib/components/tree-view/util.js.map +1 -0
- package/lib/composables/choice-link.js +13 -0
- package/lib/composables/choice-link.js.map +1 -0
- package/lib/composables/choice.js +187 -0
- package/lib/composables/choice.js.map +1 -0
- package/lib/composables/communication.js +55 -0
- package/lib/composables/communication.js.map +1 -0
- package/lib/composables/component.js +8 -0
- package/lib/composables/component.js.map +1 -0
- package/lib/composables/coordinate/arrangement.js +14 -0
- package/lib/composables/coordinate/arrangement.js.map +1 -0
- package/lib/composables/coordinate/index.js +67 -0
- package/lib/composables/coordinate/index.js.map +1 -0
- package/lib/composables/coordinate/levitation.js +315 -0
- package/lib/composables/coordinate/levitation.js.map +1 -0
- package/lib/composables/coordinate/types.js +2 -0
- package/lib/composables/coordinate/types.js.map +1 -0
- package/lib/composables/coordinate/utils/point.js +55 -0
- package/lib/composables/coordinate/utils/point.js.map +1 -0
- package/lib/composables/date/factory.js +12 -0
- package/lib/composables/date/factory.js.map +1 -0
- package/lib/composables/date/index.js +20 -0
- package/lib/composables/date/index.js.map +1 -0
- package/lib/composables/date/setting.js +11 -0
- package/lib/composables/date/setting.js.map +1 -0
- package/lib/composables/date/types.js +2 -0
- package/lib/composables/date/types.js.map +1 -0
- package/lib/composables/defaults/index.js +99 -0
- package/lib/composables/defaults/index.js.map +1 -0
- package/lib/composables/defaults/share.js +2 -0
- package/lib/composables/defaults/share.js.map +1 -0
- package/lib/composables/defaults/types.js +2 -0
- package/lib/composables/defaults/types.js.map +1 -0
- package/lib/composables/dimension.js +26 -0
- package/lib/composables/dimension.js.map +1 -0
- package/lib/composables/focus.js +29 -0
- package/lib/composables/focus.js.map +1 -0
- package/lib/composables/form.js +100 -0
- package/lib/composables/form.js.map +1 -0
- package/lib/composables/i18n/index.js +30 -0
- package/lib/composables/i18n/index.js.map +1 -0
- package/lib/composables/i18n/locale.js +5 -0
- package/lib/composables/i18n/locale.js.map +1 -0
- package/lib/composables/i18n/rtl.js +34 -0
- package/lib/composables/i18n/rtl.js.map +1 -0
- package/lib/composables/i18n/share.js +2 -0
- package/lib/composables/i18n/share.js.map +1 -0
- package/lib/composables/icon.js +164 -0
- package/lib/composables/icon.js.map +1 -0
- package/lib/composables/index.js +11 -0
- package/lib/composables/index.js.map +1 -0
- package/lib/composables/layer-group.js +66 -0
- package/lib/composables/layer-group.js.map +1 -0
- package/lib/composables/layout.js +13 -0
- package/lib/composables/layout.js.map +1 -0
- package/lib/composables/list-items.js +66 -0
- package/lib/composables/list-items.js.map +1 -0
- package/lib/composables/progress.js +26 -0
- package/lib/composables/progress.js.map +1 -0
- package/lib/composables/ref.js +13 -0
- package/lib/composables/ref.js.map +1 -0
- package/lib/composables/resize-observer.js +33 -0
- package/lib/composables/resize-observer.js.map +1 -0
- package/lib/composables/scope.js +26 -0
- package/lib/composables/scope.js.map +1 -0
- package/lib/composables/style-color.js +37 -0
- package/lib/composables/style-color.js.map +1 -0
- package/lib/composables/theme/factory.js +47 -0
- package/lib/composables/theme/factory.js.map +1 -0
- package/lib/composables/theme/helper.js +14 -0
- package/lib/composables/theme/helper.js.map +1 -0
- package/lib/composables/theme/index.js +187 -0
- package/lib/composables/theme/index.js.map +1 -0
- package/lib/composables/theme/setting.js +112 -0
- package/lib/composables/theme/setting.js.map +1 -0
- package/lib/composables/theme/types.js +2 -0
- package/lib/composables/theme/types.js.map +1 -0
- package/lib/composables/timing.js +102 -0
- package/lib/composables/timing.js.map +1 -0
- package/lib/composables/transition.js +51 -0
- package/lib/composables/transition.js.map +1 -0
- package/lib/composables/validation.js +126 -0
- package/lib/composables/validation.js.map +1 -0
- package/lib/composables/vue-router.js +32 -0
- package/lib/composables/vue-router.js.map +1 -0
- package/lib/directives/complement-click/index.js +78 -0
- package/lib/directives/complement-click/index.js.map +1 -0
- package/lib/directives/plate-wave/index.js +100 -0
- package/lib/directives/plate-wave/index.js.map +1 -0
- package/lib/directives/theme-class.js +24 -0
- package/lib/directives/theme-class.js.map +1 -0
- package/lib/etc/index.js +6 -0
- package/lib/etc/index.js.map +1 -0
- package/lib/i18n/built-in.js +77 -0
- package/lib/i18n/built-in.js.map +1 -0
- package/lib/i18n/config.js +82 -0
- package/lib/i18n/config.js.map +1 -0
- package/lib/i18n/types.js +2 -0
- package/lib/i18n/types.js.map +1 -0
- package/lib/index.js +103 -0
- package/lib/index.js.map +1 -0
- package/lib/locales/en.js +6 -0
- package/lib/locales/en.js.map +1 -0
- package/lib/locales/index.js +3 -0
- package/lib/locales/index.js.map +1 -0
- package/lib/locales/ko.js +6 -0
- package/lib/locales/ko.js.map +1 -0
- package/lib/mixins/di.js +19 -0
- package/lib/mixins/di.js.map +1 -0
- package/lib/mixins/rebind-attrs.js +37 -0
- package/lib/mixins/rebind-attrs.js.map +1 -0
- package/lib/types/index.js +2 -0
- package/lib/types/index.js.map +1 -0
- package/lib/util/anchor.js +53 -0
- package/lib/util/anchor.js.map +1 -0
- package/lib/util/array.js +13 -0
- package/lib/util/array.js.map +1 -0
- package/lib/util/collection.js +10 -0
- package/lib/util/collection.js.map +1 -0
- package/lib/util/color/apca.js +201 -0
- package/lib/util/color/apca.js.map +1 -0
- package/lib/util/color/const.js +6 -0
- package/lib/util/color/const.js.map +1 -0
- package/lib/util/color/contrast/contrast.js +149 -0
- package/lib/util/color/contrast/contrast.js.map +1 -0
- package/lib/util/color/conversion.js +310 -0
- package/lib/util/color/conversion.js.map +1 -0
- package/lib/util/color/hct/cam16.js +349 -0
- package/lib/util/color/hct/cam16.js.map +1 -0
- package/lib/util/color/hct/hct-solver.js +389 -0
- package/lib/util/color/hct/hct-solver.js.map +1 -0
- package/lib/util/color/hct/hct.js +153 -0
- package/lib/util/color/hct/hct.js.map +1 -0
- package/lib/util/color/hct/viewing-conditions.js +110 -0
- package/lib/util/color/hct/viewing-conditions.js.map +1 -0
- package/lib/util/color/index.js +40 -0
- package/lib/util/color/index.js.map +1 -0
- package/lib/util/color/palettes/core-palette.js +99 -0
- package/lib/util/color/palettes/core-palette.js.map +1 -0
- package/lib/util/color/palettes/tonal-palette.js +112 -0
- package/lib/util/color/palettes/tonal-palette.js.map +1 -0
- package/lib/util/color/types.js +2 -0
- package/lib/util/color/types.js.map +1 -0
- package/lib/util/color/utils/math-utils.js +139 -0
- package/lib/util/color/utils/math-utils.js.map +1 -0
- package/lib/util/common.js +107 -0
- package/lib/util/common.js.map +1 -0
- package/lib/util/component/component.js +26 -0
- package/lib/util/component/component.js.map +1 -0
- package/lib/util/component/index.js +65 -0
- package/lib/util/component/index.js.map +1 -0
- package/lib/util/component/inject-self.js +10 -0
- package/lib/util/component/inject-self.js.map +1 -0
- package/lib/util/component/props.js +41 -0
- package/lib/util/component/props.js.map +1 -0
- package/lib/util/component/types.js +2 -0
- package/lib/util/component/types.js.map +1 -0
- package/lib/util/date/adapters/yuyeon-date-adapter.js +111 -0
- package/lib/util/date/adapters/yuyeon-date-adapter.js.map +1 -0
- package/lib/util/date/built-in.js +416 -0
- package/lib/util/date/built-in.js.map +1 -0
- package/lib/util/date/index.js +4 -0
- package/lib/util/date/index.js.map +1 -0
- package/lib/util/date/types.js +2 -0
- package/lib/util/date/types.js.map +1 -0
- package/lib/util/debounce.js +114 -0
- package/lib/util/debounce.js.map +1 -0
- package/lib/util/dom.js +23 -0
- package/lib/util/dom.js.map +1 -0
- package/lib/util/environments.js +8 -0
- package/lib/util/environments.js.map +1 -0
- package/lib/util/frame-scheduler.js +29 -0
- package/lib/util/frame-scheduler.js.map +1 -0
- package/lib/util/index.js +17 -0
- package/lib/util/index.js.map +1 -0
- package/lib/util/reactivity.js +19 -0
- package/lib/util/reactivity.js.map +1 -0
- package/lib/util/rect.js +39 -0
- package/lib/util/rect.js.map +1 -0
- package/lib/util/scroll.js +28 -0
- package/lib/util/scroll.js.map +1 -0
- package/lib/util/string.js +69 -0
- package/lib/util/string.js.map +1 -0
- package/lib/util/ui.js +60 -0
- package/lib/util/ui.js.map +1 -0
- package/lib/util/validation.js +5 -0
- package/lib/util/validation.js.map +1 -0
- package/package.json +12 -12
- package/types/components/dropdown/YDropdown.d.ts +4 -4
- package/types/components/select/YSelect.d.ts +107 -5630
- package/types/components/tooltip/YTooltip.d.ts +292 -3501
- package/lib/abstract/items.mjs +0 -20
- package/lib/abstract/items.mjs.map +0 -1
- package/lib/components/alert/YAlert.mjs +0 -83
- package/lib/components/alert/YAlert.mjs.map +0 -1
- package/lib/components/alert/index.mjs +0 -2
- package/lib/components/alert/index.mjs.map +0 -1
- package/lib/components/app/YApp.mjs +0 -21
- package/lib/components/app/YApp.mjs.map +0 -1
- package/lib/components/app/index.mjs +0 -2
- package/lib/components/app/index.mjs.map +0 -1
- package/lib/components/badge/YBadge.mjs +0 -83
- package/lib/components/badge/YBadge.mjs.map +0 -1
- package/lib/components/badge/index.mjs +0 -2
- package/lib/components/badge/index.mjs.map +0 -1
- package/lib/components/bench/YBench.mjs +0 -43
- package/lib/components/bench/YBench.mjs.map +0 -1
- package/lib/components/bench/index.mjs +0 -2
- package/lib/components/bench/index.mjs.map +0 -1
- package/lib/components/button/YButton.mjs +0 -169
- package/lib/components/button/YButton.mjs.map +0 -1
- package/lib/components/button/index.mjs +0 -2
- package/lib/components/button/index.mjs.map +0 -1
- package/lib/components/card/YCard.mjs +0 -28
- package/lib/components/card/YCard.mjs.map +0 -1
- package/lib/components/card/YCardBody.mjs +0 -11
- package/lib/components/card/YCardBody.mjs.map +0 -1
- package/lib/components/card/YCardFooter.mjs +0 -11
- package/lib/components/card/YCardFooter.mjs.map +0 -1
- package/lib/components/card/YCardHeader.mjs +0 -11
- package/lib/components/card/YCardHeader.mjs.map +0 -1
- package/lib/components/card/index.mjs +0 -5
- package/lib/components/card/index.mjs.map +0 -1
- package/lib/components/checkbox/YCheckbox.mjs +0 -160
- package/lib/components/checkbox/YCheckbox.mjs.map +0 -1
- package/lib/components/checkbox/YInputCheckbox.mjs +0 -114
- package/lib/components/checkbox/YInputCheckbox.mjs.map +0 -1
- package/lib/components/checkbox/index.mjs +0 -4
- package/lib/components/checkbox/index.mjs.map +0 -1
- package/lib/components/chip/YChip.mjs +0 -39
- package/lib/components/chip/YChip.mjs.map +0 -1
- package/lib/components/chip/index.mjs +0 -2
- package/lib/components/chip/index.mjs.map +0 -1
- package/lib/components/date-picker/YDateCalendar.mjs +0 -243
- package/lib/components/date-picker/YDateCalendar.mjs.map +0 -1
- package/lib/components/date-picker/YDatePicker.mjs +0 -132
- package/lib/components/date-picker/YDatePicker.mjs.map +0 -1
- package/lib/components/date-picker/YDatePickerControl.mjs +0 -107
- package/lib/components/date-picker/YDatePickerControl.mjs.map +0 -1
- package/lib/components/date-picker/YMonthPicker.mjs +0 -64
- package/lib/components/date-picker/YMonthPicker.mjs.map +0 -1
- package/lib/components/date-picker/YYearPicker.mjs +0 -87
- package/lib/components/date-picker/YYearPicker.mjs.map +0 -1
- package/lib/components/date-picker/index.mjs +0 -4
- package/lib/components/date-picker/index.mjs.map +0 -1
- package/lib/components/default-provider/YDefaultProvider.mjs +0 -2
- package/lib/components/default-provider/YDefaultProvider.mjs.map +0 -1
- package/lib/components/default-provider/index.mjs +0 -2
- package/lib/components/default-provider/index.mjs.map +0 -1
- package/lib/components/dialog/YDialog.mjs +0 -213
- package/lib/components/dialog/YDialog.mjs.map +0 -1
- package/lib/components/dialog/index.mjs +0 -2
- package/lib/components/dialog/index.mjs.map +0 -1
- package/lib/components/divider/YDivider.mjs +0 -20
- package/lib/components/divider/YDivider.mjs.map +0 -1
- package/lib/components/divider/index.mjs +0 -2
- package/lib/components/divider/index.mjs.map +0 -1
- package/lib/components/draggable/YDraggable.mjs +0 -95
- package/lib/components/draggable/YDraggable.mjs.map +0 -1
- package/lib/components/dropdown/YDropdown.mjs +0 -109
- package/lib/components/dropdown/YDropdown.mjs.map +0 -1
- package/lib/components/dropdown/index.mjs +0 -2
- package/lib/components/dropdown/index.mjs.map +0 -1
- package/lib/components/field-input/YFieldInput.mjs +0 -229
- package/lib/components/field-input/YFieldInput.mjs.map +0 -1
- package/lib/components/field-input/index.mjs +0 -2
- package/lib/components/field-input/index.mjs.map +0 -1
- package/lib/components/form/YForm.mjs +0 -65
- package/lib/components/form/YForm.mjs.map +0 -1
- package/lib/components/form/index.mjs +0 -2
- package/lib/components/form/index.mjs.map +0 -1
- package/lib/components/hover/YHover.mjs +0 -54
- package/lib/components/hover/YHover.mjs.map +0 -1
- package/lib/components/hover/index.mjs +0 -2
- package/lib/components/hover/index.mjs.map +0 -1
- package/lib/components/icon/YIcon.mjs +0 -63
- package/lib/components/icon/YIcon.mjs.map +0 -1
- package/lib/components/icon/index.mjs +0 -2
- package/lib/components/icon/index.mjs.map +0 -1
- package/lib/components/icon/poly.mjs +0 -57
- package/lib/components/icon/poly.mjs.map +0 -1
- package/lib/components/icons/YIconCheckbox.mjs +0 -32
- package/lib/components/icons/YIconCheckbox.mjs.map +0 -1
- package/lib/components/icons/YIconClear.mjs +0 -16
- package/lib/components/icons/YIconClear.mjs.map +0 -1
- package/lib/components/icons/YIconDropdown.mjs +0 -16
- package/lib/components/icons/YIconDropdown.mjs.map +0 -1
- package/lib/components/icons/YIconExpand.mjs +0 -20
- package/lib/components/icons/YIconExpand.mjs.map +0 -1
- package/lib/components/icons/YIconPageControl.mjs +0 -32
- package/lib/components/icons/YIconPageControl.mjs.map +0 -1
- package/lib/components/icons/YIconSort.mjs +0 -45
- package/lib/components/icons/YIconSort.mjs.map +0 -1
- package/lib/components/icons/index.mjs +0 -32
- package/lib/components/icons/index.mjs.map +0 -1
- package/lib/components/img/YImg.mjs +0 -173
- package/lib/components/img/YImg.mjs.map +0 -1
- package/lib/components/img/index.mjs +0 -2
- package/lib/components/img/index.mjs.map +0 -1
- package/lib/components/index.mjs +0 -39
- package/lib/components/index.mjs.map +0 -1
- package/lib/components/input/YInput.mjs +0 -258
- package/lib/components/input/YInput.mjs.map +0 -1
- package/lib/components/input/index.mjs +0 -2
- package/lib/components/input/index.mjs.map +0 -1
- package/lib/components/ip-field/YIpv4Field.mjs +0 -297
- package/lib/components/ip-field/YIpv4Field.mjs.map +0 -1
- package/lib/components/ip-field/index.mjs +0 -2
- package/lib/components/ip-field/index.mjs.map +0 -1
- package/lib/components/layer/YLayer.mjs +0 -326
- package/lib/components/layer/YLayer.mjs.map +0 -1
- package/lib/components/layer/active-delay.mjs +0 -28
- package/lib/components/layer/active-delay.mjs.map +0 -1
- package/lib/components/layer/active-stack.mjs +0 -52
- package/lib/components/layer/active-stack.mjs.map +0 -1
- package/lib/components/layer/base.mjs +0 -87
- package/lib/components/layer/base.mjs.map +0 -1
- package/lib/components/layer/content.mjs +0 -22
- package/lib/components/layer/content.mjs.map +0 -1
- package/lib/components/layer/index.mjs +0 -2
- package/lib/components/layer/index.mjs.map +0 -1
- package/lib/components/layer/scroll-strategies.mjs +0 -132
- package/lib/components/layer/scroll-strategies.mjs.map +0 -1
- package/lib/components/list/YList.mjs +0 -55
- package/lib/components/list/YList.mjs.map +0 -1
- package/lib/components/list/YListItem.mjs +0 -59
- package/lib/components/list/YListItem.mjs.map +0 -1
- package/lib/components/list/index.mjs +0 -3
- package/lib/components/list/index.mjs.map +0 -1
- package/lib/components/loading/YSpinnerRing.mjs +0 -25
- package/lib/components/loading/YSpinnerRing.mjs.map +0 -1
- package/lib/components/loading/index.mjs +0 -2
- package/lib/components/loading/index.mjs.map +0 -1
- package/lib/components/menu/YMenu.mjs +0 -211
- package/lib/components/menu/YMenu.mjs.map +0 -1
- package/lib/components/menu/index.mjs +0 -2
- package/lib/components/menu/index.mjs.map +0 -1
- package/lib/components/navigation/YNavigation.mjs +0 -18
- package/lib/components/navigation/YNavigation.mjs.map +0 -1
- package/lib/components/navigation/index.mjs +0 -2
- package/lib/components/navigation/index.mjs.map +0 -1
- package/lib/components/pagination/YPagination.mjs +0 -288
- package/lib/components/pagination/YPagination.mjs.map +0 -1
- package/lib/components/pagination/index.mjs +0 -2
- package/lib/components/pagination/index.mjs.map +0 -1
- package/lib/components/panel/YDividePanel.mjs +0 -90
- package/lib/components/panel/YDividePanel.mjs.map +0 -1
- package/lib/components/panel/index.mjs +0 -2
- package/lib/components/panel/index.mjs.map +0 -1
- package/lib/components/plate/YPlate.mjs +0 -28
- package/lib/components/plate/YPlate.mjs.map +0 -1
- package/lib/components/plate/index.mjs +0 -2
- package/lib/components/plate/index.mjs.map +0 -1
- package/lib/components/progress-bar/YProgressBar.mjs +0 -117
- package/lib/components/progress-bar/YProgressBar.mjs.map +0 -1
- package/lib/components/progress-bar/index.mjs +0 -2
- package/lib/components/progress-bar/index.mjs.map +0 -1
- package/lib/components/progress-ring/YProgressRing.mjs +0 -128
- package/lib/components/progress-ring/YProgressRing.mjs.map +0 -1
- package/lib/components/progress-ring/index.mjs +0 -2
- package/lib/components/progress-ring/index.mjs.map +0 -1
- package/lib/components/select/YSelect.mjs +0 -344
- package/lib/components/select/YSelect.mjs.map +0 -1
- package/lib/components/select/index.mjs +0 -2
- package/lib/components/select/index.mjs.map +0 -1
- package/lib/components/slider/YSlider.mjs +0 -26
- package/lib/components/slider/YSlider.mjs.map +0 -1
- package/lib/components/slider/index.mjs +0 -2
- package/lib/components/slider/index.mjs.map +0 -1
- package/lib/components/snackbar/YSnackbar.mjs +0 -209
- package/lib/components/snackbar/YSnackbar.mjs.map +0 -1
- package/lib/components/snackbar/index.mjs +0 -2
- package/lib/components/snackbar/index.mjs.map +0 -1
- package/lib/components/switch/YSwitch.mjs +0 -184
- package/lib/components/switch/YSwitch.mjs.map +0 -1
- package/lib/components/switch/index.mjs +0 -2
- package/lib/components/switch/index.mjs.map +0 -1
- package/lib/components/tab/YTab.mjs +0 -64
- package/lib/components/tab/YTab.mjs.map +0 -1
- package/lib/components/tab/YTabs.mjs +0 -86
- package/lib/components/tab/YTabs.mjs.map +0 -1
- package/lib/components/tab/index.mjs +0 -4
- package/lib/components/tab/index.mjs.map +0 -1
- package/lib/components/tab/shared.mjs +0 -2
- package/lib/components/tab/shared.mjs.map +0 -1
- package/lib/components/tab/types.mjs +0 -2
- package/lib/components/tab/types.mjs.map +0 -1
- package/lib/components/table/YDataTable.mjs +0 -182
- package/lib/components/table/YDataTable.mjs.map +0 -1
- package/lib/components/table/YDataTableBody.mjs +0 -131
- package/lib/components/table/YDataTableBody.mjs.map +0 -1
- package/lib/components/table/YDataTableCell.mjs +0 -78
- package/lib/components/table/YDataTableCell.mjs.map +0 -1
- package/lib/components/table/YDataTableControl.mjs +0 -46
- package/lib/components/table/YDataTableControl.mjs.map +0 -1
- package/lib/components/table/YDataTableHead.mjs +0 -172
- package/lib/components/table/YDataTableHead.mjs.map +0 -1
- package/lib/components/table/YDataTableLayer.mjs +0 -29
- package/lib/components/table/YDataTableLayer.mjs.map +0 -1
- package/lib/components/table/YDataTableRow.mjs +0 -150
- package/lib/components/table/YDataTableRow.mjs.map +0 -1
- package/lib/components/table/YDataTableServer.mjs +0 -173
- package/lib/components/table/YDataTableServer.mjs.map +0 -1
- package/lib/components/table/YTable.mjs +0 -77
- package/lib/components/table/YTable.mjs.map +0 -1
- package/lib/components/table/composibles/header.mjs +0 -127
- package/lib/components/table/composibles/header.mjs.map +0 -1
- package/lib/components/table/composibles/items.mjs +0 -52
- package/lib/components/table/composibles/items.mjs.map +0 -1
- package/lib/components/table/composibles/measure.mjs +0 -39
- package/lib/components/table/composibles/measure.mjs.map +0 -1
- package/lib/components/table/composibles/options.mjs +0 -33
- package/lib/components/table/composibles/options.mjs.map +0 -1
- package/lib/components/table/composibles/pagination.mjs +0 -99
- package/lib/components/table/composibles/pagination.mjs.map +0 -1
- package/lib/components/table/composibles/selection.mjs +0 -196
- package/lib/components/table/composibles/selection.mjs.map +0 -1
- package/lib/components/table/composibles/sorted-items.mjs +0 -50
- package/lib/components/table/composibles/sorted-items.mjs.map +0 -1
- package/lib/components/table/composibles/sorting.mjs +0 -73
- package/lib/components/table/composibles/sorting.mjs.map +0 -1
- package/lib/components/table/index.mjs +0 -9
- package/lib/components/table/index.mjs.map +0 -1
- package/lib/components/table/types/common.mjs +0 -2
- package/lib/components/table/types/common.mjs.map +0 -1
- package/lib/components/table/types/header.mjs +0 -2
- package/lib/components/table/types/header.mjs.map +0 -1
- package/lib/components/table/types/index.mjs +0 -2
- package/lib/components/table/types/index.mjs.map +0 -1
- package/lib/components/table/types/item.mjs +0 -2
- package/lib/components/table/types/item.mjs.map +0 -1
- package/lib/components/table/types/row.mjs +0 -2
- package/lib/components/table/types/row.mjs.map +0 -1
- package/lib/components/text-ellipsis/YTextEllipsis.mjs +0 -66
- package/lib/components/text-ellipsis/YTextEllipsis.mjs.map +0 -1
- package/lib/components/text-ellipsis/index.mjs +0 -2
- package/lib/components/text-ellipsis/index.mjs.map +0 -1
- package/lib/components/text-highlighter/YTextHighlighter.mjs +0 -95
- package/lib/components/text-highlighter/YTextHighlighter.mjs.map +0 -1
- package/lib/components/text-highlighter/index.mjs +0 -2
- package/lib/components/text-highlighter/index.mjs.map +0 -1
- package/lib/components/text-interpolation/YTi.mjs +0 -47
- package/lib/components/text-interpolation/YTi.mjs.map +0 -1
- package/lib/components/text-interpolation/index.mjs +0 -2
- package/lib/components/text-interpolation/index.mjs.map +0 -1
- package/lib/components/textarea/YTextarea.mjs +0 -157
- package/lib/components/textarea/YTextarea.mjs.map +0 -1
- package/lib/components/textarea/index.mjs +0 -2
- package/lib/components/textarea/index.mjs.map +0 -1
- package/lib/components/toggle-button/YToggleButton.mjs +0 -2
- package/lib/components/toggle-button/YToggleButton.mjs.map +0 -1
- package/lib/components/toggle-button/index.mjs +0 -2
- package/lib/components/toggle-button/index.mjs.map +0 -1
- package/lib/components/tooltip/YTooltip.mjs +0 -156
- package/lib/components/tooltip/YTooltip.mjs.map +0 -1
- package/lib/components/tooltip/index.mjs +0 -2
- package/lib/components/tooltip/index.mjs.map +0 -1
- package/lib/components/transitions/expand-transition.mjs +0 -109
- package/lib/components/transitions/expand-transition.mjs.map +0 -1
- package/lib/components/transitions/index.mjs +0 -4
- package/lib/components/transitions/index.mjs.map +0 -1
- package/lib/components/tree-view/YTreeView.mjs +0 -289
- package/lib/components/tree-view/YTreeView.mjs.map +0 -1
- package/lib/components/tree-view/YTreeViewNode.mjs +0 -250
- package/lib/components/tree-view/YTreeViewNode.mjs.map +0 -1
- package/lib/components/tree-view/index.mjs +0 -3
- package/lib/components/tree-view/index.mjs.map +0 -1
- package/lib/components/tree-view/tree-view.mjs +0 -179
- package/lib/components/tree-view/tree-view.mjs.map +0 -1
- package/lib/components/tree-view/types.mjs +0 -2
- package/lib/components/tree-view/types.mjs.map +0 -1
- package/lib/components/tree-view/util.mjs +0 -40
- package/lib/components/tree-view/util.mjs.map +0 -1
- package/lib/composables/choice-link.mjs +0 -13
- package/lib/composables/choice-link.mjs.map +0 -1
- package/lib/composables/choice.mjs +0 -187
- package/lib/composables/choice.mjs.map +0 -1
- package/lib/composables/communication.mjs +0 -55
- package/lib/composables/communication.mjs.map +0 -1
- package/lib/composables/component.mjs +0 -8
- package/lib/composables/component.mjs.map +0 -1
- package/lib/composables/coordinate/arrangement.mjs +0 -14
- package/lib/composables/coordinate/arrangement.mjs.map +0 -1
- package/lib/composables/coordinate/index.mjs +0 -67
- package/lib/composables/coordinate/index.mjs.map +0 -1
- package/lib/composables/coordinate/levitation.mjs +0 -315
- package/lib/composables/coordinate/levitation.mjs.map +0 -1
- package/lib/composables/coordinate/types.mjs +0 -2
- package/lib/composables/coordinate/types.mjs.map +0 -1
- package/lib/composables/coordinate/utils/point.mjs +0 -55
- package/lib/composables/coordinate/utils/point.mjs.map +0 -1
- package/lib/composables/date/factory.mjs +0 -12
- package/lib/composables/date/factory.mjs.map +0 -1
- package/lib/composables/date/index.mjs +0 -20
- package/lib/composables/date/index.mjs.map +0 -1
- package/lib/composables/date/setting.mjs +0 -11
- package/lib/composables/date/setting.mjs.map +0 -1
- package/lib/composables/date/types.mjs +0 -2
- package/lib/composables/date/types.mjs.map +0 -1
- package/lib/composables/defaults/index.mjs +0 -99
- package/lib/composables/defaults/index.mjs.map +0 -1
- package/lib/composables/defaults/share.mjs +0 -2
- package/lib/composables/defaults/share.mjs.map +0 -1
- package/lib/composables/defaults/types.mjs +0 -2
- package/lib/composables/defaults/types.mjs.map +0 -1
- package/lib/composables/dimension.mjs +0 -26
- package/lib/composables/dimension.mjs.map +0 -1
- package/lib/composables/focus.mjs +0 -29
- package/lib/composables/focus.mjs.map +0 -1
- package/lib/composables/form.mjs +0 -100
- package/lib/composables/form.mjs.map +0 -1
- package/lib/composables/group.mjs +0 -194
- package/lib/composables/group.mjs.map +0 -1
- package/lib/composables/i18n/index.mjs +0 -30
- package/lib/composables/i18n/index.mjs.map +0 -1
- package/lib/composables/i18n/locale.mjs +0 -5
- package/lib/composables/i18n/locale.mjs.map +0 -1
- package/lib/composables/i18n/rtl.mjs +0 -34
- package/lib/composables/i18n/rtl.mjs.map +0 -1
- package/lib/composables/i18n/share.mjs +0 -2
- package/lib/composables/i18n/share.mjs.map +0 -1
- package/lib/composables/icon.mjs +0 -164
- package/lib/composables/icon.mjs.map +0 -1
- package/lib/composables/index.mjs +0 -11
- package/lib/composables/index.mjs.map +0 -1
- package/lib/composables/layer-group.mjs +0 -66
- package/lib/composables/layer-group.mjs.map +0 -1
- package/lib/composables/layout.mjs +0 -13
- package/lib/composables/layout.mjs.map +0 -1
- package/lib/composables/list-items.mjs +0 -66
- package/lib/composables/list-items.mjs.map +0 -1
- package/lib/composables/progress.mjs +0 -26
- package/lib/composables/progress.mjs.map +0 -1
- package/lib/composables/ref.mjs +0 -13
- package/lib/composables/ref.mjs.map +0 -1
- package/lib/composables/resize-observer.mjs +0 -33
- package/lib/composables/resize-observer.mjs.map +0 -1
- package/lib/composables/scope.mjs +0 -26
- package/lib/composables/scope.mjs.map +0 -1
- package/lib/composables/style-color.mjs +0 -37
- package/lib/composables/style-color.mjs.map +0 -1
- package/lib/composables/theme/factory.mjs +0 -47
- package/lib/composables/theme/factory.mjs.map +0 -1
- package/lib/composables/theme/helper.mjs +0 -14
- package/lib/composables/theme/helper.mjs.map +0 -1
- package/lib/composables/theme/index.mjs +0 -187
- package/lib/composables/theme/index.mjs.map +0 -1
- package/lib/composables/theme/setting.mjs +0 -112
- package/lib/composables/theme/setting.mjs.map +0 -1
- package/lib/composables/theme/types.mjs +0 -2
- package/lib/composables/theme/types.mjs.map +0 -1
- package/lib/composables/timing.mjs +0 -102
- package/lib/composables/timing.mjs.map +0 -1
- package/lib/composables/transition.mjs +0 -51
- package/lib/composables/transition.mjs.map +0 -1
- package/lib/composables/validation.mjs +0 -126
- package/lib/composables/validation.mjs.map +0 -1
- package/lib/composables/vue-router.mjs +0 -32
- package/lib/composables/vue-router.mjs.map +0 -1
- package/lib/directives/complement-click/index.mjs +0 -78
- package/lib/directives/complement-click/index.mjs.map +0 -1
- package/lib/directives/plate-wave/index.mjs +0 -100
- package/lib/directives/plate-wave/index.mjs.map +0 -1
- package/lib/directives/theme-class.mjs +0 -24
- package/lib/directives/theme-class.mjs.map +0 -1
- package/lib/etc/index.mjs +0 -6
- package/lib/etc/index.mjs.map +0 -1
- package/lib/i18n/built-in.mjs +0 -77
- package/lib/i18n/built-in.mjs.map +0 -1
- package/lib/i18n/config.mjs +0 -82
- package/lib/i18n/config.mjs.map +0 -1
- package/lib/i18n/types.mjs +0 -2
- package/lib/i18n/types.mjs.map +0 -1
- package/lib/index.mjs +0 -103
- package/lib/index.mjs.map +0 -1
- package/lib/locales/en.mjs +0 -6
- package/lib/locales/en.mjs.map +0 -1
- package/lib/locales/index.mjs +0 -3
- package/lib/locales/index.mjs.map +0 -1
- package/lib/locales/ko.mjs +0 -6
- package/lib/locales/ko.mjs.map +0 -1
- package/lib/mixins/di.mjs +0 -19
- package/lib/mixins/di.mjs.map +0 -1
- package/lib/mixins/rebind-attrs.mjs +0 -37
- package/lib/mixins/rebind-attrs.mjs.map +0 -1
- package/lib/types/index.mjs +0 -2
- package/lib/types/index.mjs.map +0 -1
- package/lib/util/anchor.mjs +0 -53
- package/lib/util/anchor.mjs.map +0 -1
- package/lib/util/array.mjs +0 -13
- package/lib/util/array.mjs.map +0 -1
- package/lib/util/collection.mjs +0 -10
- package/lib/util/collection.mjs.map +0 -1
- package/lib/util/color/apca.mjs +0 -201
- package/lib/util/color/apca.mjs.map +0 -1
- package/lib/util/color/const.mjs +0 -6
- package/lib/util/color/const.mjs.map +0 -1
- package/lib/util/color/contrast/contrast.mjs +0 -149
- package/lib/util/color/contrast/contrast.mjs.map +0 -1
- package/lib/util/color/conversion.mjs +0 -310
- package/lib/util/color/conversion.mjs.map +0 -1
- package/lib/util/color/hct/cam16.mjs +0 -349
- package/lib/util/color/hct/cam16.mjs.map +0 -1
- package/lib/util/color/hct/hct-solver.mjs +0 -389
- package/lib/util/color/hct/hct-solver.mjs.map +0 -1
- package/lib/util/color/hct/hct.mjs +0 -153
- package/lib/util/color/hct/hct.mjs.map +0 -1
- package/lib/util/color/hct/viewing-conditions.mjs +0 -110
- package/lib/util/color/hct/viewing-conditions.mjs.map +0 -1
- package/lib/util/color/index.mjs +0 -40
- package/lib/util/color/index.mjs.map +0 -1
- package/lib/util/color/palettes/core-palette.mjs +0 -99
- package/lib/util/color/palettes/core-palette.mjs.map +0 -1
- package/lib/util/color/palettes/tonal-palette.mjs +0 -112
- package/lib/util/color/palettes/tonal-palette.mjs.map +0 -1
- package/lib/util/color/types.mjs +0 -2
- package/lib/util/color/types.mjs.map +0 -1
- package/lib/util/color/utils/math-utils.mjs +0 -139
- package/lib/util/color/utils/math-utils.mjs.map +0 -1
- package/lib/util/common.mjs +0 -107
- package/lib/util/common.mjs.map +0 -1
- package/lib/util/component/component.mjs +0 -26
- package/lib/util/component/component.mjs.map +0 -1
- package/lib/util/component/index.mjs +0 -65
- package/lib/util/component/index.mjs.map +0 -1
- package/lib/util/component/inject-self.mjs +0 -10
- package/lib/util/component/inject-self.mjs.map +0 -1
- package/lib/util/component/props.mjs +0 -41
- package/lib/util/component/props.mjs.map +0 -1
- package/lib/util/component/types.mjs +0 -2
- package/lib/util/component/types.mjs.map +0 -1
- package/lib/util/date/adapters/yuyeon-date-adapter.mjs +0 -111
- package/lib/util/date/adapters/yuyeon-date-adapter.mjs.map +0 -1
- package/lib/util/date/built-in.mjs +0 -416
- package/lib/util/date/built-in.mjs.map +0 -1
- package/lib/util/date/index.mjs +0 -4
- package/lib/util/date/index.mjs.map +0 -1
- package/lib/util/date/types.mjs +0 -2
- package/lib/util/date/types.mjs.map +0 -1
- package/lib/util/debounce.mjs +0 -114
- package/lib/util/debounce.mjs.map +0 -1
- package/lib/util/dom.mjs +0 -23
- package/lib/util/dom.mjs.map +0 -1
- package/lib/util/environments.mjs +0 -8
- package/lib/util/environments.mjs.map +0 -1
- package/lib/util/frame-scheduler.mjs +0 -29
- package/lib/util/frame-scheduler.mjs.map +0 -1
- package/lib/util/index.mjs +0 -17
- package/lib/util/index.mjs.map +0 -1
- package/lib/util/parser.mjs +0 -31
- package/lib/util/parser.mjs.map +0 -1
- package/lib/util/reactivity.mjs +0 -19
- package/lib/util/reactivity.mjs.map +0 -1
- package/lib/util/rect.mjs +0 -39
- package/lib/util/rect.mjs.map +0 -1
- package/lib/util/scroll.mjs +0 -28
- package/lib/util/scroll.mjs.map +0 -1
- package/lib/util/string.mjs +0 -69
- package/lib/util/string.mjs.map +0 -1
- package/lib/util/ui.mjs +0 -60
- package/lib/util/ui.mjs.map +0 -1
- package/lib/util/validation.mjs +0 -5
- package/lib/util/validation.mjs.map +0 -1
- package/lib/util/vue-component/index.mjs +0 -63
- package/lib/util/vue-component/index.mjs.map +0 -1
- package/lib/util/vue-component/props.mjs +0 -37
- package/lib/util/vue-component/props.mjs.map +0 -1
- package/lib/util/vue-component/types.mjs +0 -2
- package/lib/util/vue-component/types.mjs.map +0 -1
- package/lib/util/vue-component.mjs +0 -102
- package/lib/util/vue-component.mjs.map +0 -1
- package/types/components/table/pagination.d.ts +0 -78
- package/types/util/color/hct/hct_solver.d.ts +0 -146
- package/types/util/color/hct/viewing_conditions.d.ts +0 -74
- package/types/util/color/palettes/tonal_palette.d.ts +0 -55
- package/types/util/color/utils/math_utils.d.ts +0 -82
- package/types/util/parser.d.ts +0 -4
- package/types/util/vue-component/index.d.ts +0 -10
- package/types/util/vue-component/props.d.ts +0 -31
- package/types/util/vue-component/types.d.ts +0 -4
- package/types/util/vue-component.d.ts +0 -39
- /package/types/util/{Rect.d.ts → rect.d.ts} +0 -0
|
@@ -1,349 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2021 Google LLC
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { ViewingConditions } from "./viewing-conditions.mjs";
|
|
18
|
-
import { argbFromXyz, linearized } from "../conversion.mjs";
|
|
19
|
-
import * as math from "../utils/math-utils.mjs";
|
|
20
|
-
/**
|
|
21
|
-
* CAM16, a color appearance model. Colors are not just defined by their hex
|
|
22
|
-
* code, but rather, a hex code and viewing conditions.
|
|
23
|
-
*
|
|
24
|
-
* CAM16 instances also have coordinates in the CAM16-UCS space, called J*, a*,
|
|
25
|
-
* b*, or jstar, astar, bstar in code. CAM16-UCS is included in the CAM16
|
|
26
|
-
* specification, and should be used when measuring distances between colors.
|
|
27
|
-
*
|
|
28
|
-
* In traditional color spaces, a color can be identified solely by the
|
|
29
|
-
* observer's measurement of the color. Color appearance models such as CAM16
|
|
30
|
-
* also use information about the environment where the color was
|
|
31
|
-
* observed, known as the viewing conditions.
|
|
32
|
-
*
|
|
33
|
-
* For example, white under the traditional assumption of a midday sun white
|
|
34
|
-
* point is accurately measured as a slightly chromatic blue by CAM16. (roughly,
|
|
35
|
-
* hue 203, chroma 3, lightness 100)
|
|
36
|
-
*/
|
|
37
|
-
export class Cam16 {
|
|
38
|
-
/**
|
|
39
|
-
* All of the CAM16 dimensions can be calculated from 3 of the dimensions, in
|
|
40
|
-
* the following combinations:
|
|
41
|
-
* - {j or q} and {c, m, or s} and hue
|
|
42
|
-
* - jstar, astar, bstar
|
|
43
|
-
* Prefer using a static method that constructs from 3 of those dimensions.
|
|
44
|
-
* This constructor is intended for those methods to use to return all
|
|
45
|
-
* possible dimensions.
|
|
46
|
-
*
|
|
47
|
-
* @param hue
|
|
48
|
-
* @param chroma informally, colorfulness / color intensity. like saturation
|
|
49
|
-
* in HSL, except perceptually accurate.
|
|
50
|
-
* @param j lightness
|
|
51
|
-
* @param q brightness; ratio of lightness to white point's lightness
|
|
52
|
-
* @param m colorfulness
|
|
53
|
-
* @param s saturation; ratio of chroma to white point's chroma
|
|
54
|
-
* @param jstar CAM16-UCS J coordinate
|
|
55
|
-
* @param astar CAM16-UCS a coordinate
|
|
56
|
-
* @param bstar CAM16-UCS b coordinate
|
|
57
|
-
*/
|
|
58
|
-
constructor(hue, chroma, j, q, m, s, jstar, astar, bstar) {
|
|
59
|
-
this.hue = hue;
|
|
60
|
-
this.chroma = chroma;
|
|
61
|
-
this.j = j;
|
|
62
|
-
this.q = q;
|
|
63
|
-
this.m = m;
|
|
64
|
-
this.s = s;
|
|
65
|
-
this.jstar = jstar;
|
|
66
|
-
this.astar = astar;
|
|
67
|
-
this.bstar = bstar;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* CAM16 instances also have coordinates in the CAM16-UCS space, called J*,
|
|
72
|
-
* a*, b*, or jstar, astar, bstar in code. CAM16-UCS is included in the CAM16
|
|
73
|
-
* specification, and is used to measure distances between colors.
|
|
74
|
-
*/
|
|
75
|
-
distance(other) {
|
|
76
|
-
const dJ = this.jstar - other.jstar;
|
|
77
|
-
const dA = this.astar - other.astar;
|
|
78
|
-
const dB = this.bstar - other.bstar;
|
|
79
|
-
const dEPrime = Math.sqrt(dJ * dJ + dA * dA + dB * dB);
|
|
80
|
-
const dE = 1.41 * Math.pow(dEPrime, 0.63);
|
|
81
|
-
return dE;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
* @param argb ARGB representation of a color.
|
|
86
|
-
* @return CAM16 color, assuming the color was viewed in default viewing
|
|
87
|
-
* conditions.
|
|
88
|
-
*/
|
|
89
|
-
static fromInt(argb) {
|
|
90
|
-
return Cam16.fromIntInViewingConditions(argb, ViewingConditions.DEFAULT);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* @param argb ARGB representation of a color.
|
|
95
|
-
* @param viewingConditions Information about the environment where the color
|
|
96
|
-
* was observed.
|
|
97
|
-
* @return CAM16 color.
|
|
98
|
-
*/
|
|
99
|
-
static fromIntInViewingConditions(argb, viewingConditions) {
|
|
100
|
-
const red = (argb & 0x00ff0000) >> 16;
|
|
101
|
-
const green = (argb & 0x0000ff00) >> 8;
|
|
102
|
-
const blue = argb & 0x000000ff;
|
|
103
|
-
const redL = linearized(red);
|
|
104
|
-
const greenL = linearized(green);
|
|
105
|
-
const blueL = linearized(blue);
|
|
106
|
-
const x = 0.41233895 * redL + 0.35762064 * greenL + 0.18051042 * blueL;
|
|
107
|
-
const y = 0.2126 * redL + 0.7152 * greenL + 0.0722 * blueL;
|
|
108
|
-
const z = 0.01932141 * redL + 0.11916382 * greenL + 0.95034478 * blueL;
|
|
109
|
-
const rC = 0.401288 * x + 0.650173 * y - 0.051461 * z;
|
|
110
|
-
const gC = -0.250268 * x + 1.204414 * y + 0.045854 * z;
|
|
111
|
-
const bC = -0.002079 * x + 0.048952 * y + 0.953127 * z;
|
|
112
|
-
const rD = viewingConditions.rgbD[0] * rC;
|
|
113
|
-
const gD = viewingConditions.rgbD[1] * gC;
|
|
114
|
-
const bD = viewingConditions.rgbD[2] * bC;
|
|
115
|
-
const rAF = Math.pow(viewingConditions.fl * Math.abs(rD) / 100.0, 0.42);
|
|
116
|
-
const gAF = Math.pow(viewingConditions.fl * Math.abs(gD) / 100.0, 0.42);
|
|
117
|
-
const bAF = Math.pow(viewingConditions.fl * Math.abs(bD) / 100.0, 0.42);
|
|
118
|
-
const rA = math.signum(rD) * 400.0 * rAF / (rAF + 27.13);
|
|
119
|
-
const gA = math.signum(gD) * 400.0 * gAF / (gAF + 27.13);
|
|
120
|
-
const bA = math.signum(bD) * 400.0 * bAF / (bAF + 27.13);
|
|
121
|
-
const a = (11.0 * rA + -12.0 * gA + bA) / 11.0;
|
|
122
|
-
const b = (rA + gA - 2.0 * bA) / 9.0;
|
|
123
|
-
const u = (20.0 * rA + 20.0 * gA + 21.0 * bA) / 20.0;
|
|
124
|
-
const p2 = (40.0 * rA + 20.0 * gA + bA) / 20.0;
|
|
125
|
-
const atan2 = Math.atan2(b, a);
|
|
126
|
-
const atanDegrees = atan2 * 180.0 / Math.PI;
|
|
127
|
-
const hue = atanDegrees < 0 ? atanDegrees + 360.0 : atanDegrees >= 360 ? atanDegrees - 360.0 : atanDegrees;
|
|
128
|
-
const hueRadians = hue * Math.PI / 180.0;
|
|
129
|
-
const ac = p2 * viewingConditions.nbb;
|
|
130
|
-
const j = 100.0 * Math.pow(ac / viewingConditions.aw, viewingConditions.c * viewingConditions.z);
|
|
131
|
-
const q = 4.0 / viewingConditions.c * Math.sqrt(j / 100.0) * (viewingConditions.aw + 4.0) * viewingConditions.fLRoot;
|
|
132
|
-
const huePrime = hue < 20.14 ? hue + 360 : hue;
|
|
133
|
-
const eHue = 0.25 * (Math.cos(huePrime * Math.PI / 180.0 + 2.0) + 3.8);
|
|
134
|
-
const p1 = 50000.0 / 13.0 * eHue * viewingConditions.nc * viewingConditions.ncb;
|
|
135
|
-
const t = p1 * Math.sqrt(a * a + b * b) / (u + 0.305);
|
|
136
|
-
const alpha = Math.pow(t, 0.9) * Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73);
|
|
137
|
-
const c = alpha * Math.sqrt(j / 100.0);
|
|
138
|
-
const m = c * viewingConditions.fLRoot;
|
|
139
|
-
const s = 50.0 * Math.sqrt(alpha * viewingConditions.c / (viewingConditions.aw + 4.0));
|
|
140
|
-
const jstar = (1.0 + 100.0 * 0.007) * j / (1.0 + 0.007 * j);
|
|
141
|
-
const mstar = 1.0 / 0.0228 * Math.log(1.0 + 0.0228 * m);
|
|
142
|
-
const astar = mstar * Math.cos(hueRadians);
|
|
143
|
-
const bstar = mstar * Math.sin(hueRadians);
|
|
144
|
-
return new Cam16(hue, c, j, q, m, s, jstar, astar, bstar);
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/**
|
|
148
|
-
* @param j CAM16 lightness
|
|
149
|
-
* @param c CAM16 chroma
|
|
150
|
-
* @param h CAM16 hue
|
|
151
|
-
*/
|
|
152
|
-
static fromJch(j, c, h) {
|
|
153
|
-
return Cam16.fromJchInViewingConditions(j, c, h, ViewingConditions.DEFAULT);
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
/**
|
|
157
|
-
* @param j CAM16 lightness
|
|
158
|
-
* @param c CAM16 chroma
|
|
159
|
-
* @param h CAM16 hue
|
|
160
|
-
* @param viewingConditions Information about the environment where the color
|
|
161
|
-
* was observed.
|
|
162
|
-
*/
|
|
163
|
-
static fromJchInViewingConditions(j, c, h, viewingConditions) {
|
|
164
|
-
const q = 4.0 / viewingConditions.c * Math.sqrt(j / 100.0) * (viewingConditions.aw + 4.0) * viewingConditions.fLRoot;
|
|
165
|
-
const m = c * viewingConditions.fLRoot;
|
|
166
|
-
const alpha = c / Math.sqrt(j / 100.0);
|
|
167
|
-
const s = 50.0 * Math.sqrt(alpha * viewingConditions.c / (viewingConditions.aw + 4.0));
|
|
168
|
-
const hueRadians = h * Math.PI / 180.0;
|
|
169
|
-
const jstar = (1.0 + 100.0 * 0.007) * j / (1.0 + 0.007 * j);
|
|
170
|
-
const mstar = 1.0 / 0.0228 * Math.log(1.0 + 0.0228 * m);
|
|
171
|
-
const astar = mstar * Math.cos(hueRadians);
|
|
172
|
-
const bstar = mstar * Math.sin(hueRadians);
|
|
173
|
-
return new Cam16(h, c, j, q, m, s, jstar, astar, bstar);
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
/**
|
|
177
|
-
* @param jstar CAM16-UCS lightness.
|
|
178
|
-
* @param astar CAM16-UCS a dimension. Like a* in L*a*b*, it is a Cartesian
|
|
179
|
-
* coordinate on the Y axis.
|
|
180
|
-
* @param bstar CAM16-UCS b dimension. Like a* in L*a*b*, it is a Cartesian
|
|
181
|
-
* coordinate on the X axis.
|
|
182
|
-
*/
|
|
183
|
-
static fromUcs(jstar, astar, bstar) {
|
|
184
|
-
return Cam16.fromUcsInViewingConditions(jstar, astar, bstar, ViewingConditions.DEFAULT);
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
/**
|
|
188
|
-
* @param jstar CAM16-UCS lightness.
|
|
189
|
-
* @param astar CAM16-UCS a dimension. Like a* in L*a*b*, it is a Cartesian
|
|
190
|
-
* coordinate on the Y axis.
|
|
191
|
-
* @param bstar CAM16-UCS b dimension. Like a* in L*a*b*, it is a Cartesian
|
|
192
|
-
* coordinate on the X axis.
|
|
193
|
-
* @param viewingConditions Information about the environment where the color
|
|
194
|
-
* was observed.
|
|
195
|
-
*/
|
|
196
|
-
static fromUcsInViewingConditions(jstar, astar, bstar, viewingConditions) {
|
|
197
|
-
const a = astar;
|
|
198
|
-
const b = bstar;
|
|
199
|
-
const m = Math.sqrt(a * a + b * b);
|
|
200
|
-
const M = (Math.exp(m * 0.0228) - 1.0) / 0.0228;
|
|
201
|
-
const c = M / viewingConditions.fLRoot;
|
|
202
|
-
let h = Math.atan2(b, a) * (180.0 / Math.PI);
|
|
203
|
-
if (h < 0.0) {
|
|
204
|
-
h += 360.0;
|
|
205
|
-
}
|
|
206
|
-
const j = jstar / (1 - (jstar - 100) * 0.007);
|
|
207
|
-
return Cam16.fromJchInViewingConditions(j, c, h, viewingConditions);
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
/**
|
|
211
|
-
* @return ARGB representation of color, assuming the color was viewed in
|
|
212
|
-
* default viewing conditions, which are near-identical to the default
|
|
213
|
-
* viewing conditions for sRGB.
|
|
214
|
-
*/
|
|
215
|
-
toInt() {
|
|
216
|
-
return this.viewed(ViewingConditions.DEFAULT);
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
/**
|
|
220
|
-
* @param viewingConditions Information about the environment where the color
|
|
221
|
-
* will be viewed.
|
|
222
|
-
* @return ARGB representation of color
|
|
223
|
-
*/
|
|
224
|
-
viewed(viewingConditions) {
|
|
225
|
-
const alpha = this.chroma === 0.0 || this.j === 0.0 ? 0.0 : this.chroma / Math.sqrt(this.j / 100.0);
|
|
226
|
-
const t = Math.pow(alpha / Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73), 1.0 / 0.9);
|
|
227
|
-
const hRad = this.hue * Math.PI / 180.0;
|
|
228
|
-
const eHue = 0.25 * (Math.cos(hRad + 2.0) + 3.8);
|
|
229
|
-
const ac = viewingConditions.aw * Math.pow(this.j / 100.0, 1.0 / viewingConditions.c / viewingConditions.z);
|
|
230
|
-
const p1 = eHue * (50000.0 / 13.0) * viewingConditions.nc * viewingConditions.ncb;
|
|
231
|
-
const p2 = ac / viewingConditions.nbb;
|
|
232
|
-
const hSin = Math.sin(hRad);
|
|
233
|
-
const hCos = Math.cos(hRad);
|
|
234
|
-
const gamma = 23.0 * (p2 + 0.305) * t / (23.0 * p1 + 11.0 * t * hCos + 108.0 * t * hSin);
|
|
235
|
-
const a = gamma * hCos;
|
|
236
|
-
const b = gamma * hSin;
|
|
237
|
-
const rA = (460.0 * p2 + 451.0 * a + 288.0 * b) / 1403.0;
|
|
238
|
-
const gA = (460.0 * p2 - 891.0 * a - 261.0 * b) / 1403.0;
|
|
239
|
-
const bA = (460.0 * p2 - 220.0 * a - 6300.0 * b) / 1403.0;
|
|
240
|
-
const rCBase = Math.max(0, 27.13 * Math.abs(rA) / (400.0 - Math.abs(rA)));
|
|
241
|
-
const rC = math.signum(rA) * (100.0 / viewingConditions.fl) * Math.pow(rCBase, 1.0 / 0.42);
|
|
242
|
-
const gCBase = Math.max(0, 27.13 * Math.abs(gA) / (400.0 - Math.abs(gA)));
|
|
243
|
-
const gC = math.signum(gA) * (100.0 / viewingConditions.fl) * Math.pow(gCBase, 1.0 / 0.42);
|
|
244
|
-
const bCBase = Math.max(0, 27.13 * Math.abs(bA) / (400.0 - Math.abs(bA)));
|
|
245
|
-
const bC = math.signum(bA) * (100.0 / viewingConditions.fl) * Math.pow(bCBase, 1.0 / 0.42);
|
|
246
|
-
const rF = rC / viewingConditions.rgbD[0];
|
|
247
|
-
const gF = gC / viewingConditions.rgbD[1];
|
|
248
|
-
const bF = bC / viewingConditions.rgbD[2];
|
|
249
|
-
const x = 1.86206786 * rF - 1.01125463 * gF + 0.14918677 * bF;
|
|
250
|
-
const y = 0.38752654 * rF + 0.62144744 * gF - 0.00897398 * bF;
|
|
251
|
-
const z = -0.0158415 * rF - 0.03412294 * gF + 1.04996444 * bF;
|
|
252
|
-
const argb = argbFromXyz(x, y, z);
|
|
253
|
-
return argb;
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
/// Given color expressed in XYZ and viewed in [viewingConditions], convert to
|
|
257
|
-
/// CAM16.
|
|
258
|
-
static fromXyzInViewingConditions(x, y, z, viewingConditions) {
|
|
259
|
-
// Transform XYZ to 'cone'/'rgb' responses
|
|
260
|
-
|
|
261
|
-
const rC = 0.401288 * x + 0.650173 * y - 0.051461 * z;
|
|
262
|
-
const gC = -0.250268 * x + 1.204414 * y + 0.045854 * z;
|
|
263
|
-
const bC = -0.002079 * x + 0.048952 * y + 0.953127 * z;
|
|
264
|
-
|
|
265
|
-
// Discount illuminant
|
|
266
|
-
const rD = viewingConditions.rgbD[0] * rC;
|
|
267
|
-
const gD = viewingConditions.rgbD[1] * gC;
|
|
268
|
-
const bD = viewingConditions.rgbD[2] * bC;
|
|
269
|
-
|
|
270
|
-
// chromatic adaptation
|
|
271
|
-
const rAF = Math.pow(viewingConditions.fl * Math.abs(rD) / 100.0, 0.42);
|
|
272
|
-
const gAF = Math.pow(viewingConditions.fl * Math.abs(gD) / 100.0, 0.42);
|
|
273
|
-
const bAF = Math.pow(viewingConditions.fl * Math.abs(bD) / 100.0, 0.42);
|
|
274
|
-
const rA = math.signum(rD) * 400.0 * rAF / (rAF + 27.13);
|
|
275
|
-
const gA = math.signum(gD) * 400.0 * gAF / (gAF + 27.13);
|
|
276
|
-
const bA = math.signum(bD) * 400.0 * bAF / (bAF + 27.13);
|
|
277
|
-
|
|
278
|
-
// redness-greenness
|
|
279
|
-
const a = (11.0 * rA + -12.0 * gA + bA) / 11.0;
|
|
280
|
-
// yellowness-blueness
|
|
281
|
-
const b = (rA + gA - 2.0 * bA) / 9.0;
|
|
282
|
-
|
|
283
|
-
// auxiliary components
|
|
284
|
-
const u = (20.0 * rA + 20.0 * gA + 21.0 * bA) / 20.0;
|
|
285
|
-
const p2 = (40.0 * rA + 20.0 * gA + bA) / 20.0;
|
|
286
|
-
|
|
287
|
-
// hue
|
|
288
|
-
const atan2 = Math.atan2(b, a);
|
|
289
|
-
const atanDegrees = atan2 * 180.0 / Math.PI;
|
|
290
|
-
const hue = atanDegrees < 0 ? atanDegrees + 360.0 : atanDegrees >= 360 ? atanDegrees - 360 : atanDegrees;
|
|
291
|
-
const hueRadians = hue * Math.PI / 180.0;
|
|
292
|
-
|
|
293
|
-
// achromatic response to color
|
|
294
|
-
const ac = p2 * viewingConditions.nbb;
|
|
295
|
-
|
|
296
|
-
// CAM16 lightness and brightness
|
|
297
|
-
const J = 100.0 * Math.pow(ac / viewingConditions.aw, viewingConditions.c * viewingConditions.z);
|
|
298
|
-
const Q = 4.0 / viewingConditions.c * Math.sqrt(J / 100.0) * (viewingConditions.aw + 4.0) * viewingConditions.fLRoot;
|
|
299
|
-
const huePrime = hue < 20.14 ? hue + 360 : hue;
|
|
300
|
-
const eHue = 1.0 / 4.0 * (Math.cos(huePrime * Math.PI / 180.0 + 2.0) + 3.8);
|
|
301
|
-
const p1 = 50000.0 / 13.0 * eHue * viewingConditions.nc * viewingConditions.ncb;
|
|
302
|
-
const t = p1 * Math.sqrt(a * a + b * b) / (u + 0.305);
|
|
303
|
-
const alpha = Math.pow(t, 0.9) * Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73);
|
|
304
|
-
// CAM16 chroma, colorfulness, chroma
|
|
305
|
-
const C = alpha * Math.sqrt(J / 100.0);
|
|
306
|
-
const M = C * viewingConditions.fLRoot;
|
|
307
|
-
const s = 50.0 * Math.sqrt(alpha * viewingConditions.c / (viewingConditions.aw + 4.0));
|
|
308
|
-
|
|
309
|
-
// CAM16-UCS components
|
|
310
|
-
const jstar = (1.0 + 100.0 * 0.007) * J / (1.0 + 0.007 * J);
|
|
311
|
-
const mstar = Math.log(1.0 + 0.0228 * M) / 0.0228;
|
|
312
|
-
const astar = mstar * Math.cos(hueRadians);
|
|
313
|
-
const bstar = mstar * Math.sin(hueRadians);
|
|
314
|
-
return new Cam16(hue, C, J, Q, M, s, jstar, astar, bstar);
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
/// XYZ representation of CAM16 seen in [viewingConditions].
|
|
318
|
-
xyzInViewingConditions(viewingConditions) {
|
|
319
|
-
const alpha = this.chroma === 0.0 || this.j === 0.0 ? 0.0 : this.chroma / Math.sqrt(this.j / 100.0);
|
|
320
|
-
const t = Math.pow(alpha / Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73), 1.0 / 0.9);
|
|
321
|
-
const hRad = this.hue * Math.PI / 180.0;
|
|
322
|
-
const eHue = 0.25 * (Math.cos(hRad + 2.0) + 3.8);
|
|
323
|
-
const ac = viewingConditions.aw * Math.pow(this.j / 100.0, 1.0 / viewingConditions.c / viewingConditions.z);
|
|
324
|
-
const p1 = eHue * (50000.0 / 13.0) * viewingConditions.nc * viewingConditions.ncb;
|
|
325
|
-
const p2 = ac / viewingConditions.nbb;
|
|
326
|
-
const hSin = Math.sin(hRad);
|
|
327
|
-
const hCos = Math.cos(hRad);
|
|
328
|
-
const gamma = 23.0 * (p2 + 0.305) * t / (23.0 * p1 + 11 * t * hCos + 108.0 * t * hSin);
|
|
329
|
-
const a = gamma * hCos;
|
|
330
|
-
const b = gamma * hSin;
|
|
331
|
-
const rA = (460.0 * p2 + 451.0 * a + 288.0 * b) / 1403.0;
|
|
332
|
-
const gA = (460.0 * p2 - 891.0 * a - 261.0 * b) / 1403.0;
|
|
333
|
-
const bA = (460.0 * p2 - 220.0 * a - 6300.0 * b) / 1403.0;
|
|
334
|
-
const rCBase = Math.max(0, 27.13 * Math.abs(rA) / (400.0 - Math.abs(rA)));
|
|
335
|
-
const rC = math.signum(rA) * (100.0 / viewingConditions.fl) * Math.pow(rCBase, 1.0 / 0.42);
|
|
336
|
-
const gCBase = Math.max(0, 27.13 * Math.abs(gA) / (400.0 - Math.abs(gA)));
|
|
337
|
-
const gC = math.signum(gA) * (100.0 / viewingConditions.fl) * Math.pow(gCBase, 1.0 / 0.42);
|
|
338
|
-
const bCBase = Math.max(0, 27.13 * Math.abs(bA) / (400.0 - Math.abs(bA)));
|
|
339
|
-
const bC = math.signum(bA) * (100.0 / viewingConditions.fl) * Math.pow(bCBase, 1.0 / 0.42);
|
|
340
|
-
const rF = rC / viewingConditions.rgbD[0];
|
|
341
|
-
const gF = gC / viewingConditions.rgbD[1];
|
|
342
|
-
const bF = bC / viewingConditions.rgbD[2];
|
|
343
|
-
const x = 1.86206786 * rF - 1.01125463 * gF + 0.14918677 * bF;
|
|
344
|
-
const y = 0.38752654 * rF + 0.62144744 * gF - 0.00897398 * bF;
|
|
345
|
-
const z = -0.0158415 * rF - 0.03412294 * gF + 1.04996444 * bF;
|
|
346
|
-
return [x, y, z];
|
|
347
|
-
}
|
|
348
|
-
}
|
|
349
|
-
//# sourceMappingURL=cam16.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cam16.mjs","names":["ViewingConditions","argbFromXyz","linearized","math","Cam16","constructor","hue","chroma","j","q","m","s","jstar","astar","bstar","distance","other","dJ","dA","dB","dEPrime","Math","sqrt","dE","pow","fromInt","argb","fromIntInViewingConditions","DEFAULT","viewingConditions","red","green","blue","redL","greenL","blueL","x","y","z","rC","gC","bC","rD","rgbD","gD","bD","rAF","fl","abs","gAF","bAF","rA","signum","gA","bA","a","b","u","p2","atan2","atanDegrees","PI","hueRadians","ac","nbb","aw","c","fLRoot","huePrime","eHue","cos","p1","nc","ncb","t","alpha","n","mstar","log","sin","fromJch","h","fromJchInViewingConditions","fromUcs","fromUcsInViewingConditions","M","exp","toInt","viewed","hRad","hSin","hCos","gamma","rCBase","max","gCBase","bCBase","rF","gF","bF","fromXyzInViewingConditions","J","Q","C","xyzInViewingConditions"],"sources":["../../../../src/util/color/hct/cam16.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { ViewingConditions } from './viewing-conditions';\n\nimport { argbFromXyz, linearized } from '../conversion';\nimport * as math from '../utils/math-utils';\n\n/**\n * CAM16, a color appearance model. Colors are not just defined by their hex\n * code, but rather, a hex code and viewing conditions.\n *\n * CAM16 instances also have coordinates in the CAM16-UCS space, called J*, a*,\n * b*, or jstar, astar, bstar in code. CAM16-UCS is included in the CAM16\n * specification, and should be used when measuring distances between colors.\n *\n * In traditional color spaces, a color can be identified solely by the\n * observer's measurement of the color. Color appearance models such as CAM16\n * also use information about the environment where the color was\n * observed, known as the viewing conditions.\n *\n * For example, white under the traditional assumption of a midday sun white\n * point is accurately measured as a slightly chromatic blue by CAM16. (roughly,\n * hue 203, chroma 3, lightness 100)\n */\nexport class Cam16 {\n /**\n * All of the CAM16 dimensions can be calculated from 3 of the dimensions, in\n * the following combinations:\n * - {j or q} and {c, m, or s} and hue\n * - jstar, astar, bstar\n * Prefer using a static method that constructs from 3 of those dimensions.\n * This constructor is intended for those methods to use to return all\n * possible dimensions.\n *\n * @param hue\n * @param chroma informally, colorfulness / color intensity. like saturation\n * in HSL, except perceptually accurate.\n * @param j lightness\n * @param q brightness; ratio of lightness to white point's lightness\n * @param m colorfulness\n * @param s saturation; ratio of chroma to white point's chroma\n * @param jstar CAM16-UCS J coordinate\n * @param astar CAM16-UCS a coordinate\n * @param bstar CAM16-UCS b coordinate\n */\n constructor(\n readonly hue: number,\n readonly chroma: number,\n readonly j: number,\n readonly q: number,\n readonly m: number,\n readonly s: number,\n readonly jstar: number,\n readonly astar: number,\n readonly bstar: number,\n ) {}\n\n /**\n * CAM16 instances also have coordinates in the CAM16-UCS space, called J*,\n * a*, b*, or jstar, astar, bstar in code. CAM16-UCS is included in the CAM16\n * specification, and is used to measure distances between colors.\n */\n distance(other: Cam16): number {\n const dJ = this.jstar - other.jstar;\n const dA = this.astar - other.astar;\n const dB = this.bstar - other.bstar;\n const dEPrime = Math.sqrt(dJ * dJ + dA * dA + dB * dB);\n const dE = 1.41 * Math.pow(dEPrime, 0.63);\n return dE;\n }\n\n /**\n * @param argb ARGB representation of a color.\n * @return CAM16 color, assuming the color was viewed in default viewing\n * conditions.\n */\n static fromInt(argb: number): Cam16 {\n return Cam16.fromIntInViewingConditions(argb, ViewingConditions.DEFAULT);\n }\n\n /**\n * @param argb ARGB representation of a color.\n * @param viewingConditions Information about the environment where the color\n * was observed.\n * @return CAM16 color.\n */\n static fromIntInViewingConditions(\n argb: number,\n viewingConditions: ViewingConditions,\n ): Cam16 {\n const red = (argb & 0x00ff0000) >> 16;\n const green = (argb & 0x0000ff00) >> 8;\n const blue = argb & 0x000000ff;\n const redL = linearized(red);\n const greenL = linearized(green);\n const blueL = linearized(blue);\n const x = 0.41233895 * redL + 0.35762064 * greenL + 0.18051042 * blueL;\n const y = 0.2126 * redL + 0.7152 * greenL + 0.0722 * blueL;\n const z = 0.01932141 * redL + 0.11916382 * greenL + 0.95034478 * blueL;\n\n const rC = 0.401288 * x + 0.650173 * y - 0.051461 * z;\n const gC = -0.250268 * x + 1.204414 * y + 0.045854 * z;\n const bC = -0.002079 * x + 0.048952 * y + 0.953127 * z;\n\n const rD = viewingConditions.rgbD[0] * rC;\n const gD = viewingConditions.rgbD[1] * gC;\n const bD = viewingConditions.rgbD[2] * bC;\n\n const rAF = Math.pow((viewingConditions.fl * Math.abs(rD)) / 100.0, 0.42);\n const gAF = Math.pow((viewingConditions.fl * Math.abs(gD)) / 100.0, 0.42);\n const bAF = Math.pow((viewingConditions.fl * Math.abs(bD)) / 100.0, 0.42);\n\n const rA = (math.signum(rD) * 400.0 * rAF) / (rAF + 27.13);\n const gA = (math.signum(gD) * 400.0 * gAF) / (gAF + 27.13);\n const bA = (math.signum(bD) * 400.0 * bAF) / (bAF + 27.13);\n\n const a = (11.0 * rA + -12.0 * gA + bA) / 11.0;\n const b = (rA + gA - 2.0 * bA) / 9.0;\n const u = (20.0 * rA + 20.0 * gA + 21.0 * bA) / 20.0;\n const p2 = (40.0 * rA + 20.0 * gA + bA) / 20.0;\n const atan2 = Math.atan2(b, a);\n const atanDegrees = (atan2 * 180.0) / Math.PI;\n const hue =\n atanDegrees < 0\n ? atanDegrees + 360.0\n : atanDegrees >= 360\n ? atanDegrees - 360.0\n : atanDegrees;\n const hueRadians = (hue * Math.PI) / 180.0;\n\n const ac = p2 * viewingConditions.nbb;\n const j =\n 100.0 *\n Math.pow(\n ac / viewingConditions.aw,\n viewingConditions.c * viewingConditions.z,\n );\n const q =\n (4.0 / viewingConditions.c) *\n Math.sqrt(j / 100.0) *\n (viewingConditions.aw + 4.0) *\n viewingConditions.fLRoot;\n const huePrime = hue < 20.14 ? hue + 360 : hue;\n const eHue = 0.25 * (Math.cos((huePrime * Math.PI) / 180.0 + 2.0) + 3.8);\n const p1 =\n (50000.0 / 13.0) * eHue * viewingConditions.nc * viewingConditions.ncb;\n const t = (p1 * Math.sqrt(a * a + b * b)) / (u + 0.305);\n const alpha =\n Math.pow(t, 0.9) *\n Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73);\n const c = alpha * Math.sqrt(j / 100.0);\n const m = c * viewingConditions.fLRoot;\n const s =\n 50.0 *\n Math.sqrt((alpha * viewingConditions.c) / (viewingConditions.aw + 4.0));\n const jstar = ((1.0 + 100.0 * 0.007) * j) / (1.0 + 0.007 * j);\n const mstar = (1.0 / 0.0228) * Math.log(1.0 + 0.0228 * m);\n const astar = mstar * Math.cos(hueRadians);\n const bstar = mstar * Math.sin(hueRadians);\n\n return new Cam16(hue, c, j, q, m, s, jstar, astar, bstar);\n }\n\n /**\n * @param j CAM16 lightness\n * @param c CAM16 chroma\n * @param h CAM16 hue\n */\n static fromJch(j: number, c: number, h: number): Cam16 {\n return Cam16.fromJchInViewingConditions(j, c, h, ViewingConditions.DEFAULT);\n }\n\n /**\n * @param j CAM16 lightness\n * @param c CAM16 chroma\n * @param h CAM16 hue\n * @param viewingConditions Information about the environment where the color\n * was observed.\n */\n static fromJchInViewingConditions(\n j: number,\n c: number,\n h: number,\n viewingConditions: ViewingConditions,\n ): Cam16 {\n const q =\n (4.0 / viewingConditions.c) *\n Math.sqrt(j / 100.0) *\n (viewingConditions.aw + 4.0) *\n viewingConditions.fLRoot;\n const m = c * viewingConditions.fLRoot;\n const alpha = c / Math.sqrt(j / 100.0);\n const s =\n 50.0 *\n Math.sqrt((alpha * viewingConditions.c) / (viewingConditions.aw + 4.0));\n const hueRadians = (h * Math.PI) / 180.0;\n const jstar = ((1.0 + 100.0 * 0.007) * j) / (1.0 + 0.007 * j);\n const mstar = (1.0 / 0.0228) * Math.log(1.0 + 0.0228 * m);\n const astar = mstar * Math.cos(hueRadians);\n const bstar = mstar * Math.sin(hueRadians);\n return new Cam16(h, c, j, q, m, s, jstar, astar, bstar);\n }\n\n /**\n * @param jstar CAM16-UCS lightness.\n * @param astar CAM16-UCS a dimension. Like a* in L*a*b*, it is a Cartesian\n * coordinate on the Y axis.\n * @param bstar CAM16-UCS b dimension. Like a* in L*a*b*, it is a Cartesian\n * coordinate on the X axis.\n */\n static fromUcs(jstar: number, astar: number, bstar: number): Cam16 {\n return Cam16.fromUcsInViewingConditions(\n jstar,\n astar,\n bstar,\n ViewingConditions.DEFAULT,\n );\n }\n\n /**\n * @param jstar CAM16-UCS lightness.\n * @param astar CAM16-UCS a dimension. Like a* in L*a*b*, it is a Cartesian\n * coordinate on the Y axis.\n * @param bstar CAM16-UCS b dimension. Like a* in L*a*b*, it is a Cartesian\n * coordinate on the X axis.\n * @param viewingConditions Information about the environment where the color\n * was observed.\n */\n static fromUcsInViewingConditions(\n jstar: number,\n astar: number,\n bstar: number,\n viewingConditions: ViewingConditions,\n ): Cam16 {\n const a = astar;\n const b = bstar;\n const m = Math.sqrt(a * a + b * b);\n const M = (Math.exp(m * 0.0228) - 1.0) / 0.0228;\n const c = M / viewingConditions.fLRoot;\n let h = Math.atan2(b, a) * (180.0 / Math.PI);\n if (h < 0.0) {\n h += 360.0;\n }\n const j = jstar / (1 - (jstar - 100) * 0.007);\n return Cam16.fromJchInViewingConditions(j, c, h, viewingConditions);\n }\n\n /**\n * @return ARGB representation of color, assuming the color was viewed in\n * default viewing conditions, which are near-identical to the default\n * viewing conditions for sRGB.\n */\n toInt(): number {\n return this.viewed(ViewingConditions.DEFAULT);\n }\n\n /**\n * @param viewingConditions Information about the environment where the color\n * will be viewed.\n * @return ARGB representation of color\n */\n viewed(viewingConditions: ViewingConditions): number {\n const alpha =\n this.chroma === 0.0 || this.j === 0.0\n ? 0.0\n : this.chroma / Math.sqrt(this.j / 100.0);\n\n const t = Math.pow(\n alpha / Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73),\n 1.0 / 0.9,\n );\n const hRad = (this.hue * Math.PI) / 180.0;\n\n const eHue = 0.25 * (Math.cos(hRad + 2.0) + 3.8);\n const ac =\n viewingConditions.aw *\n Math.pow(this.j / 100.0, 1.0 / viewingConditions.c / viewingConditions.z);\n const p1 =\n eHue * (50000.0 / 13.0) * viewingConditions.nc * viewingConditions.ncb;\n const p2 = ac / viewingConditions.nbb;\n\n const hSin = Math.sin(hRad);\n const hCos = Math.cos(hRad);\n\n const gamma =\n (23.0 * (p2 + 0.305) * t) /\n (23.0 * p1 + 11.0 * t * hCos + 108.0 * t * hSin);\n const a = gamma * hCos;\n const b = gamma * hSin;\n const rA = (460.0 * p2 + 451.0 * a + 288.0 * b) / 1403.0;\n const gA = (460.0 * p2 - 891.0 * a - 261.0 * b) / 1403.0;\n const bA = (460.0 * p2 - 220.0 * a - 6300.0 * b) / 1403.0;\n\n const rCBase = Math.max(0, (27.13 * Math.abs(rA)) / (400.0 - Math.abs(rA)));\n const rC =\n math.signum(rA) *\n (100.0 / viewingConditions.fl) *\n Math.pow(rCBase, 1.0 / 0.42);\n const gCBase = Math.max(0, (27.13 * Math.abs(gA)) / (400.0 - Math.abs(gA)));\n const gC =\n math.signum(gA) *\n (100.0 / viewingConditions.fl) *\n Math.pow(gCBase, 1.0 / 0.42);\n const bCBase = Math.max(0, (27.13 * Math.abs(bA)) / (400.0 - Math.abs(bA)));\n const bC =\n math.signum(bA) *\n (100.0 / viewingConditions.fl) *\n Math.pow(bCBase, 1.0 / 0.42);\n const rF = rC / viewingConditions.rgbD[0];\n const gF = gC / viewingConditions.rgbD[1];\n const bF = bC / viewingConditions.rgbD[2];\n\n const x = 1.86206786 * rF - 1.01125463 * gF + 0.14918677 * bF;\n const y = 0.38752654 * rF + 0.62144744 * gF - 0.00897398 * bF;\n const z = -0.0158415 * rF - 0.03412294 * gF + 1.04996444 * bF;\n\n const argb = argbFromXyz(x, y, z);\n return argb;\n }\n\n /// Given color expressed in XYZ and viewed in [viewingConditions], convert to\n /// CAM16.\n static fromXyzInViewingConditions(\n x: number,\n y: number,\n z: number,\n viewingConditions: ViewingConditions,\n ): Cam16 {\n // Transform XYZ to 'cone'/'rgb' responses\n\n const rC = 0.401288 * x + 0.650173 * y - 0.051461 * z;\n const gC = -0.250268 * x + 1.204414 * y + 0.045854 * z;\n const bC = -0.002079 * x + 0.048952 * y + 0.953127 * z;\n\n // Discount illuminant\n const rD = viewingConditions.rgbD[0] * rC;\n const gD = viewingConditions.rgbD[1] * gC;\n const bD = viewingConditions.rgbD[2] * bC;\n\n // chromatic adaptation\n const rAF = Math.pow((viewingConditions.fl * Math.abs(rD)) / 100.0, 0.42);\n const gAF = Math.pow((viewingConditions.fl * Math.abs(gD)) / 100.0, 0.42);\n const bAF = Math.pow((viewingConditions.fl * Math.abs(bD)) / 100.0, 0.42);\n const rA = (math.signum(rD) * 400.0 * rAF) / (rAF + 27.13);\n const gA = (math.signum(gD) * 400.0 * gAF) / (gAF + 27.13);\n const bA = (math.signum(bD) * 400.0 * bAF) / (bAF + 27.13);\n\n // redness-greenness\n const a = (11.0 * rA + -12.0 * gA + bA) / 11.0;\n // yellowness-blueness\n const b = (rA + gA - 2.0 * bA) / 9.0;\n\n // auxiliary components\n const u = (20.0 * rA + 20.0 * gA + 21.0 * bA) / 20.0;\n const p2 = (40.0 * rA + 20.0 * gA + bA) / 20.0;\n\n // hue\n const atan2 = Math.atan2(b, a);\n const atanDegrees = (atan2 * 180.0) / Math.PI;\n const hue =\n atanDegrees < 0\n ? atanDegrees + 360.0\n : atanDegrees >= 360\n ? atanDegrees - 360\n : atanDegrees;\n const hueRadians = (hue * Math.PI) / 180.0;\n\n // achromatic response to color\n const ac = p2 * viewingConditions.nbb;\n\n // CAM16 lightness and brightness\n const J =\n 100.0 *\n Math.pow(\n ac / viewingConditions.aw,\n viewingConditions.c * viewingConditions.z,\n );\n const Q =\n (4.0 / viewingConditions.c) *\n Math.sqrt(J / 100.0) *\n (viewingConditions.aw + 4.0) *\n viewingConditions.fLRoot;\n\n const huePrime = hue < 20.14 ? hue + 360 : hue;\n const eHue =\n (1.0 / 4.0) * (Math.cos((huePrime * Math.PI) / 180.0 + 2.0) + 3.8);\n const p1 =\n (50000.0 / 13.0) * eHue * viewingConditions.nc * viewingConditions.ncb;\n const t = (p1 * Math.sqrt(a * a + b * b)) / (u + 0.305);\n const alpha =\n Math.pow(t, 0.9) *\n Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73);\n // CAM16 chroma, colorfulness, chroma\n const C = alpha * Math.sqrt(J / 100.0);\n const M = C * viewingConditions.fLRoot;\n const s =\n 50.0 *\n Math.sqrt((alpha * viewingConditions.c) / (viewingConditions.aw + 4.0));\n\n // CAM16-UCS components\n const jstar = ((1.0 + 100.0 * 0.007) * J) / (1.0 + 0.007 * J);\n const mstar = Math.log(1.0 + 0.0228 * M) / 0.0228;\n const astar = mstar * Math.cos(hueRadians);\n const bstar = mstar * Math.sin(hueRadians);\n return new Cam16(hue, C, J, Q, M, s, jstar, astar, bstar);\n }\n\n /// XYZ representation of CAM16 seen in [viewingConditions].\n xyzInViewingConditions(viewingConditions: ViewingConditions): number[] {\n const alpha =\n this.chroma === 0.0 || this.j === 0.0\n ? 0.0\n : this.chroma / Math.sqrt(this.j / 100.0);\n\n const t = Math.pow(\n alpha / Math.pow(1.64 - Math.pow(0.29, viewingConditions.n), 0.73),\n 1.0 / 0.9,\n );\n const hRad = (this.hue * Math.PI) / 180.0;\n\n const eHue = 0.25 * (Math.cos(hRad + 2.0) + 3.8);\n const ac =\n viewingConditions.aw *\n Math.pow(this.j / 100.0, 1.0 / viewingConditions.c / viewingConditions.z);\n const p1 =\n eHue * (50000.0 / 13.0) * viewingConditions.nc * viewingConditions.ncb;\n\n const p2 = ac / viewingConditions.nbb;\n\n const hSin = Math.sin(hRad);\n const hCos = Math.cos(hRad);\n\n const gamma =\n (23.0 * (p2 + 0.305) * t) /\n (23.0 * p1 + 11 * t * hCos + 108.0 * t * hSin);\n const a = gamma * hCos;\n const b = gamma * hSin;\n const rA = (460.0 * p2 + 451.0 * a + 288.0 * b) / 1403.0;\n const gA = (460.0 * p2 - 891.0 * a - 261.0 * b) / 1403.0;\n const bA = (460.0 * p2 - 220.0 * a - 6300.0 * b) / 1403.0;\n\n const rCBase = Math.max(0, (27.13 * Math.abs(rA)) / (400.0 - Math.abs(rA)));\n const rC =\n math.signum(rA) *\n (100.0 / viewingConditions.fl) *\n Math.pow(rCBase, 1.0 / 0.42);\n const gCBase = Math.max(0, (27.13 * Math.abs(gA)) / (400.0 - Math.abs(gA)));\n const gC =\n math.signum(gA) *\n (100.0 / viewingConditions.fl) *\n Math.pow(gCBase, 1.0 / 0.42);\n const bCBase = Math.max(0, (27.13 * Math.abs(bA)) / (400.0 - Math.abs(bA)));\n const bC =\n math.signum(bA) *\n (100.0 / viewingConditions.fl) *\n Math.pow(bCBase, 1.0 / 0.42);\n const rF = rC / viewingConditions.rgbD[0];\n const gF = gC / viewingConditions.rgbD[1];\n const bF = bC / viewingConditions.rgbD[2];\n\n const x = 1.86206786 * rF - 1.01125463 * gF + 0.14918677 * bF;\n const y = 0.38752654 * rF + 0.62144744 * gF - 0.00897398 * bF;\n const z = -0.0158415 * rF - 0.03412294 * gF + 1.04996444 * bF;\n\n return [x, y, z];\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAfA,SAgBSA,iBAAiB;AAAA,SAEjBC,WAAW,EAAEC,UAAU;AAAA,OACzB,KAAKC,IAAI;AAEhB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,KAAK,CAAC;EACjB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,WAAWA,CACAC,GAAW,EACXC,MAAc,EACdC,CAAS,EACTC,CAAS,EACTC,CAAS,EACTC,CAAS,EACTC,KAAa,EACbC,KAAa,EACbC,KAAa,EACtB;IAAA,KATSR,GAAW,GAAXA,GAAW;IAAA,KACXC,MAAc,GAAdA,MAAc;IAAA,KACdC,CAAS,GAATA,CAAS;IAAA,KACTC,CAAS,GAATA,CAAS;IAAA,KACTC,CAAS,GAATA,CAAS;IAAA,KACTC,CAAS,GAATA,CAAS;IAAA,KACTC,KAAa,GAAbA,KAAa;IAAA,KACbC,KAAa,GAAbA,KAAa;IAAA,KACbC,KAAa,GAAbA,KAAa;EACrB;;EAEH;AACF;AACA;AACA;AACA;EACEC,QAAQA,CAACC,KAAY,EAAU;IAC7B,MAAMC,EAAE,GAAG,IAAI,CAACL,KAAK,GAAGI,KAAK,CAACJ,KAAK;IACnC,MAAMM,EAAE,GAAG,IAAI,CAACL,KAAK,GAAGG,KAAK,CAACH,KAAK;IACnC,MAAMM,EAAE,GAAG,IAAI,CAACL,KAAK,GAAGE,KAAK,CAACF,KAAK;IACnC,MAAMM,OAAO,GAAGC,IAAI,CAACC,IAAI,CAACL,EAAE,GAAGA,EAAE,GAAGC,EAAE,GAAGA,EAAE,GAAGC,EAAE,GAAGA,EAAE,CAAC;IACtD,MAAMI,EAAE,GAAG,IAAI,GAAGF,IAAI,CAACG,GAAG,CAACJ,OAAO,EAAE,IAAI,CAAC;IACzC,OAAOG,EAAE;EACX;;EAEA;AACF;AACA;AACA;AACA;EACE,OAAOE,OAAOA,CAACC,IAAY,EAAS;IAClC,OAAOtB,KAAK,CAACuB,0BAA0B,CAACD,IAAI,EAAE1B,iBAAiB,CAAC4B,OAAO,CAAC;EAC1E;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,OAAOD,0BAA0BA,CAC/BD,IAAY,EACZG,iBAAoC,EAC7B;IACP,MAAMC,GAAG,GAAG,CAACJ,IAAI,GAAG,UAAU,KAAK,EAAE;IACrC,MAAMK,KAAK,GAAG,CAACL,IAAI,GAAG,UAAU,KAAK,CAAC;IACtC,MAAMM,IAAI,GAAGN,IAAI,GAAG,UAAU;IAC9B,MAAMO,IAAI,GAAG/B,UAAU,CAAC4B,GAAG,CAAC;IAC5B,MAAMI,MAAM,GAAGhC,UAAU,CAAC6B,KAAK,CAAC;IAChC,MAAMI,KAAK,GAAGjC,UAAU,CAAC8B,IAAI,CAAC;IAC9B,MAAMI,CAAC,GAAG,UAAU,GAAGH,IAAI,GAAG,UAAU,GAAGC,MAAM,GAAG,UAAU,GAAGC,KAAK;IACtE,MAAME,CAAC,GAAG,MAAM,GAAGJ,IAAI,GAAG,MAAM,GAAGC,MAAM,GAAG,MAAM,GAAGC,KAAK;IAC1D,MAAMG,CAAC,GAAG,UAAU,GAAGL,IAAI,GAAG,UAAU,GAAGC,MAAM,GAAG,UAAU,GAAGC,KAAK;IAEtE,MAAMI,EAAE,GAAG,QAAQ,GAAGH,CAAC,GAAG,QAAQ,GAAGC,CAAC,GAAG,QAAQ,GAAGC,CAAC;IACrD,MAAME,EAAE,GAAG,CAAC,QAAQ,GAAGJ,CAAC,GAAG,QAAQ,GAAGC,CAAC,GAAG,QAAQ,GAAGC,CAAC;IACtD,MAAMG,EAAE,GAAG,CAAC,QAAQ,GAAGL,CAAC,GAAG,QAAQ,GAAGC,CAAC,GAAG,QAAQ,GAAGC,CAAC;IAEtD,MAAMI,EAAE,GAAGb,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC,GAAGJ,EAAE;IACzC,MAAMK,EAAE,GAAGf,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC,GAAGH,EAAE;IACzC,MAAMK,EAAE,GAAGhB,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC,GAAGF,EAAE;IAEzC,MAAMK,GAAG,GAAGzB,IAAI,CAACG,GAAG,CAAEK,iBAAiB,CAACkB,EAAE,GAAG1B,IAAI,CAAC2B,GAAG,CAACN,EAAE,CAAC,GAAI,KAAK,EAAE,IAAI,CAAC;IACzE,MAAMO,GAAG,GAAG5B,IAAI,CAACG,GAAG,CAAEK,iBAAiB,CAACkB,EAAE,GAAG1B,IAAI,CAAC2B,GAAG,CAACJ,EAAE,CAAC,GAAI,KAAK,EAAE,IAAI,CAAC;IACzE,MAAMM,GAAG,GAAG7B,IAAI,CAACG,GAAG,CAAEK,iBAAiB,CAACkB,EAAE,GAAG1B,IAAI,CAAC2B,GAAG,CAACH,EAAE,CAAC,GAAI,KAAK,EAAE,IAAI,CAAC;IAEzE,MAAMM,EAAE,GAAIhD,IAAI,CAACiD,MAAM,CAACV,EAAE,CAAC,GAAG,KAAK,GAAGI,GAAG,IAAKA,GAAG,GAAG,KAAK,CAAC;IAC1D,MAAMO,EAAE,GAAIlD,IAAI,CAACiD,MAAM,CAACR,EAAE,CAAC,GAAG,KAAK,GAAGK,GAAG,IAAKA,GAAG,GAAG,KAAK,CAAC;IAC1D,MAAMK,EAAE,GAAInD,IAAI,CAACiD,MAAM,CAACP,EAAE,CAAC,GAAG,KAAK,GAAGK,GAAG,IAAKA,GAAG,GAAG,KAAK,CAAC;IAE1D,MAAMK,CAAC,GAAG,CAAC,IAAI,GAAGJ,EAAE,GAAG,CAAC,IAAI,GAAGE,EAAE,GAAGC,EAAE,IAAI,IAAI;IAC9C,MAAME,CAAC,GAAG,CAACL,EAAE,GAAGE,EAAE,GAAG,GAAG,GAAGC,EAAE,IAAI,GAAG;IACpC,MAAMG,CAAC,GAAG,CAAC,IAAI,GAAGN,EAAE,GAAG,IAAI,GAAGE,EAAE,GAAG,IAAI,GAAGC,EAAE,IAAI,IAAI;IACpD,MAAMI,EAAE,GAAG,CAAC,IAAI,GAAGP,EAAE,GAAG,IAAI,GAAGE,EAAE,GAAGC,EAAE,IAAI,IAAI;IAC9C,MAAMK,KAAK,GAAGtC,IAAI,CAACsC,KAAK,CAACH,CAAC,EAAED,CAAC,CAAC;IAC9B,MAAMK,WAAW,GAAID,KAAK,GAAG,KAAK,GAAItC,IAAI,CAACwC,EAAE;IAC7C,MAAMvD,GAAG,GACPsD,WAAW,GAAG,CAAC,GACXA,WAAW,GAAG,KAAK,GACnBA,WAAW,IAAI,GAAG,GAClBA,WAAW,GAAG,KAAK,GACnBA,WAAW;IACjB,MAAME,UAAU,GAAIxD,GAAG,GAAGe,IAAI,CAACwC,EAAE,GAAI,KAAK;IAE1C,MAAME,EAAE,GAAGL,EAAE,GAAG7B,iBAAiB,CAACmC,GAAG;IACrC,MAAMxD,CAAC,GACL,KAAK,GACLa,IAAI,CAACG,GAAG,CACNuC,EAAE,GAAGlC,iBAAiB,CAACoC,EAAE,EACzBpC,iBAAiB,CAACqC,CAAC,GAAGrC,iBAAiB,CAACS,CAC1C,CAAC;IACH,MAAM7B,CAAC,GACJ,GAAG,GAAGoB,iBAAiB,CAACqC,CAAC,GAC1B7C,IAAI,CAACC,IAAI,CAACd,CAAC,GAAG,KAAK,CAAC,IACnBqB,iBAAiB,CAACoC,EAAE,GAAG,GAAG,CAAC,GAC5BpC,iBAAiB,CAACsC,MAAM;IAC1B,MAAMC,QAAQ,GAAG9D,GAAG,GAAG,KAAK,GAAGA,GAAG,GAAG,GAAG,GAAGA,GAAG;IAC9C,MAAM+D,IAAI,GAAG,IAAI,IAAIhD,IAAI,CAACiD,GAAG,CAAEF,QAAQ,GAAG/C,IAAI,CAACwC,EAAE,GAAI,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACxE,MAAMU,EAAE,GACL,OAAO,GAAG,IAAI,GAAIF,IAAI,GAAGxC,iBAAiB,CAAC2C,EAAE,GAAG3C,iBAAiB,CAAC4C,GAAG;IACxE,MAAMC,CAAC,GAAIH,EAAE,GAAGlD,IAAI,CAACC,IAAI,CAACiC,CAAC,GAAGA,CAAC,GAAGC,CAAC,GAAGA,CAAC,CAAC,IAAKC,CAAC,GAAG,KAAK,CAAC;IACvD,MAAMkB,KAAK,GACTtD,IAAI,CAACG,GAAG,CAACkD,CAAC,EAAE,GAAG,CAAC,GAChBrD,IAAI,CAACG,GAAG,CAAC,IAAI,GAAGH,IAAI,CAACG,GAAG,CAAC,IAAI,EAAEK,iBAAiB,CAAC+C,CAAC,CAAC,EAAE,IAAI,CAAC;IAC5D,MAAMV,CAAC,GAAGS,KAAK,GAAGtD,IAAI,CAACC,IAAI,CAACd,CAAC,GAAG,KAAK,CAAC;IACtC,MAAME,CAAC,GAAGwD,CAAC,GAAGrC,iBAAiB,CAACsC,MAAM;IACtC,MAAMxD,CAAC,GACL,IAAI,GACJU,IAAI,CAACC,IAAI,CAAEqD,KAAK,GAAG9C,iBAAiB,CAACqC,CAAC,IAAKrC,iBAAiB,CAACoC,EAAE,GAAG,GAAG,CAAC,CAAC;IACzE,MAAMrD,KAAK,GAAI,CAAC,GAAG,GAAG,KAAK,GAAG,KAAK,IAAIJ,CAAC,IAAK,GAAG,GAAG,KAAK,GAAGA,CAAC,CAAC;IAC7D,MAAMqE,KAAK,GAAI,GAAG,GAAG,MAAM,GAAIxD,IAAI,CAACyD,GAAG,CAAC,GAAG,GAAG,MAAM,GAAGpE,CAAC,CAAC;IACzD,MAAMG,KAAK,GAAGgE,KAAK,GAAGxD,IAAI,CAACiD,GAAG,CAACR,UAAU,CAAC;IAC1C,MAAMhD,KAAK,GAAG+D,KAAK,GAAGxD,IAAI,CAAC0D,GAAG,CAACjB,UAAU,CAAC;IAE1C,OAAO,IAAI1D,KAAK,CAACE,GAAG,EAAE4D,CAAC,EAAE1D,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAEC,KAAK,EAAEC,KAAK,EAAEC,KAAK,CAAC;EAC3D;;EAEA;AACF;AACA;AACA;AACA;EACE,OAAOkE,OAAOA,CAACxE,CAAS,EAAE0D,CAAS,EAAEe,CAAS,EAAS;IACrD,OAAO7E,KAAK,CAAC8E,0BAA0B,CAAC1E,CAAC,EAAE0D,CAAC,EAAEe,CAAC,EAAEjF,iBAAiB,CAAC4B,OAAO,CAAC;EAC7E;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,OAAOsD,0BAA0BA,CAC/B1E,CAAS,EACT0D,CAAS,EACTe,CAAS,EACTpD,iBAAoC,EAC7B;IACP,MAAMpB,CAAC,GACJ,GAAG,GAAGoB,iBAAiB,CAACqC,CAAC,GAC1B7C,IAAI,CAACC,IAAI,CAACd,CAAC,GAAG,KAAK,CAAC,IACnBqB,iBAAiB,CAACoC,EAAE,GAAG,GAAG,CAAC,GAC5BpC,iBAAiB,CAACsC,MAAM;IAC1B,MAAMzD,CAAC,GAAGwD,CAAC,GAAGrC,iBAAiB,CAACsC,MAAM;IACtC,MAAMQ,KAAK,GAAGT,CAAC,GAAG7C,IAAI,CAACC,IAAI,CAACd,CAAC,GAAG,KAAK,CAAC;IACtC,MAAMG,CAAC,GACL,IAAI,GACJU,IAAI,CAACC,IAAI,CAAEqD,KAAK,GAAG9C,iBAAiB,CAACqC,CAAC,IAAKrC,iBAAiB,CAACoC,EAAE,GAAG,GAAG,CAAC,CAAC;IACzE,MAAMH,UAAU,GAAImB,CAAC,GAAG5D,IAAI,CAACwC,EAAE,GAAI,KAAK;IACxC,MAAMjD,KAAK,GAAI,CAAC,GAAG,GAAG,KAAK,GAAG,KAAK,IAAIJ,CAAC,IAAK,GAAG,GAAG,KAAK,GAAGA,CAAC,CAAC;IAC7D,MAAMqE,KAAK,GAAI,GAAG,GAAG,MAAM,GAAIxD,IAAI,CAACyD,GAAG,CAAC,GAAG,GAAG,MAAM,GAAGpE,CAAC,CAAC;IACzD,MAAMG,KAAK,GAAGgE,KAAK,GAAGxD,IAAI,CAACiD,GAAG,CAACR,UAAU,CAAC;IAC1C,MAAMhD,KAAK,GAAG+D,KAAK,GAAGxD,IAAI,CAAC0D,GAAG,CAACjB,UAAU,CAAC;IAC1C,OAAO,IAAI1D,KAAK,CAAC6E,CAAC,EAAEf,CAAC,EAAE1D,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAEC,KAAK,EAAEC,KAAK,EAAEC,KAAK,CAAC;EACzD;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,OAAOqE,OAAOA,CAACvE,KAAa,EAAEC,KAAa,EAAEC,KAAa,EAAS;IACjE,OAAOV,KAAK,CAACgF,0BAA0B,CACrCxE,KAAK,EACLC,KAAK,EACLC,KAAK,EACLd,iBAAiB,CAAC4B,OACpB,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,OAAOwD,0BAA0BA,CAC/BxE,KAAa,EACbC,KAAa,EACbC,KAAa,EACbe,iBAAoC,EAC7B;IACP,MAAM0B,CAAC,GAAG1C,KAAK;IACf,MAAM2C,CAAC,GAAG1C,KAAK;IACf,MAAMJ,CAAC,GAAGW,IAAI,CAACC,IAAI,CAACiC,CAAC,GAAGA,CAAC,GAAGC,CAAC,GAAGA,CAAC,CAAC;IAClC,MAAM6B,CAAC,GAAG,CAAChE,IAAI,CAACiE,GAAG,CAAC5E,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,MAAM;IAC/C,MAAMwD,CAAC,GAAGmB,CAAC,GAAGxD,iBAAiB,CAACsC,MAAM;IACtC,IAAIc,CAAC,GAAG5D,IAAI,CAACsC,KAAK,CAACH,CAAC,EAAED,CAAC,CAAC,IAAI,KAAK,GAAGlC,IAAI,CAACwC,EAAE,CAAC;IAC5C,IAAIoB,CAAC,GAAG,GAAG,EAAE;MACXA,CAAC,IAAI,KAAK;IACZ;IACA,MAAMzE,CAAC,GAAGI,KAAK,IAAI,CAAC,GAAG,CAACA,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC;IAC7C,OAAOR,KAAK,CAAC8E,0BAA0B,CAAC1E,CAAC,EAAE0D,CAAC,EAAEe,CAAC,EAAEpD,iBAAiB,CAAC;EACrE;;EAEA;AACF;AACA;AACA;AACA;EACE0D,KAAKA,CAAA,EAAW;IACd,OAAO,IAAI,CAACC,MAAM,CAACxF,iBAAiB,CAAC4B,OAAO,CAAC;EAC/C;;EAEA;AACF;AACA;AACA;AACA;EACE4D,MAAMA,CAAC3D,iBAAoC,EAAU;IACnD,MAAM8C,KAAK,GACT,IAAI,CAACpE,MAAM,KAAK,GAAG,IAAI,IAAI,CAACC,CAAC,KAAK,GAAG,GACjC,GAAG,GACH,IAAI,CAACD,MAAM,GAAGc,IAAI,CAACC,IAAI,CAAC,IAAI,CAACd,CAAC,GAAG,KAAK,CAAC;IAE7C,MAAMkE,CAAC,GAAGrD,IAAI,CAACG,GAAG,CAChBmD,KAAK,GAAGtD,IAAI,CAACG,GAAG,CAAC,IAAI,GAAGH,IAAI,CAACG,GAAG,CAAC,IAAI,EAAEK,iBAAiB,CAAC+C,CAAC,CAAC,EAAE,IAAI,CAAC,EAClE,GAAG,GAAG,GACR,CAAC;IACD,MAAMa,IAAI,GAAI,IAAI,CAACnF,GAAG,GAAGe,IAAI,CAACwC,EAAE,GAAI,KAAK;IAEzC,MAAMQ,IAAI,GAAG,IAAI,IAAIhD,IAAI,CAACiD,GAAG,CAACmB,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IAChD,MAAM1B,EAAE,GACNlC,iBAAiB,CAACoC,EAAE,GACpB5C,IAAI,CAACG,GAAG,CAAC,IAAI,CAAChB,CAAC,GAAG,KAAK,EAAE,GAAG,GAAGqB,iBAAiB,CAACqC,CAAC,GAAGrC,iBAAiB,CAACS,CAAC,CAAC;IAC3E,MAAMiC,EAAE,GACNF,IAAI,IAAI,OAAO,GAAG,IAAI,CAAC,GAAGxC,iBAAiB,CAAC2C,EAAE,GAAG3C,iBAAiB,CAAC4C,GAAG;IACxE,MAAMf,EAAE,GAAGK,EAAE,GAAGlC,iBAAiB,CAACmC,GAAG;IAErC,MAAM0B,IAAI,GAAGrE,IAAI,CAAC0D,GAAG,CAACU,IAAI,CAAC;IAC3B,MAAME,IAAI,GAAGtE,IAAI,CAACiD,GAAG,CAACmB,IAAI,CAAC;IAE3B,MAAMG,KAAK,GACR,IAAI,IAAIlC,EAAE,GAAG,KAAK,CAAC,GAAGgB,CAAC,IACvB,IAAI,GAAGH,EAAE,GAAG,IAAI,GAAGG,CAAC,GAAGiB,IAAI,GAAG,KAAK,GAAGjB,CAAC,GAAGgB,IAAI,CAAC;IAClD,MAAMnC,CAAC,GAAGqC,KAAK,GAAGD,IAAI;IACtB,MAAMnC,CAAC,GAAGoC,KAAK,GAAGF,IAAI;IACtB,MAAMvC,EAAE,GAAG,CAAC,KAAK,GAAGO,EAAE,GAAG,KAAK,GAAGH,CAAC,GAAG,KAAK,GAAGC,CAAC,IAAI,MAAM;IACxD,MAAMH,EAAE,GAAG,CAAC,KAAK,GAAGK,EAAE,GAAG,KAAK,GAAGH,CAAC,GAAG,KAAK,GAAGC,CAAC,IAAI,MAAM;IACxD,MAAMF,EAAE,GAAG,CAAC,KAAK,GAAGI,EAAE,GAAG,KAAK,GAAGH,CAAC,GAAG,MAAM,GAAGC,CAAC,IAAI,MAAM;IAEzD,MAAMqC,MAAM,GAAGxE,IAAI,CAACyE,GAAG,CAAC,CAAC,EAAG,KAAK,GAAGzE,IAAI,CAAC2B,GAAG,CAACG,EAAE,CAAC,IAAK,KAAK,GAAG9B,IAAI,CAAC2B,GAAG,CAACG,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAMZ,EAAE,GACNpC,IAAI,CAACiD,MAAM,CAACD,EAAE,CAAC,IACd,KAAK,GAAGtB,iBAAiB,CAACkB,EAAE,CAAC,GAC9B1B,IAAI,CAACG,GAAG,CAACqE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,MAAME,MAAM,GAAG1E,IAAI,CAACyE,GAAG,CAAC,CAAC,EAAG,KAAK,GAAGzE,IAAI,CAAC2B,GAAG,CAACK,EAAE,CAAC,IAAK,KAAK,GAAGhC,IAAI,CAAC2B,GAAG,CAACK,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAMb,EAAE,GACNrC,IAAI,CAACiD,MAAM,CAACC,EAAE,CAAC,IACd,KAAK,GAAGxB,iBAAiB,CAACkB,EAAE,CAAC,GAC9B1B,IAAI,CAACG,GAAG,CAACuE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,MAAMC,MAAM,GAAG3E,IAAI,CAACyE,GAAG,CAAC,CAAC,EAAG,KAAK,GAAGzE,IAAI,CAAC2B,GAAG,CAACM,EAAE,CAAC,IAAK,KAAK,GAAGjC,IAAI,CAAC2B,GAAG,CAACM,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAMb,EAAE,GACNtC,IAAI,CAACiD,MAAM,CAACE,EAAE,CAAC,IACd,KAAK,GAAGzB,iBAAiB,CAACkB,EAAE,CAAC,GAC9B1B,IAAI,CAACG,GAAG,CAACwE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,MAAMC,EAAE,GAAG1D,EAAE,GAAGV,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC;IACzC,MAAMuD,EAAE,GAAG1D,EAAE,GAAGX,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC;IACzC,MAAMwD,EAAE,GAAG1D,EAAE,GAAGZ,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC;IAEzC,MAAMP,CAAC,GAAG,UAAU,GAAG6D,EAAE,GAAG,UAAU,GAAGC,EAAE,GAAG,UAAU,GAAGC,EAAE;IAC7D,MAAM9D,CAAC,GAAG,UAAU,GAAG4D,EAAE,GAAG,UAAU,GAAGC,EAAE,GAAG,UAAU,GAAGC,EAAE;IAC7D,MAAM7D,CAAC,GAAG,CAAC,SAAS,GAAG2D,EAAE,GAAG,UAAU,GAAGC,EAAE,GAAG,UAAU,GAAGC,EAAE;IAE7D,MAAMzE,IAAI,GAAGzB,WAAW,CAACmC,CAAC,EAAEC,CAAC,EAAEC,CAAC,CAAC;IACjC,OAAOZ,IAAI;EACb;;EAEA;EACA;EACA,OAAO0E,0BAA0BA,CAC/BhE,CAAS,EACTC,CAAS,EACTC,CAAS,EACTT,iBAAoC,EAC7B;IACP;;IAEA,MAAMU,EAAE,GAAG,QAAQ,GAAGH,CAAC,GAAG,QAAQ,GAAGC,CAAC,GAAG,QAAQ,GAAGC,CAAC;IACrD,MAAME,EAAE,GAAG,CAAC,QAAQ,GAAGJ,CAAC,GAAG,QAAQ,GAAGC,CAAC,GAAG,QAAQ,GAAGC,CAAC;IACtD,MAAMG,EAAE,GAAG,CAAC,QAAQ,GAAGL,CAAC,GAAG,QAAQ,GAAGC,CAAC,GAAG,QAAQ,GAAGC,CAAC;;IAEtD;IACA,MAAMI,EAAE,GAAGb,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC,GAAGJ,EAAE;IACzC,MAAMK,EAAE,GAAGf,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC,GAAGH,EAAE;IACzC,MAAMK,EAAE,GAAGhB,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC,GAAGF,EAAE;;IAEzC;IACA,MAAMK,GAAG,GAAGzB,IAAI,CAACG,GAAG,CAAEK,iBAAiB,CAACkB,EAAE,GAAG1B,IAAI,CAAC2B,GAAG,CAACN,EAAE,CAAC,GAAI,KAAK,EAAE,IAAI,CAAC;IACzE,MAAMO,GAAG,GAAG5B,IAAI,CAACG,GAAG,CAAEK,iBAAiB,CAACkB,EAAE,GAAG1B,IAAI,CAAC2B,GAAG,CAACJ,EAAE,CAAC,GAAI,KAAK,EAAE,IAAI,CAAC;IACzE,MAAMM,GAAG,GAAG7B,IAAI,CAACG,GAAG,CAAEK,iBAAiB,CAACkB,EAAE,GAAG1B,IAAI,CAAC2B,GAAG,CAACH,EAAE,CAAC,GAAI,KAAK,EAAE,IAAI,CAAC;IACzE,MAAMM,EAAE,GAAIhD,IAAI,CAACiD,MAAM,CAACV,EAAE,CAAC,GAAG,KAAK,GAAGI,GAAG,IAAKA,GAAG,GAAG,KAAK,CAAC;IAC1D,MAAMO,EAAE,GAAIlD,IAAI,CAACiD,MAAM,CAACR,EAAE,CAAC,GAAG,KAAK,GAAGK,GAAG,IAAKA,GAAG,GAAG,KAAK,CAAC;IAC1D,MAAMK,EAAE,GAAInD,IAAI,CAACiD,MAAM,CAACP,EAAE,CAAC,GAAG,KAAK,GAAGK,GAAG,IAAKA,GAAG,GAAG,KAAK,CAAC;;IAE1D;IACA,MAAMK,CAAC,GAAG,CAAC,IAAI,GAAGJ,EAAE,GAAG,CAAC,IAAI,GAAGE,EAAE,GAAGC,EAAE,IAAI,IAAI;IAC9C;IACA,MAAME,CAAC,GAAG,CAACL,EAAE,GAAGE,EAAE,GAAG,GAAG,GAAGC,EAAE,IAAI,GAAG;;IAEpC;IACA,MAAMG,CAAC,GAAG,CAAC,IAAI,GAAGN,EAAE,GAAG,IAAI,GAAGE,EAAE,GAAG,IAAI,GAAGC,EAAE,IAAI,IAAI;IACpD,MAAMI,EAAE,GAAG,CAAC,IAAI,GAAGP,EAAE,GAAG,IAAI,GAAGE,EAAE,GAAGC,EAAE,IAAI,IAAI;;IAE9C;IACA,MAAMK,KAAK,GAAGtC,IAAI,CAACsC,KAAK,CAACH,CAAC,EAAED,CAAC,CAAC;IAC9B,MAAMK,WAAW,GAAID,KAAK,GAAG,KAAK,GAAItC,IAAI,CAACwC,EAAE;IAC7C,MAAMvD,GAAG,GACPsD,WAAW,GAAG,CAAC,GACXA,WAAW,GAAG,KAAK,GACnBA,WAAW,IAAI,GAAG,GAClBA,WAAW,GAAG,GAAG,GACjBA,WAAW;IACjB,MAAME,UAAU,GAAIxD,GAAG,GAAGe,IAAI,CAACwC,EAAE,GAAI,KAAK;;IAE1C;IACA,MAAME,EAAE,GAAGL,EAAE,GAAG7B,iBAAiB,CAACmC,GAAG;;IAErC;IACA,MAAMqC,CAAC,GACL,KAAK,GACLhF,IAAI,CAACG,GAAG,CACNuC,EAAE,GAAGlC,iBAAiB,CAACoC,EAAE,EACzBpC,iBAAiB,CAACqC,CAAC,GAAGrC,iBAAiB,CAACS,CAC1C,CAAC;IACH,MAAMgE,CAAC,GACJ,GAAG,GAAGzE,iBAAiB,CAACqC,CAAC,GAC1B7C,IAAI,CAACC,IAAI,CAAC+E,CAAC,GAAG,KAAK,CAAC,IACnBxE,iBAAiB,CAACoC,EAAE,GAAG,GAAG,CAAC,GAC5BpC,iBAAiB,CAACsC,MAAM;IAE1B,MAAMC,QAAQ,GAAG9D,GAAG,GAAG,KAAK,GAAGA,GAAG,GAAG,GAAG,GAAGA,GAAG;IAC9C,MAAM+D,IAAI,GACP,GAAG,GAAG,GAAG,IAAKhD,IAAI,CAACiD,GAAG,CAAEF,QAAQ,GAAG/C,IAAI,CAACwC,EAAE,GAAI,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACpE,MAAMU,EAAE,GACL,OAAO,GAAG,IAAI,GAAIF,IAAI,GAAGxC,iBAAiB,CAAC2C,EAAE,GAAG3C,iBAAiB,CAAC4C,GAAG;IACxE,MAAMC,CAAC,GAAIH,EAAE,GAAGlD,IAAI,CAACC,IAAI,CAACiC,CAAC,GAAGA,CAAC,GAAGC,CAAC,GAAGA,CAAC,CAAC,IAAKC,CAAC,GAAG,KAAK,CAAC;IACvD,MAAMkB,KAAK,GACTtD,IAAI,CAACG,GAAG,CAACkD,CAAC,EAAE,GAAG,CAAC,GAChBrD,IAAI,CAACG,GAAG,CAAC,IAAI,GAAGH,IAAI,CAACG,GAAG,CAAC,IAAI,EAAEK,iBAAiB,CAAC+C,CAAC,CAAC,EAAE,IAAI,CAAC;IAC5D;IACA,MAAM2B,CAAC,GAAG5B,KAAK,GAAGtD,IAAI,CAACC,IAAI,CAAC+E,CAAC,GAAG,KAAK,CAAC;IACtC,MAAMhB,CAAC,GAAGkB,CAAC,GAAG1E,iBAAiB,CAACsC,MAAM;IACtC,MAAMxD,CAAC,GACL,IAAI,GACJU,IAAI,CAACC,IAAI,CAAEqD,KAAK,GAAG9C,iBAAiB,CAACqC,CAAC,IAAKrC,iBAAiB,CAACoC,EAAE,GAAG,GAAG,CAAC,CAAC;;IAEzE;IACA,MAAMrD,KAAK,GAAI,CAAC,GAAG,GAAG,KAAK,GAAG,KAAK,IAAIyF,CAAC,IAAK,GAAG,GAAG,KAAK,GAAGA,CAAC,CAAC;IAC7D,MAAMxB,KAAK,GAAGxD,IAAI,CAACyD,GAAG,CAAC,GAAG,GAAG,MAAM,GAAGO,CAAC,CAAC,GAAG,MAAM;IACjD,MAAMxE,KAAK,GAAGgE,KAAK,GAAGxD,IAAI,CAACiD,GAAG,CAACR,UAAU,CAAC;IAC1C,MAAMhD,KAAK,GAAG+D,KAAK,GAAGxD,IAAI,CAAC0D,GAAG,CAACjB,UAAU,CAAC;IAC1C,OAAO,IAAI1D,KAAK,CAACE,GAAG,EAAEiG,CAAC,EAAEF,CAAC,EAAEC,CAAC,EAAEjB,CAAC,EAAE1E,CAAC,EAAEC,KAAK,EAAEC,KAAK,EAAEC,KAAK,CAAC;EAC3D;;EAEA;EACA0F,sBAAsBA,CAAC3E,iBAAoC,EAAY;IACrE,MAAM8C,KAAK,GACT,IAAI,CAACpE,MAAM,KAAK,GAAG,IAAI,IAAI,CAACC,CAAC,KAAK,GAAG,GACjC,GAAG,GACH,IAAI,CAACD,MAAM,GAAGc,IAAI,CAACC,IAAI,CAAC,IAAI,CAACd,CAAC,GAAG,KAAK,CAAC;IAE7C,MAAMkE,CAAC,GAAGrD,IAAI,CAACG,GAAG,CAChBmD,KAAK,GAAGtD,IAAI,CAACG,GAAG,CAAC,IAAI,GAAGH,IAAI,CAACG,GAAG,CAAC,IAAI,EAAEK,iBAAiB,CAAC+C,CAAC,CAAC,EAAE,IAAI,CAAC,EAClE,GAAG,GAAG,GACR,CAAC;IACD,MAAMa,IAAI,GAAI,IAAI,CAACnF,GAAG,GAAGe,IAAI,CAACwC,EAAE,GAAI,KAAK;IAEzC,MAAMQ,IAAI,GAAG,IAAI,IAAIhD,IAAI,CAACiD,GAAG,CAACmB,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IAChD,MAAM1B,EAAE,GACNlC,iBAAiB,CAACoC,EAAE,GACpB5C,IAAI,CAACG,GAAG,CAAC,IAAI,CAAChB,CAAC,GAAG,KAAK,EAAE,GAAG,GAAGqB,iBAAiB,CAACqC,CAAC,GAAGrC,iBAAiB,CAACS,CAAC,CAAC;IAC3E,MAAMiC,EAAE,GACNF,IAAI,IAAI,OAAO,GAAG,IAAI,CAAC,GAAGxC,iBAAiB,CAAC2C,EAAE,GAAG3C,iBAAiB,CAAC4C,GAAG;IAExE,MAAMf,EAAE,GAAGK,EAAE,GAAGlC,iBAAiB,CAACmC,GAAG;IAErC,MAAM0B,IAAI,GAAGrE,IAAI,CAAC0D,GAAG,CAACU,IAAI,CAAC;IAC3B,MAAME,IAAI,GAAGtE,IAAI,CAACiD,GAAG,CAACmB,IAAI,CAAC;IAE3B,MAAMG,KAAK,GACR,IAAI,IAAIlC,EAAE,GAAG,KAAK,CAAC,GAAGgB,CAAC,IACvB,IAAI,GAAGH,EAAE,GAAG,EAAE,GAAGG,CAAC,GAAGiB,IAAI,GAAG,KAAK,GAAGjB,CAAC,GAAGgB,IAAI,CAAC;IAChD,MAAMnC,CAAC,GAAGqC,KAAK,GAAGD,IAAI;IACtB,MAAMnC,CAAC,GAAGoC,KAAK,GAAGF,IAAI;IACtB,MAAMvC,EAAE,GAAG,CAAC,KAAK,GAAGO,EAAE,GAAG,KAAK,GAAGH,CAAC,GAAG,KAAK,GAAGC,CAAC,IAAI,MAAM;IACxD,MAAMH,EAAE,GAAG,CAAC,KAAK,GAAGK,EAAE,GAAG,KAAK,GAAGH,CAAC,GAAG,KAAK,GAAGC,CAAC,IAAI,MAAM;IACxD,MAAMF,EAAE,GAAG,CAAC,KAAK,GAAGI,EAAE,GAAG,KAAK,GAAGH,CAAC,GAAG,MAAM,GAAGC,CAAC,IAAI,MAAM;IAEzD,MAAMqC,MAAM,GAAGxE,IAAI,CAACyE,GAAG,CAAC,CAAC,EAAG,KAAK,GAAGzE,IAAI,CAAC2B,GAAG,CAACG,EAAE,CAAC,IAAK,KAAK,GAAG9B,IAAI,CAAC2B,GAAG,CAACG,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAMZ,EAAE,GACNpC,IAAI,CAACiD,MAAM,CAACD,EAAE,CAAC,IACd,KAAK,GAAGtB,iBAAiB,CAACkB,EAAE,CAAC,GAC9B1B,IAAI,CAACG,GAAG,CAACqE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,MAAME,MAAM,GAAG1E,IAAI,CAACyE,GAAG,CAAC,CAAC,EAAG,KAAK,GAAGzE,IAAI,CAAC2B,GAAG,CAACK,EAAE,CAAC,IAAK,KAAK,GAAGhC,IAAI,CAAC2B,GAAG,CAACK,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAMb,EAAE,GACNrC,IAAI,CAACiD,MAAM,CAACC,EAAE,CAAC,IACd,KAAK,GAAGxB,iBAAiB,CAACkB,EAAE,CAAC,GAC9B1B,IAAI,CAACG,GAAG,CAACuE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,MAAMC,MAAM,GAAG3E,IAAI,CAACyE,GAAG,CAAC,CAAC,EAAG,KAAK,GAAGzE,IAAI,CAAC2B,GAAG,CAACM,EAAE,CAAC,IAAK,KAAK,GAAGjC,IAAI,CAAC2B,GAAG,CAACM,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAMb,EAAE,GACNtC,IAAI,CAACiD,MAAM,CAACE,EAAE,CAAC,IACd,KAAK,GAAGzB,iBAAiB,CAACkB,EAAE,CAAC,GAC9B1B,IAAI,CAACG,GAAG,CAACwE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,MAAMC,EAAE,GAAG1D,EAAE,GAAGV,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC;IACzC,MAAMuD,EAAE,GAAG1D,EAAE,GAAGX,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC;IACzC,MAAMwD,EAAE,GAAG1D,EAAE,GAAGZ,iBAAiB,CAACc,IAAI,CAAC,CAAC,CAAC;IAEzC,MAAMP,CAAC,GAAG,UAAU,GAAG6D,EAAE,GAAG,UAAU,GAAGC,EAAE,GAAG,UAAU,GAAGC,EAAE;IAC7D,MAAM9D,CAAC,GAAG,UAAU,GAAG4D,EAAE,GAAG,UAAU,GAAGC,EAAE,GAAG,UAAU,GAAGC,EAAE;IAC7D,MAAM7D,CAAC,GAAG,CAAC,SAAS,GAAG2D,EAAE,GAAG,UAAU,GAAGC,EAAE,GAAG,UAAU,GAAGC,EAAE;IAE7D,OAAO,CAAC/D,CAAC,EAAEC,CAAC,EAAEC,CAAC,CAAC;EAClB;AACF"}
|