@carbon/ibm-products 2.43.1-canary.3 → 2.43.1-canary.4

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.
@@ -1,7 +1,82 @@
1
- export const FormContext: React.Context<null>;
2
- export const FormNumberContext: React.Context<number>;
1
+ /**
2
+ * Copyright IBM Corp. 2022, 2023
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React, { ReactNode, PropsWithChildren } from 'react';
8
+ export declare const FormContext: React.Context<null>;
9
+ export declare const FormNumberContext: React.Context<number>;
10
+ interface EditTearsheetProps extends PropsWithChildren {
11
+ /**
12
+ * The cancel button text
13
+ */
14
+ cancelButtonText?: string;
15
+ /**
16
+ * The main content of the tearsheet
17
+ */
18
+ children?: ReactNode;
19
+ /**
20
+ * An optional class or classes to be added to the outermost element.
21
+ */
22
+ className?: string;
23
+ /**
24
+ * A description of the flow, displayed in the header area of the tearsheet.
25
+ */
26
+ description?: ReactNode;
27
+ /**
28
+ * Used to set the size of the influencer
29
+ */
30
+ influencerWidth?: 'narrow' | 'wide';
31
+ /**
32
+ * A label for the tearsheet, displayed in the header area of the tearsheet
33
+ * to maintain context for the tearsheet (e.g. as the title changes from page
34
+ * to page of a multi-page task).
35
+ */
36
+ label?: ReactNode;
37
+ /**
38
+ * An optional handler that is called when the user closes the tearsheet (by
39
+ * clicking the close button, if enabled, or clicking outside, if enabled).
40
+ * Returning `false` here prevents the modal from closing.
41
+ */
42
+ onClose?: () => boolean | void;
43
+ /**
44
+ * An optional handler that is called when a user changes forms via clicking
45
+ * an influencer nav item.
46
+ * Returns the index of the selected form.
47
+ */
48
+ onFormChange?: (formIndex: number) => number;
49
+ /**
50
+ * Specify a handler for submitting the tearsheet.
51
+ */
52
+ onRequestSubmit: () => void;
53
+ /**
54
+ * Specifies whether the tearsheet is currently open.
55
+ */
56
+ open?: boolean;
57
+ /**
58
+ * Specifies the aria label for the SideNav from Carbon UIShell
59
+ */
60
+ sideNavAriaLabel?: string;
61
+ /**
62
+ * The submit button text
63
+ */
64
+ submitButtonText?: string;
65
+ /**
66
+ * The main title of the tearsheet, displayed in the header area.
67
+ */
68
+ title?: ReactNode;
69
+ /**
70
+ * The position of the top of tearsheet in the viewport. The 'normal'
71
+ * position (the default) is a short distance down from the top of the
72
+ * viewport, leaving room at the top for a global header bar to show through
73
+ * from below. The 'lower' position provides a little extra room at the top
74
+ * to allow an action bar navigation or breadcrumbs to also show through.
75
+ */
76
+ verticalPosition?: 'normal' | 'lower';
77
+ }
3
78
  /**
4
79
  * Use Tearsheet with medium to complex edits. See usage guidance for further information.
5
80
  */
6
- export let EditTearsheet: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
7
- import React from 'react';
81
+ export declare let EditTearsheet: React.ForwardRefExoticComponent<EditTearsheetProps & React.RefAttributes<HTMLDivElement>>;
82
+ export {};
@@ -5,7 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import React__default, { forwardRef, useState, useRef, createContext } from 'react';
10
10
  import PropTypes from '../../node_modules/prop-types/index.js';
11
11
  import cx from 'classnames';
@@ -13,6 +13,7 @@ import { Form, SideNav, SideNavItems, SideNavMenuItem } from '@carbon/react';
13
13
  import { pkg } from '../../settings.js';
14
14
  import { getDevtoolsProps } from '../../global/js/utils/devtools.js';
15
15
  import { TearsheetShell } from '../Tearsheet/TearsheetShell.js';
