@equinor/echo-components 0.5.4 → 0.5.6

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.
Files changed (71) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +62 -62
  3. package/dist/components/buttonWithPopover/ButtonWithPopover.d.ts +21 -0
  4. package/dist/components/contextMenu/ContextMenu.d.ts +35 -0
  5. package/dist/components/contextMenuPopover/DataInfoButton.d.ts +19 -0
  6. package/dist/components/contextMenuPopover/DataInfoPopover.d.ts +18 -0
  7. package/dist/components/datePicker/PopupHeader.d.ts +19 -0
  8. package/dist/components/datePicker/ReactDatePicker.d.ts +19 -0
  9. package/dist/components/dialogGenerator/DialogGenerator.d.ts +26 -0
  10. package/dist/components/dropdown/Dropdown.d.ts +37 -0
  11. package/dist/components/echoBottomBar/EchoBottomBar.d.ts +7 -0
  12. package/dist/components/echoCard/Body.d.ts +7 -0
  13. package/dist/components/echoCard/DateSection.d.ts +8 -0
  14. package/dist/components/echoCard/EchoCard.d.ts +7 -0
  15. package/dist/components/echoCard/LinkSection.d.ts +8 -0
  16. package/dist/components/echoCard/Title.d.ts +13 -0
  17. package/dist/components/echoCard/index.d.ts +14 -0
  18. package/dist/components/echoHeader/EchoHeader.d.ts +20 -0
  19. package/dist/components/index.d.ts +15 -0
  20. package/dist/components/inlineTagIconLink/InlineTagIconLink.d.ts +12 -0
  21. package/dist/components/listItem/ListItem.d.ts +50 -0
  22. package/dist/components/listItem/index.d.ts +1 -0
  23. package/dist/components/listRow/ListRow.d.ts +29 -0
  24. package/dist/components/sidesheet/enums.d.ts +5 -0
  25. package/dist/components/sidesheet/index.d.ts +11 -0
  26. package/dist/components/sidesheet/sheet/Sheet.d.ts +19 -0
  27. package/dist/components/sidesheet/sheet/index.d.ts +1 -0
  28. package/dist/components/sidesheet/sheet/utils.d.ts +2 -0
  29. package/dist/components/sidesheet/sheetTopArea/SheetTopArea.d.ts +16 -0
  30. package/dist/components/sidesheet/sheetTopArea/index.d.ts +1 -0
  31. package/dist/components/tagContextMenu/TagContextMenu.d.ts +30 -0
  32. package/dist/components/timePicker/TimePicker.d.ts +12 -0
  33. package/dist/elements/draggableItemsWrapper/DraggableItemsWrapper.d.ts +18 -0
  34. package/dist/elements/icon/Icon.d.ts +20 -0
  35. package/dist/elements/index.d.ts +8 -0
  36. package/dist/elements/radioButtonGroup/RadioButtonGroup.d.ts +20 -0
  37. package/dist/elements/roundIconButton/RoundIconButton.d.ts +13 -0
  38. package/dist/elements/sliderField/SliderField.d.ts +25 -0
  39. package/dist/elements/tagIcon/TagIcon.d.ts +16 -0
  40. package/dist/elements/tagIcon/TagIconShadow.d.ts +13 -0
  41. package/dist/elements/textIconButton/TextIconButton.d.ts +19 -0
  42. package/dist/helpers/classnames.d.ts +5 -0
  43. package/dist/helpers/getIcon.d.ts +2 -0
  44. package/dist/helpers/index.d.ts +3 -0
  45. package/dist/helpers/tagCategoryIcon.d.ts +38 -0
  46. package/dist/icons/echoAssets/data.d.ts +3 -0
  47. package/dist/icons/echoAssets/external.d.ts +3 -0
  48. package/dist/icons/echoAssets/index.d.ts +5 -0
  49. package/dist/icons/index.d.ts +1 -0
  50. package/dist/index.d.ts +8 -0
  51. package/dist/index.js +20464 -0
  52. package/dist/index.js.map +1 -0
  53. package/dist/setupTests.d.ts +1 -0
  54. package/dist/structure/iconList/IconList.d.ts +32 -0
  55. package/dist/structure/iconList/createListRow.d.ts +14 -0
  56. package/dist/structure/index.d.ts +3 -0
  57. package/dist/structure/linkCard/LinkCard.d.ts +26 -0
  58. package/dist/structure/optionsList/OptionsList.d.ts +24 -0
  59. package/dist/theme/index.d.ts +1 -0
  60. package/dist/theme/themeConst.d.ts +65 -0
  61. package/dist/types/actionButton.d.ts +6 -0
  62. package/dist/types/dataInformation.d.ts +8 -0
  63. package/dist/types/draggableItem.d.ts +5 -0
  64. package/dist/types/expandableRowProps.d.ts +6 -0
  65. package/dist/types/iconItem.d.ts +4 -0
  66. package/dist/types/iconListItem.d.ts +6 -0
  67. package/dist/types/index.d.ts +9 -0
  68. package/dist/types/linkCardItem.d.ts +5 -0
  69. package/dist/types/optionsItem.d.ts +6 -0
  70. package/dist/types/radioButtonItem.d.ts +4 -0
  71. package/package.json +121 -120
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ interface TagContextMenuProps {
3
+ expanded: boolean;
4
+ setExpanded: (expanded: boolean) => void;
5
+ tagNo: string;
6
+ description: string;
7
+ openTagInformation: () => void;
8
+ selected: boolean;
9
+ selectedClassName?: string;
10
+ children: React.ReactNode;
11
+ }
12
+ /**
13
+ * Component that renders a tag context menu that can be expanded and closed upon click
14
+ * The condensed variant will only display the the relevant tag icon
15
+ * The expanded variant will display relevant tag icon, tag number and tag description
16
+ *
17
+ * @param {TagContextMenuProps} {
18
+ * expanded: flag that state if the context menu should be expanded or not
19
+ * setExpanded: method to update the expanded flag
20
+ * tagNo: the tag no to display
21
+ * description: the tag description
22
+ * openTagInformation: method called when expanded context menu is called
23
+ * selected: Flag to handle if there are multiple context menu's on a page, and a selected style should be applied
24
+ * selectedClassName: styling used to handle multiple tag visible on the page at the same time, class will be added to tagIcon when context menu is not expanded
25
+ * children: Meant to be used to pass TagIcon component to this component
26
+ * }
27
+ * @return {*} {JSX.Element} a tag context menu for the provided properties
28
+ */
29
+ export declare const TagContextMenu: React.FC<TagContextMenuProps>;
30
+ export default TagContextMenu;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ export interface TimePickerProps {
3
+ id: string;
4
+ value?: string;
5
+ label: string;
6
+ onValueChanged?: (time: string) => void;
7
+ className?: string;
8
+ readOnly?: boolean;
9
+ timeRange?: string[];
10
+ }
11
+ export declare const TimePicker: React.FC<TimePickerProps>;
12
+ export default TimePicker;
@@ -0,0 +1,18 @@
1
+ import React, { CSSProperties } from 'react';
2
+ import { DraggableItem } from '../../types/draggableItem';
3
+ export interface DraggableItemsWrapperProps {
4
+ style?: CSSProperties;
5
+ onChange: (newDragItems: DraggableItem[], oldIndex: number | undefined, newIndex: number | undefined) => void;
6
+ children: React.ReactNode[];
7
+ }
8
+ /**
9
+ * Component that renders a wrapper for items that are draggable
10
+ *
11
+ * @param {DraggableItemsWrapperProps} {
12
+ * style: style element to override wrapper style
13
+ * onChange: method that will be called when elements have be reordered inside the wrapper
14
+ * children: list of elements that can be reordered
15
+ * }
16
+ * @return {*} {JSX.Element}
17
+ */
18
+ export declare const DraggableItemsWrapper: React.FC<DraggableItemsWrapperProps>;
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ export interface IconProps {
3
+ name: string;
4
+ color: string;
5
+ title?: string;
6
+ className?: string;
7
+ size?: 16 | 24 | 32 | 40 | 48;
8
+ }
9
+ /**
10
+ * Component that work's as a eds icon wrapper, it imports all eds possible icons
11
+ *
12
+ * @param {IconProps} {
13
+ * name: The name of the icon to be displayed
14
+ * title: The html title to use
15
+ * color:The color to icon should have
16
+ * size: The wanted size of the icon. Possible values are 16, 24, 32, 40 and 48
17
+ * }
18
+ * @return {*} {JSX.Element} A icon for the provided information
19
+ */
20
+ export declare const Icon: React.FC<IconProps>;
@@ -0,0 +1,8 @@
1
+ export * from './draggableItemsWrapper/DraggableItemsWrapper';
2
+ export { Icon } from './icon/Icon';
3
+ export { RadioButtonGroup } from './radioButtonGroup/RadioButtonGroup';
4
+ export * from './roundIconButton/RoundIconButton';
5
+ export { SliderField } from './sliderField/SliderField';
6
+ export { TagIcon } from './tagIcon/TagIcon';
7
+ export { TagIconShadowWrapper } from './tagIcon/TagIconShadow';
8
+ export * from './textIconButton/TextIconButton';
@@ -0,0 +1,20 @@
1
+ import React, { CSSProperties } from 'react';
2
+ import { RadioButtonItem } from '../../types/radioButtonItem';
3
+ export interface RadioButtonGroupProps {
4
+ title: string;
5
+ options: RadioButtonItem[];
6
+ style?: CSSProperties;
7
+ onSelected: (index: number) => void;
8
+ }
9
+ /**
10
+ * Component that renders a Radio Button Group with a set of options to choose from
11
+ *
12
+ * @param {RadioButtonGroupProps} {
13
+ * title: The title of the radio button group,
14
+ * options: List of items to be displayed as options,
15
+ * style: Style element to override wrapper style,
16
+ * onSelected: Method to be called when the selected value is changed
17
+ * }
18
+ * @return {*} {JSX.Element}
19
+ */
20
+ export declare const RadioButtonGroup: React.FC<RadioButtonGroupProps>;
@@ -0,0 +1,13 @@
1
+ import React, { EventHandler, ReactElement, SyntheticEvent } from 'react';
2
+ export declare enum RoundIconButtonVariants {
3
+ OpenCloseButton = "openCloseButton",
4
+ ToggleButton = "toggleButton"
5
+ }
6
+ export interface RoundIconButtonProps {
7
+ label: string;
8
+ active?: boolean;
9
+ variant?: RoundIconButtonVariants;
10
+ children?: ReactElement;
11
+ onClick?: EventHandler<SyntheticEvent>;
12
+ }
13
+ export declare const RoundIconButton: React.FC<RoundIconButtonProps>;
@@ -0,0 +1,25 @@
1
+ import React, { CSSProperties } from 'react';
2
+ export interface SliderFieldProps {
3
+ value: number;
4
+ min: number;
5
+ max: number;
6
+ labels?: string[];
7
+ title: string;
8
+ onChange: (value: number) => void;
9
+ style?: CSSProperties;
10
+ }
11
+ /**
12
+ * Component that renders a slider with numeric or custom values
13
+ *
14
+ * @param {SliderFieldProps} {
15
+ * value: Current value of the slider,
16
+ * min: Minimum value of the slider,
17
+ * max: Maximum value of the slider,
18
+ * labels: List of labels to use if the slider should not display numeric values,
19
+ * title: Text shown as title of the slider,
20
+ * onChange: Method that will be called if the slider value is changed,
21
+ * style: style element to override wrapper style
22
+ * }
23
+ * @return {*} {JSX.Element}
24
+ */
25
+ export declare const SliderField: React.FC<SliderFieldProps>;
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ interface TagIconProps {
3
+ icon: JSX.Element;
4
+ legendColor: string;
5
+ }
6
+ /**
7
+ * Component that will wrap the provided icon with a background color (usually the legend color)
8
+ *
9
+ * @param {TagIconProps} {
10
+ * icon: Icon to be wrapped
11
+ * legendColor: background color to apply. Need to be valid css color
12
+ * }
13
+ * @return {*} {JSX.Element} Wrapped icon with provided color
14
+ */
15
+ export declare const TagIcon: React.FC<TagIconProps>;
16
+ export default TagIcon;
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ interface TagIconShadowWrapperProps {
3
+ children: React.ReactNode;
4
+ }
5
+ /**
6
+ * Component that will wrap the provided child element in a shadow.
7
+ * Should be used to add shadow to the tagIcon component
8
+ *
9
+ * @param {TagIconShadowWrapperProps} { children } Child element to wrap
10
+ * @return {*} {JSX.Element} wrapped child element in a shadow
11
+ */
12
+ export declare const TagIconShadowWrapper: React.FC<TagIconShadowWrapperProps>;
13
+ export default TagIconShadowWrapper;
@@ -0,0 +1,19 @@
1
+ import React, { CSSProperties } from 'react';
2
+ export interface TextIconButtonProps {
3
+ icon: string | React.FC;
4
+ title: string;
5
+ onClick: () => void;
6
+ style?: CSSProperties;
7
+ }
8
+ /**
9
+ * Component that renders a button with the icon and the text provided
10
+ *
11
+ * @param {TextIconButtonProps} {
12
+ * icon: the name of the icon to display
13
+ * title: the title text that the button should display
14
+ * onClick: the function that will be called when user clicks the button
15
+ * style: Optional parameter that will override the button style
16
+ * }
17
+ * @return {*} {JSX.Element} A button with the provided icon and text
18
+ */
19
+ export declare const TextIconButton: React.FC<TextIconButtonProps>;
@@ -0,0 +1,5 @@
1
+ declare type ClassNameDynamic = {
2
+ [key: string]: boolean;
3
+ };
4
+ export declare function classnames(...parts: (string | ClassNameDynamic | undefined | boolean)[]): string | undefined;
5
+ export {};
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare function getIcon(tagCategoryDescription: string): JSX.Element;
@@ -0,0 +1,3 @@
1
+ export * from './classnames';
2
+ export * from './getIcon';
3
+ export * from './tagCategoryIcon';
@@ -0,0 +1,38 @@
1
+ import React from 'react';
2
+ interface ViewTagIconProps {
3
+ tagCategoryDescription: string;
4
+ }
5
+ export declare enum TagCategoryType {
6
+ Electrical = "electrical",
7
+ MainEquipment = "main equipment",
8
+ Line = "line",
9
+ ManualValve = "manual valve",
10
+ CircuitAndStarter = "circuit",
11
+ Instrument = "instrument",
12
+ Cable = "cable",
13
+ Function = "function",
14
+ Signal = "signal",
15
+ Telecom = "telecom",
16
+ JunctionBox = "junction box",
17
+ Administrative = "administrative"
18
+ }
19
+ /**
20
+ * Method that returns the relevant Icon for the tagCategoryDescription provided
21
+ * Tag icon is the default JSX.Element Icon returned
22
+ * @export
23
+ * @param {('electrical'
24
+ * | 'main equipment'
25
+ * | 'line'
26
+ * | 'manual valve'
27
+ * | 'circuit/starter'
28
+ * | 'instrument'
29
+ * | 'cable'
30
+ * | 'function'
31
+ * | 'signal'
32
+ * | 'telecom'
33
+ * | 'junction box'
34
+ * | 'administrative'
35
+ * @return {*} {JSX.Element} Relevant icon for the provided tagCategoryDescription
36
+ */
37
+ export declare const TagCategoryIcon: React.FC<ViewTagIconProps>;
38
+ export default TagCategoryIcon;
@@ -0,0 +1,3 @@
1
+ import { IconData } from '@equinor/eds-icons';
2
+ export declare const sap_notifications: IconData;
3
+ export declare const sap_workorders: IconData;
@@ -0,0 +1,3 @@
1
+ import { IconData } from '@equinor/eds-icons';
2
+ export declare const timp: IconData;
3
+ export declare const timp_text: IconData;
@@ -0,0 +1,5 @@
1
+ import { IconData } from '@equinor/eds-icons';
2
+ export declare const sheet_left: IconData;
3
+ export declare const sheet_bottom: IconData;
4
+ export * from './data';
5
+ export * from './external';
@@ -0,0 +1 @@
1
+ export * from './echoAssets';
@@ -0,0 +1,8 @@
1
+ import './theme/theme.css';
2
+ export * from './components';
3
+ export * from './elements';
4
+ export * from './helpers';
5
+ export * from './icons';
6
+ export * from './structure';
7
+ export { themeConst } from './theme/themeConst';
8
+ export * from './types';