@arcgis/map-components
Version:
ArcGIS Map Components
156 lines (154 loc) • 6.91 kB
TypeScript
/// <reference types="@arcgis/core/interfaces.d.ts" />
/// <reference types="../../index.d.ts" />
import { ArcgisReferenceElement } from '../../utils/component-utils';
import { Use } from '@arcgis/lumina/controllers';
import { default as LinkChartLayoutSwitcherViewModel } from '@arcgis/core/widgets/LinkChartLayoutSwitcher/LinkChartLayoutSwitcherViewModel.js';
import { JsxNode, PublicLitElement as LitElement, TargetedEvent } from '@arcgis/lumina';
declare enum DiagramLayoutValues {
FORCE_DIRECTED = "organic-standard",
COMMUNITY = "organic-community",
SIMPLE = "basic-grid",
HIERARCHICAL = "hierarchical-bottom-to-top",
RADIAL_TREE = "radial-root-centric",
SMART_TREE = "tree-left-to-right",
GEOGRAPHIC = "geographic-organic-standard",
CHRONOLOGICAL_SINGLE = "chronological-mono-timeline",
CHRONOLOGICAL_MULTIPLE = "chronological-multi-timeline"
}
type DiagramLayoutType = `${DiagramLayoutValues}`;
declare const useLinkChartLayoutSwitcherViewModel: (component: LitElement & Pick<LinkChartLayoutSwitcherViewModel, never> & import('../../controllers/useViewModel').ViewModelControllerUses<LinkChartLayoutSwitcherViewModel>) => LinkChartLayoutSwitcherViewModel;
/**
* A component for use in link charts that allows users to switch between different layouts. See [documentation on layouts](https://enterprise.arcgis.com/en/knowledge/latest/knowledge-studio/change-the-layout-applied-to-a-link-chart.htm) for more details.
*
*
* Note: Sign in to access the data in this demo, U/P: `viewer01`/`I68VGU^nMurF`
*
* [Read more...](https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-link-chart-layout-switcher/)
*/
export declare class ArcgisLinkChartLayoutSwitcher extends LitElement {
/**
* The appearance of the layout switcher. `dropdown` displays a button that is clicked to reveal a dropdown menu, while `menu-bar` displays a menu bar.
*
* @since 4.33
* @default "dropdown"
*/
appearance: "dropdown" | "menu-bar";
/**
* If true, the component will not be destroyed automatically when it is
* disconnected from the document. This is useful when you want to move the
* component to a different place on the page, or temporarily hide it. If this
* is set, make sure to call the [destroy](https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-link-chart-layout-switcher/#destroy) method when you are done to
* prevent memory leaks.
*
* @default false
*/
autoDestroyDisabled: boolean;
/**
* When `true`, the layout menu will not close when a layout is selected. Only applicable when `appearance` is `dropdown`.
*
* @since 4.33
* @default false
*/
closeOnSelectDisabled: boolean;
/**
* Icon displayed in the component's button, when `appearance` is `dropdown`.
*
* @see [Calcite Icon Search](https://developers.arcgis.com/calcite-design-system/icons/)
* @default "nodes-link"
*/
icon?: string;
/** The component's default label. */
label?: string;
/**
* The current selected link chart layout.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LinkChartLayoutSwitcher-LinkChartLayoutSwitcherViewModel.html#layout)
*
* @default "organic-standard"
*/
readonly layout: DiagramLayoutType;
/**
* Replace localized message strings with your own strings.
*
* _**Note**: Individual message keys may change between releases._
*/
messageOverrides?: typeof this.messages._overrides;
/** @default "top-left" */
position: __esri.UIPosition;
/**
* Prevents extent from updating on changes to the layout.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LinkChartLayoutSwitcher-LinkChartLayoutSwitcherViewModel.html#preventExtentUpdate)
*
* @default false
*/
preventExtentUpdate: boolean;
/**
* By assigning the `id` attribute of the Map or Scene component to this property, you can position a child component anywhere in the DOM while still maintaining a connection to the Map or Scene.
*
* See also:
* - [Associate components with a Map or Scene component](https://developers.arcgis.com/javascript/latest/programming-patterns/#associate-components-with-a-map-or-scene-component)
*/
referenceElement?: ArcgisReferenceElement | string;
/**
* The current state of the component.
*
* @default "loading"
*/
readonly state: "ready" | "loading" | "disabled";
/** Permanently destroy the component. */
destroy(): Promise<void>;
/** Switches the layout of the link chart to the value provided. */
switchLayout(newLayout: "basic-grid" | "chronological-mono-timeline" | "chronological-multi-timeline" | "geographic-organic-standard" | "hierarchical-bottom-to-top" | "organic-community" | "organic-standard" | "radial-root-centric" | "tree-left-to-right"): Promise<void>;
/**
* Fires when component has completed the layout switch
*
* @example
* ```js
* layoutswitcher.addEventListener("arcgisSwitchLayout", (event) => {
* console.log("Layout Switched");
* });
* ```
*/
readonly arcgisSwitchLayout: TargetedEvent<this, __esri.LinkChartLayoutSwitcherViewModelSwitchLayoutEvent>;
/** Emitted when the value of a property is changed. Use this to listen to changes to properties. */
readonly arcgisPropertyChange: TargetedEvent<this, {
name: "state";
}>;
/** Emitted when the component associated with a map or scene view is is ready to be interacted with. */
readonly arcgisReady: TargetedEvent<this, void>;
private messages: Partial<{
layoutOptions: string;
forceDirected: string;
community: string;
simple: string;
hierarchical: string;
radialTree: string;
smartTree: string;
geographic: string;
chronologicalSingle: string;
chronologicalMultiple: string;
basicLayoutCategory: string;
organicLayoutCategory: string;
treeLayoutCategory: string;
hierarchicalLayoutCategory: string;
chronologicalLayoutCategory: string;
}> & import('@arcgis/lumina/controllers').T9nMeta<{
layoutOptions: string;
forceDirected: string;
community: string;
simple: string;
hierarchical: string;
radialTree: string;
smartTree: string;
geographic: string;
chronologicalSingle: string;
chronologicalMultiple: string;
basicLayoutCategory: string;
organicLayoutCategory: string;
treeLayoutCategory: string;
hierarchicalLayoutCategory: string;
chronologicalLayoutCategory: string;
}>;
}
export {};