16
+ import { prepareProps } from '../../global/js/utils/props-helper.js';
16
17
 
17
18
  var _excluded = ["cancelButtonText", "children", "className", "description", "influencerWidth", "label", "onClose", "open", "submitButtonText", "title", "verticalPosition", "onRequestSubmit", "onFormChange", "sideNavAriaLabel"];
18
19
  var componentName = 'EditTearsheet';
@@ -34,6 +35,9 @@ var defaults = {
34
35
  sideNavAriaLabel: 'Side navigation'
35
36
  };
36
37
 
38
+ // Note that the descriptions here should be kept in sync with those for the
39
+ // corresponding props for TearsheetNarrow and TearsheetShell components.
40
+
37
41
  /**
38
42
  * Use Tearsheet with medium to complex edits. See usage guidance for further information.
39
43
  */
@@ -56,6 +60,17 @@ var EditTearsheet = /*#__PURE__*/forwardRef(function (_ref, ref) {
56
60
  _ref$sideNavAriaLabel = _ref.sideNavAriaLabel,
57
61
  sideNavAriaLabel = _ref$sideNavAriaLabel === void 0 ? defaults.sideNavAriaLabel : _ref$sideNavAriaLabel,
58
62
  rest = _objectWithoutProperties(_ref, _excluded);
63
+ var actions = [{
64
+ key: 'edit-action-button-submit',
65
+ label: submitButtonText,
66
+ onClick: onRequestSubmit,
67
+ kind: 'primary'
68
+ }, {
69
+ key: 'edit-action-button-cancel',
70
+ label: cancelButtonText,
71
+ onClick: onClose,
72
+ kind: 'ghost'
73
+ }];
59
74
  var _useState = useState(0),
60
75
  _useState2 = _slicedToArray(_useState, 2),
61
76
  currentForm = _useState2[0],
@@ -64,7 +79,7 @@ var EditTearsheet = /*#__PURE__*/forwardRef(function (_ref, ref) {
64
79
  _useState4 = _slicedToArray(_useState3, 2),
65
80
  formTitles = _useState4[0],
66
81
  setFormTitles = _useState4[1];
67
- var contentRef = useRef();
82
+ var contentRef = useRef(null);
68
83
  var handleCurrentForm = function handleCurrentForm(formIndex) {
69
84
  setCurrentForm(formIndex);
70
85
  if (onFormChange) {
@@ -89,30 +104,22 @@ var EditTearsheet = /*#__PURE__*/forwardRef(function (_ref, ref) {
89
104
  }, title);
90
105
  }))));
91
106
  }
