@carbon/ibm-products-web-components 0.17.0-rc.0 → 0.18.0-rc.0

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 (78) hide show
  1. package/custom-elements.json +218 -10
  2. package/es/components/about-modal/about-modal.scss.js +1 -1
  3. package/es/components/options-tile/options-tile.d.ts +6 -6
  4. package/es/components/options-tile/options-tile.js +25 -25
  5. package/es/components/options-tile/options-tile.js.map +1 -1
  6. package/es/components/options-tile/options-tile.scss.js +1 -1
  7. package/es/components/options-tile/options-tile.test.js +4 -4
  8. package/es/components/options-tile/options-tile.test.js.map +1 -1
  9. package/es/components/side-panel/side-panel.scss.js +1 -1
  10. package/es/components/tearsheet/tearsheet.d.ts +3 -0
  11. package/es/components/tearsheet/tearsheet.js +39 -1
  12. package/es/components/tearsheet/tearsheet.js.map +1 -1
  13. package/es/components/tearsheet/tearsheet.scss.js +1 -1
  14. package/es/components/tearsheet/tearsheet.test.js +27 -1
  15. package/es/components/tearsheet/tearsheet.test.js.map +1 -1
  16. package/es/components/tearsheet/utils.d.ts +3 -0
  17. package/es/components/tearsheet/utils.js +40 -1
  18. package/es/components/tearsheet/utils.js.map +1 -1
  19. package/es/components/truncated-text/index.d.ts +9 -0
  20. package/es/components/truncated-text/index.js +9 -0
  21. package/es/components/truncated-text/index.js.map +1 -0
  22. package/es/components/truncated-text/truncated-text.d.ts +73 -0
  23. package/es/components/truncated-text/truncated-text.js +232 -0
  24. package/es/components/truncated-text/truncated-text.js.map +1 -0
  25. package/es/components/truncated-text/truncated-text.scss.js +13 -0
  26. package/es/components/truncated-text/truncated-text.scss.js.map +1 -0
  27. package/es/components/truncated-text/truncated-text.test.d.ts +7 -0
  28. package/es/components/truncated-text/truncated-text.test.js +77 -0
  29. package/es/components/truncated-text/truncated-text.test.js.map +1 -0
  30. package/es/index.d.ts +1 -0
  31. package/es/index.js +1 -0
  32. package/es/index.js.map +1 -1
  33. package/es/package.json.js +1 -1
  34. package/es-custom/components/about-modal/about-modal.scss.js +1 -1
  35. package/es-custom/components/options-tile/options-tile.d.ts +6 -6
  36. package/es-custom/components/options-tile/options-tile.js +25 -25
  37. package/es-custom/components/options-tile/options-tile.js.map +1 -1
  38. package/es-custom/components/options-tile/options-tile.scss.js +1 -1
  39. package/es-custom/components/options-tile/options-tile.test.js +4 -4
  40. package/es-custom/components/options-tile/options-tile.test.js.map +1 -1
  41. package/es-custom/components/side-panel/side-panel.scss.js +1 -1
  42. package/es-custom/components/tearsheet/tearsheet.d.ts +3 -0
  43. package/es-custom/components/tearsheet/tearsheet.js +39 -1
  44. package/es-custom/components/tearsheet/tearsheet.js.map +1 -1
  45. package/es-custom/components/tearsheet/tearsheet.scss.js +1 -1
  46. package/es-custom/components/tearsheet/tearsheet.test.js +27 -1
  47. package/es-custom/components/tearsheet/tearsheet.test.js.map +1 -1
  48. package/es-custom/components/tearsheet/utils.d.ts +3 -0
  49. package/es-custom/components/tearsheet/utils.js +40 -1
  50. package/es-custom/components/tearsheet/utils.js.map +1 -1
  51. package/es-custom/components/truncated-text/index.d.ts +9 -0
  52. package/es-custom/components/truncated-text/index.js +9 -0
  53. package/es-custom/components/truncated-text/index.js.map +1 -0
  54. package/es-custom/components/truncated-text/truncated-text.d.ts +73 -0
  55. package/es-custom/components/truncated-text/truncated-text.js +232 -0
  56. package/es-custom/components/truncated-text/truncated-text.js.map +1 -0
  57. package/es-custom/components/truncated-text/truncated-text.scss.js +13 -0
  58. package/es-custom/components/truncated-text/truncated-text.scss.js.map +1 -0
  59. package/es-custom/components/truncated-text/truncated-text.test.d.ts +7 -0
  60. package/es-custom/components/truncated-text/truncated-text.test.js +77 -0
  61. package/es-custom/components/truncated-text/truncated-text.test.js.map +1 -0
  62. package/es-custom/index.d.ts +1 -0
  63. package/es-custom/index.js +1 -0
  64. package/es-custom/index.js.map +1 -1
  65. package/es-custom/package.json.js +1 -1
  66. package/lib/components/options-tile/options-tile.d.ts +6 -6
  67. package/lib/components/tearsheet/tearsheet.d.ts +3 -0
  68. package/lib/components/tearsheet/utils.d.ts +3 -0
  69. package/lib/components/truncated-text/index.d.ts +9 -0
  70. package/lib/components/truncated-text/truncated-text.d.ts +73 -0
  71. package/lib/components/truncated-text/truncated-text.test.d.ts +7 -0
  72. package/lib/index.d.ts +1 -0
  73. package/package.json +9 -9
  74. package/scss/components/api-key-modal/story-styles.scss +10 -0
  75. package/scss/components/options-tile/options-tile.scss +31 -5
  76. package/scss/components/tearsheet/tearsheet.scss +22 -6
  77. package/scss/components/truncated-text/story-styles.scss +13 -0
  78. package/scss/components/truncated-text/truncated-text.scss +122 -0
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Copyright IBM Corp. 2024
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
+
8
+ import { describe, it, expect } from 'vitest';
9
+ import { fixture, html } from '@open-wc/testing';
10
+ import { prefix, carbonPrefix } from '../../globals/settings.js';
11
+ import './truncated-text.js';
12
+
13
+ /**
14
+ * Copyright IBM Corp. 2025, 2025
15
+ *
16
+ * This source code is licensed under the Apache-2.0 license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
+ */
19
+ const defaultProps = {
20
+ lines: 2,
21
+ text: 'Buttons are used to initialize an action, either in the background or foreground of an experience. There are several kinds of buttons. Primary buttons should be used for the principle call to action on the page.',
22
+ with: '',
23
+ };
24
+ const template = (props = defaultProps, templateWidth) => html `
25
+ <div style=${templateWidth ? `width: ${templateWidth}px;` : ''}>
26
+ <c4p-truncated-text
27
+ value=${props.text}
28
+ lines=${props.lines}
29
+ with=${props.with}
30
+ ></c4p-truncated-text>
31
+ </div>
32
+ `;
33
+ describe('c4p-truncated-text', () => {
34
+ it('renders the component', async () => {
35
+ const wrapper = await fixture(template());
36
+ const el = wrapper.querySelector(`${prefix}-truncated-text`);
37
+ expect(el).toBeTruthy();
38
+ });
39
+ it('renders a tooltip when text is truncated with tooltip', async () => {
40
+ var _a;
41
+ const wrapper = await fixture(template(Object.assign(Object.assign({}, defaultProps), { with: 'tooltip' }), 200));
42
+ const el = wrapper.querySelector(`${prefix}-truncated-text`);
43
+ const tooltip = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(`${carbonPrefix}-tooltip`);
44
+ expect(tooltip).toBeTruthy();
45
+ });
46
+ it('does not render a tooltip if the text fits', async () => {
47
+ var _a;
48
+ const wrapper = await fixture(template(Object.assign(Object.assign({}, defaultProps), { with: 'tooltip' }), 9000));
49
+ const el = wrapper.querySelector(`${prefix}-truncated-text`);
50
+ const tooltip = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(`${carbonPrefix}-tooltip`);
51
+ expect(tooltip).not.toBeTruthy();
52
+ });
53
+ it('tests lines prop/attribute with tooltip', async () => {
54
+ var _a;
55
+ for (let lines = 1; lines <= 4; lines++) {
56
+ const wrapper = await fixture(template(Object.assign(Object.assign({}, defaultProps), { lines, with: 'tooltip' }), 600));
57
+ const el = wrapper.querySelector(`${prefix}-truncated-text`);
58
+ await el.updateComplete;
59
+ const tooltip = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(`${carbonPrefix}-tooltip`);
60
+ if (lines <= 2) {
61
+ expect(tooltip).toBeTruthy();
62
+ }
63
+ else {
64
+ expect(tooltip).not.toBeTruthy();
65
+ }
66
+ }
67
+ });
68
+ it('renders a expandable button when text is truncated with expand', async () => {
69
+ var _a;
70
+ const wrapper = await fixture(template(Object.assign(Object.assign({}, defaultProps), { lines: 2, with: 'expand' }), 400));
71
+ const el = wrapper.querySelector(`${prefix}-truncated-text`);
72
+ await el.updateComplete;
73
+ const expandButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(`.${prefix}--truncated-text_button-expand`);
74
+ expect(expandButton).toBeTruthy();
75
+ });
76
+ });
77
+ //# sourceMappingURL=truncated-text.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"truncated-text.test.js","sources":["../../../src/components/truncated-text/truncated-text.test.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/es/index.d.ts CHANGED
@@ -12,3 +12,4 @@ export { default as CDSFullPageError } from './components/full-page-error/full-p
12
12
  export { default as CDSAboutModal } from './components/about-modal/about-modal';
13
13
  export { default as CDSUseravatar } from './components/user-avatar/user-avatar';
14
14
  export { default as CDSOptionsTile } from './components/options-tile/options-tile';
15
+ export { default as CDSTruncatedText } from './components/truncated-text/truncated-text';
package/es/index.js CHANGED
@@ -11,4 +11,5 @@ export { default as CDSFullPageError } from './components/full-page-error/full-p
11
11
  export { default as CDSAboutModal } from './components/about-modal/about-modal.js';
12
12
  export { default as CDSUseravatar } from './components/user-avatar/user-avatar.js';
13
13
  export { default as CDSOptionsTile } from './components/options-tile/options-tile.js';
14
+ export { default as CDSTruncatedText } from './components/truncated-text/truncated-text.js';
14
15
  //# sourceMappingURL=index.js.map
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -5,7 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- var version = "0.16.0";
8
+ var version = "0.17.0";
9
9
  var packageJson = {
10
10
  version: version};
11
11