@esri/calcite-components
Version:
Web Components for Esri's Calcite Design System.
158 lines (153 loc) • 14 kB
JavaScript
/*!
* All material copyright ESRI, All Rights Reserved, unless otherwise specified.
* See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
* v1.5.0-next.4
*/
export { getAssetPath, setAssetPath, setNonce, setPlatformOptions } from '@stencil/core/internal/client';
import { d as darkMode, a as autoMode } from './dom.js';
export { CalciteAccordion, defineCustomElement as defineCustomElementCalciteAccordion } from './calcite-accordion.js';
export { CalciteAccordionItem, defineCustomElement as defineCustomElementCalciteAccordionItem } from './calcite-accordion-item.js';
export { CalciteAction, defineCustomElement as defineCustomElementCalciteAction } from './calcite-action.js';
export { CalciteActionBar, defineCustomElement as defineCustomElementCalciteActionBar } from './calcite-action-bar.js';
export { CalciteActionGroup, defineCustomElement as defineCustomElementCalciteActionGroup } from './calcite-action-group.js';
export { CalciteActionMenu, defineCustomElement as defineCustomElementCalciteActionMenu } from './calcite-action-menu.js';
export { CalciteActionPad, defineCustomElement as defineCustomElementCalciteActionPad } from './calcite-action-pad.js';
export { CalciteAlert, defineCustomElement as defineCustomElementCalciteAlert } from './calcite-alert.js';
export { CalciteAvatar, defineCustomElement as defineCustomElementCalciteAvatar } from './calcite-avatar.js';
export { CalciteBlock, defineCustomElement as defineCustomElementCalciteBlock } from './calcite-block.js';
export { CalciteBlockSection, defineCustomElement as defineCustomElementCalciteBlockSection } from './calcite-block-section.js';
export { CalciteButton, defineCustomElement as defineCustomElementCalciteButton } from './calcite-button.js';
export { CalciteCard, defineCustomElement as defineCustomElementCalciteCard } from './calcite-card.js';
export { CalciteCheckbox, defineCustomElement as defineCustomElementCalciteCheckbox } from './calcite-checkbox.js';
export { CalciteChip, defineCustomElement as defineCustomElementCalciteChip } from './calcite-chip.js';
export { CalciteChipGroup, defineCustomElement as defineCustomElementCalciteChipGroup } from './calcite-chip-group.js';
export { CalciteColorPicker, defineCustomElement as defineCustomElementCalciteColorPicker } from './calcite-color-picker.js';
export { CalciteColorPickerHexInput, defineCustomElement as defineCustomElementCalciteColorPickerHexInput } from './calcite-color-picker-hex-input.js';
export { CalciteColorPickerSwatch, defineCustomElement as defineCustomElementCalciteColorPickerSwatch } from './calcite-color-picker-swatch.js';
export { CalciteCombobox, defineCustomElement as defineCustomElementCalciteCombobox } from './calcite-combobox.js';
export { CalciteComboboxItem, defineCustomElement as defineCustomElementCalciteComboboxItem } from './calcite-combobox-item.js';
export { CalciteComboboxItemGroup, defineCustomElement as defineCustomElementCalciteComboboxItemGroup } from './calcite-combobox-item-group.js';
export { CalciteDatePicker, defineCustomElement as defineCustomElementCalciteDatePicker } from './calcite-date-picker.js';
export { CalciteDatePickerDay, defineCustomElement as defineCustomElementCalciteDatePickerDay } from './calcite-date-picker-day.js';
export { CalciteDatePickerMonth, defineCustomElement as defineCustomElementCalciteDatePickerMonth } from './calcite-date-picker-month.js';
export { CalciteDatePickerMonthHeader, defineCustomElement as defineCustomElementCalciteDatePickerMonthHeader } from './calcite-date-picker-month-header.js';
export { CalciteDropdown, defineCustomElement as defineCustomElementCalciteDropdown } from './calcite-dropdown.js';
export { CalciteDropdownGroup, defineCustomElement as defineCustomElementCalciteDropdownGroup } from './calcite-dropdown-group.js';
export { CalciteDropdownItem, defineCustomElement as defineCustomElementCalciteDropdownItem } from './calcite-dropdown-item.js';
export { CalciteFab, defineCustomElement as defineCustomElementCalciteFab } from './calcite-fab.js';
export { CalciteFilter, defineCustomElement as defineCustomElementCalciteFilter } from './calcite-filter.js';
export { CalciteFlow, defineCustomElement as defineCustomElementCalciteFlow } from './calcite-flow.js';
export { CalciteFlowItem, defineCustomElement as defineCustomElementCalciteFlowItem } from './calcite-flow-item.js';
export { CalciteGraph, defineCustomElement as defineCustomElementCalciteGraph } from './calcite-graph.js';
export { CalciteHandle, defineCustomElement as defineCustomElementCalciteHandle } from './calcite-handle.js';
export { CalciteIcon, defineCustomElement as defineCustomElementCalciteIcon } from './calcite-icon.js';
export { CalciteInlineEditable, defineCustomElement as defineCustomElementCalciteInlineEditable } from './calcite-inline-editable.js';
export { CalciteInput, defineCustomElement as defineCustomElementCalciteInput } from './calcite-input.js';
export { CalciteInputDatePicker, defineCustomElement as defineCustomElementCalciteInputDatePicker } from './calcite-input-date-picker.js';
export { CalciteInputMessage, defineCustomElement as defineCustomElementCalciteInputMessage } from './calcite-input-message.js';
export { CalciteInputNumber, defineCustomElement as defineCustomElementCalciteInputNumber } from './calcite-input-number.js';
export { CalciteInputText, defineCustomElement as defineCustomElementCalciteInputText } from './calcite-input-text.js';
export { CalciteInputTimePicker, defineCustomElement as defineCustomElementCalciteInputTimePicker } from './calcite-input-time-picker.js';
export { CalciteLabel, defineCustomElement as defineCustomElementCalciteLabel } from './calcite-label.js';
export { CalciteLink, defineCustomElement as defineCustomElementCalciteLink } from './calcite-link.js';
export { CalciteList, defineCustomElement as defineCustomElementCalciteList } from './calcite-list.js';
export { CalciteListItem, defineCustomElement as defineCustomElementCalciteListItem } from './calcite-list-item.js';
export { CalciteListItemGroup, defineCustomElement as defineCustomElementCalciteListItemGroup } from './calcite-list-item-group.js';
export { CalciteLoader, defineCustomElement as defineCustomElementCalciteLoader } from './calcite-loader.js';
export { CalciteMenu, defineCustomElement as defineCustomElementCalciteMenu } from './calcite-menu.js';
export { CalciteMenuItem, defineCustomElement as defineCustomElementCalciteMenuItem } from './calcite-menu-item.js';
export { CalciteModal, defineCustomElement as defineCustomElementCalciteModal } from './calcite-modal.js';
export { CalciteNavigation, defineCustomElement as defineCustomElementCalciteNavigation } from './calcite-navigation.js';
export { CalciteNavigationLogo, defineCustomElement as defineCustomElementCalciteNavigationLogo } from './calcite-navigation-logo.js';
export { CalciteNavigationUser, defineCustomElement as defineCustomElementCalciteNavigationUser } from './calcite-navigation-user.js';
export { CalciteNotice, defineCustomElement as defineCustomElementCalciteNotice } from './calcite-notice.js';
export { CalciteOption, defineCustomElement as defineCustomElementCalciteOption } from './calcite-option.js';
export { CalciteOptionGroup, defineCustomElement as defineCustomElementCalciteOptionGroup } from './calcite-option-group.js';
export { CalcitePagination, defineCustomElement as defineCustomElementCalcitePagination } from './calcite-pagination.js';
export { CalcitePanel, defineCustomElement as defineCustomElementCalcitePanel } from './calcite-panel.js';
export { CalcitePickList, defineCustomElement as defineCustomElementCalcitePickList } from './calcite-pick-list.js';
export { CalcitePickListGroup, defineCustomElement as defineCustomElementCalcitePickListGroup } from './calcite-pick-list-group.js';
export { CalcitePickListItem, defineCustomElement as defineCustomElementCalcitePickListItem } from './calcite-pick-list-item.js';
export { CalcitePopover, defineCustomElement as defineCustomElementCalcitePopover } from './calcite-popover.js';
export { CalciteProgress, defineCustomElement as defineCustomElementCalciteProgress } from './calcite-progress.js';
export { CalciteRadioButton, defineCustomElement as defineCustomElementCalciteRadioButton } from './calcite-radio-button.js';
export { CalciteRadioButtonGroup, defineCustomElement as defineCustomElementCalciteRadioButtonGroup } from './calcite-radio-button-group.js';
export { CalciteRating, defineCustomElement as defineCustomElementCalciteRating } from './calcite-rating.js';
export { CalciteScrim, defineCustomElement as defineCustomElementCalciteScrim } from './calcite-scrim.js';
export { CalciteSegmentedControl, defineCustomElement as defineCustomElementCalciteSegmentedControl } from './calcite-segmented-control.js';
export { CalciteSegmentedControlItem, defineCustomElement as defineCustomElementCalciteSegmentedControlItem } from './calcite-segmented-control-item.js';
export { CalciteSelect, defineCustomElement as defineCustomElementCalciteSelect } from './calcite-select.js';
export { CalciteShell, defineCustomElement as defineCustomElementCalciteShell } from './calcite-shell.js';
export { CalciteShellCenterRow, defineCustomElement as defineCustomElementCalciteShellCenterRow } from './calcite-shell-center-row.js';
export { CalciteShellPanel, defineCustomElement as defineCustomElementCalciteShellPanel } from './calcite-shell-panel.js';
export { CalciteSlider, defineCustomElement as defineCustomElementCalciteSlider } from './calcite-slider.js';
export { CalciteSortableList, defineCustomElement as defineCustomElementCalciteSortableList } from './calcite-sortable-list.js';
export { CalciteSplitButton, defineCustomElement as defineCustomElementCalciteSplitButton } from './calcite-split-button.js';
export { CalciteStack, defineCustomElement as defineCustomElementCalciteStack } from './calcite-stack.js';
export { CalciteStepper, defineCustomElement as defineCustomElementCalciteStepper } from './calcite-stepper.js';
export { CalciteStepperItem, defineCustomElement as defineCustomElementCalciteStepperItem } from './calcite-stepper-item.js';
export { CalciteSwitch, defineCustomElement as defineCustomElementCalciteSwitch } from './calcite-switch.js';
export { CalciteTab, defineCustomElement as defineCustomElementCalciteTab } from './calcite-tab.js';
export { CalciteTabNav, defineCustomElement as defineCustomElementCalciteTabNav } from './calcite-tab-nav.js';
export { CalciteTabTitle, defineCustomElement as defineCustomElementCalciteTabTitle } from './calcite-tab-title.js';
export { CalciteTabs, defineCustomElement as defineCustomElementCalciteTabs } from './calcite-tabs.js';
export { CalciteTextArea, defineCustomElement as defineCustomElementCalciteTextArea } from './calcite-text-area.js';
export { CalciteTile, defineCustomElement as defineCustomElementCalciteTile } from './calcite-tile.js';
export { CalciteTileSelect, defineCustomElement as defineCustomElementCalciteTileSelect } from './calcite-tile-select.js';
export { CalciteTileSelectGroup, defineCustomElement as defineCustomElementCalciteTileSelectGroup } from './calcite-tile-select-group.js';
export { CalciteTimePicker, defineCustomElement as defineCustomElementCalciteTimePicker } from './calcite-time-picker.js';
export { CalciteTip, defineCustomElement as defineCustomElementCalciteTip } from './calcite-tip.js';
export { CalciteTipGroup, defineCustomElement as defineCustomElementCalciteTipGroup } from './calcite-tip-group.js';
export { CalciteTipManager, defineCustomElement as defineCustomElementCalciteTipManager } from './calcite-tip-manager.js';
export { CalciteTooltip, defineCustomElement as defineCustomElementCalciteTooltip } from './calcite-tooltip.js';
export { CalciteTree, defineCustomElement as defineCustomElementCalciteTree } from './calcite-tree.js';
export { CalciteTreeItem, defineCustomElement as defineCustomElementCalciteTreeItem } from './calcite-tree-item.js';
export { CalciteValueList, defineCustomElement as defineCustomElementCalciteValueList } from './calcite-value-list.js';
export { CalciteValueListItem, defineCustomElement as defineCustomElementCalciteValueListItem } from './calcite-value-list-item.js';
/**
* Emits when the mode is dynamically toggled between light and dark on <body> or in OS preferences.
*/
function initModeChangeEvent() {
const { classList } = document.body;
const prefersDark = window.matchMedia("(prefers-color-scheme: dark)").matches;
const getMode = () => classList.contains(darkMode) || (classList.contains(autoMode) && prefersDark) ? "dark" : "light";
const emitModeChange = (mode) => document.body.dispatchEvent(new CustomEvent("calciteModeChange", { bubbles: true, detail: { mode } }));
const modeChangeHandler = (newMode) => {
currentMode !== newMode && emitModeChange(newMode);
currentMode = newMode;
};
let currentMode = getMode();
// emits event on page load
emitModeChange(currentMode);
// emits event when changing OS mode preferences
window
.matchMedia("(prefers-color-scheme: dark)")
.addEventListener("change", (event) => modeChangeHandler(event.matches ? "dark" : "light"));
// emits event when toggling between mode classes on <body>
new MutationObserver(() => modeChangeHandler(getMode())).observe(document.body, {
attributes: true,
attributeFilter: ["class"]
});
}
/**
* This file is imported in Stencil's `globalScript` config option.
*
* @see {@link https://stenciljs.com/docs/config#globalscript}
*/
function appGlobalScript () {
const isBrowser = typeof window !== "undefined" &&
typeof location !== "undefined" &&
typeof document !== "undefined" &&
window.location === location &&
window.document === document;
if (isBrowser) {
if (document.readyState === "interactive") {
initModeChangeEvent();
}
else {
document.addEventListener("DOMContentLoaded", () => initModeChangeEvent(), { once: true });
}
}
}
const globalScripts = appGlobalScript;
globalScripts();