92
- return /*#__PURE__*/React__default.createElement(TearsheetShell, _extends({}, rest, getDevtoolsProps(componentName), {
93
- actions: [{
94
- key: 'edit-action-button-submit',
95
- label: submitButtonText,
96
- onClick: onRequestSubmit,
97
- kind: 'primary'
98
- }, {
99
- key: 'edit-action-button-cancel',
100
- label: cancelButtonText,
101
- onClick: onClose,
102
- kind: 'ghost'
103
- }],
107
+ return /*#__PURE__*/React__default.createElement(TearsheetShell, _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, getDevtoolsProps(componentName)), prepareProps(rest)), {}, {
108
+ actions: actions,
109
+ children: children,
104
110
  className: cx(blockClass, className),
105
111
  description: description,
106
- hasCloseIcon: false,
107
- influencer: defaultInfluencer(),
108
- influencerPosition: "left",
112
+ influencerPosition: 'left',
109
113
  influencerWidth: influencerWidth,
110
114
  label: label,
111
115
  onClose: onClose,
112
116
  open: open,
113
- size: "wide",
117
+ size: 'wide',
114
118
  title: title,
115
- verticalPosition: verticalPosition,
119
+ verticalPosition: verticalPosition
120
+ }, rest), {}, {
121
+ hasCloseIcon: false,
122
+ influencer: defaultInfluencer(),
116
123
  ref: ref
117
124
  }), /*#__PURE__*/React__default.createElement("div", {
118
125
  className: "".concat(blockClass, "__content"),
@@ -1,7 +1,82 @@
1
- export const FormContext: React.Context<null>;
2
- export const FormNumberContext: React.Context<number>;
1
+ /**
2
+ * Copyright IBM Corp. 2022, 2023
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React, { ReactNode, PropsWithChildren } from 'react';
8
+ export declare const FormContext: React.Context<null>;
9
+ export declare const FormNumberContext: React.Context<number>;
10
+ interface EditTearsheetProps extends PropsWithChildren {
11
+ /**
12
+ * The cancel button text
13
+ */
14
+ cancelButtonText?: string;
15
+ /**
16
+ * The main content of the tearsheet
17
+ */
18
+ children?: ReactNode;
19
+ /**
20
+ * An optional class or classes to be added to the outermost element.
21
+ */
22
+ className?: string;
23
+ /**
24
+ * A description of the flow, displayed in the header area of the tearsheet.
25
+ */
26
+ description?: ReactNode;
27
+ /**
28
+ * Used to set the size of the influencer
29
+ */
30
+ influencerWidth?: 'narrow' | 'wide';
31
+ /**
32
+ * A label for the tearsheet, displayed in the header area of the tearsheet
33
+ * to maintain context for the tearsheet (e.g. as the title changes from page
34
+ * to page of a multi-page task).
35
+ */
36
+ label?: ReactNode;
37
+ /**
38
+ * An optional handler that is called when the user closes the tearsheet (by
39
+ * clicking the close button, if enabled, or clicking outside, if enabled).
40
+ * Returning `false` here prevents the modal from closing.
41
+ */
42
+ onClose?: () => boolean | void;
43
+ /**
44
+ * An optional handler that is called when a user changes forms via clicking
45
+ * an influencer nav item.
46
+ * Returns the index of the selected form.
47
+ */
48
+ onFormChange?: (formIndex: number) => number;
49
+ /**
50
+ * Specify a handler for submitting the tearsheet.
51
+ */
52
+ onRequestSubmit: () => void;
53
+ /**
54
+ * Specifies whether the tearsheet is currently open.
55
+ */
56
+ open?: boolean;
57
+ /**
58
+ * Specifies the aria label for the SideNav from Carbon UIShell
59
+ */
60
+ sideNavAriaLabel?: string;
61
+ /**
62
+ * The submit button text
63
+ */
64
+ submitButtonText?: string;
65
+ /**
66
+ * The main title of the tearsheet, displayed in the header area.
67
+ */
68
+ title?: ReactNode;
69
+ /**
70
+ * The position of the top of tearsheet in the viewport. The 'normal'
71
+ * position (the default) is a short distance down from the top of the
72
+ * viewport, leaving room at the top for a global header bar to show through
73
+ * from below. The 'lower' position provides a little extra room at the top
74
+ * to allow an action bar navigation or breadcrumbs to also show through.
75
+ */
76
+ verticalPosition?: 'normal' | 'lower';
77
+ }
3
78
  /**
4
79
  * Use Tearsheet with medium to complex edits. See usage guidance for further information.
5
80
  */
6
- export let EditTearsheet: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
7
- import React from 'react';
81
+ export declare let EditTearsheet: React.ForwardRefExoticComponent<EditTearsheetProps & React.RefAttributes<HTMLDivElement>>;
82
+ export {};
@@ -17,6 +17,7 @@ var react = require('@carbon/react');
17
17
  var settings = require('../../settings.js');
18
18
  var devtools = require('../../global/js/utils/devtools.js');
19
19
  var TearsheetShell = require('../Tearsheet/TearsheetShell.js');
20
+ var propsHelper = require('../../global/js/utils/props-helper.js');
20
21
 
21
22
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
22
23
 
@@ -43,6 +44,9 @@ var defaults = {
43
44
  sideNavAriaLabel: 'Side navigation'
44
45
  };
45
46
 
47
+ // Note that the descriptions here should be kept in sync with those for the
48
+ // corresponding props for TearsheetNarrow and TearsheetShell components.
49
+
46
50
  /**
47
51
  * Use Tearsheet with medium to complex edits. See usage guidance for further information.
48
52
  */
@@ -65,6 +69,17 @@ exports.EditTearsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
65
69
  _ref$sideNavAriaLabel = _ref.sideNavAriaLabel,
66
70
  sideNavAriaLabel = _ref$sideNavAriaLabel === void 0 ? defaults.sideNavAriaLabel : _ref$sideNavAriaLabel,
67
71
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
72
+ var actions = [{
73
+ key: 'edit-action-button-submit',
74
+ label: submitButtonText,
75
+ onClick: onRequestSubmit,
76
+ kind: 'primary'
77
+ }, {
78
+ key: 'edit-action-button-cancel',
79
+ label: cancelButtonText,
80
+ onClick: onClose,
81
+ kind: 'ghost'
82
+ }];
68
83
  var _useState = React.useState(0),
69
84
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
70
85
  currentForm = _useState2[0],
@@ -73,7 +88,7 @@ exports.EditTearsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
73
88
  _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
74
89
  formTitles = _useState4[0],
75
90
  setFormTitles = _useState4[1];
76
- var contentRef = React.useRef();
91
+ var contentRef = React.useRef(null);
77
92
  var handleCurrentForm = function handleCurrentForm(formIndex) {
78
93
  setCurrentForm(formIndex);
79
94
  if (onFormChange) {
@@ -98,30 +113,22 @@ exports.EditTearsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
98
113
  }, title);
99
114
  }))));
100
115
  }
101
- return /*#__PURE__*/React__default["default"].createElement(TearsheetShell.TearsheetShell, _rollupPluginBabelHelpers["extends"]({}, rest, devtools.getDevtoolsProps(componentName), {
102
- actions: [{
103
- key: 'edit-action-button-submit',
104
- label: submitButtonText,
105
- onClick: onRequestSubmit,
106
- kind: 'primary'
107
- }, {
108
- key: 'edit-action-button-cancel',
109
- label: cancelButtonText,
110
- onClick: onClose,
111
- kind: 'ghost'
112
- }],
116
+ return /*#__PURE__*/React__default["default"].createElement(TearsheetShell.TearsheetShell, _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, devtools.getDevtoolsProps(componentName)), propsHelper.prepareProps(rest)), {}, {
117
+ actions: actions,
118
+ children: children,
113
119
  className: cx__default["default"](blockClass, className),
114
120
  description: description,
115
- hasCloseIcon: false,
116
- influencer: defaultInfluencer(),
117
- influencerPosition: "left",
121
+ influencerPosition: 'left',
118
122
  influencerWidth: influencerWidth,
119
123
  label: label,
120
124
  onClose: onClose,
121
125
  open: open,
122
- size: "wide",
126
+ size: 'wide',
123
127
  title: title,
124
- verticalPosition: verticalPosition,
128
+ verticalPosition: verticalPosition
129
+ }, rest), {}, {
130
+ hasCloseIcon: false,
131
+ influencer: defaultInfluencer(),
125
132
  ref: ref
126
133
  }), /*#__PURE__*/React__default["default"].createElement("div", {
127
134
  className: "".concat(blockClass, "__content"),
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/ibm-products",
3
3
  "description": "Carbon for IBM Products",
4
- "version": "2.43.1-canary.3+8929392ba",
4
+ "version": "2.43.1-canary.4+3b3c48743",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -121,5 +121,5 @@
121
121
  "react": "^16.8.6 || ^17.0.1 || ^18.2.0",
122
122
  "react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
123
123
  },
124
- "gitHead": "8929392ba3157e6621cadf2add03b78913a55318"
124
+ "gitHead": "3b3c4874302df3cb3d4498e61d93a63e72e65166"
125
125
  }