@imposium-hub/components 2.14.7-1 → 2.14.8

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 (229) hide show
  1. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.d.ts +1 -1
  2. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.test.d.ts +1 -0
  3. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.test.js +377 -0
  4. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.test.js.map +1 -0
  5. package/dist/cjs/components/anchor-field/AnchorField.d.ts +1 -1
  6. package/dist/cjs/components/anchor-field/AnchorField.test.d.ts +1 -0
  7. package/dist/cjs/components/anchor-field/AnchorField.test.js +87 -0
  8. package/dist/cjs/components/anchor-field/AnchorField.test.js.map +1 -0
  9. package/dist/cjs/components/asset-details/AssetDetails.test.d.ts +1 -0
  10. package/dist/cjs/components/asset-details/AssetDetails.test.js +439 -0
  11. package/dist/cjs/components/asset-details/AssetDetails.test.js.map +1 -0
  12. package/dist/cjs/components/assets/AssetField.test.d.ts +1 -0
  13. package/dist/cjs/components/assets/AssetField.test.js +464 -0
  14. package/dist/cjs/components/assets/AssetField.test.js.map +1 -0
  15. package/dist/cjs/components/assets/AssetsTableAssetIdCell.test.d.ts +1 -0
  16. package/dist/cjs/components/assets/AssetsTableAssetIdCell.test.js +190 -0
  17. package/dist/cjs/components/assets/AssetsTableAssetIdCell.test.js.map +1 -0
  18. package/dist/cjs/components/assets/AssetsTableAssetIdFilter.test.d.ts +1 -0
  19. package/dist/cjs/components/assets/AssetsTableAssetIdFilter.test.js +82 -0
  20. package/dist/cjs/components/assets/AssetsTableAssetIdFilter.test.js.map +1 -0
  21. package/dist/cjs/components/assets/AssetsTableComplexTagCell.test.d.ts +1 -0
  22. package/dist/cjs/components/assets/AssetsTableComplexTagCell.test.js +125 -0
  23. package/dist/cjs/components/assets/AssetsTableComplexTagCell.test.js.map +1 -0
  24. package/dist/cjs/components/assets/AssetsTableDateCell.d.ts +1 -6
  25. package/dist/cjs/components/assets/AssetsTableDateCell.test.d.ts +1 -0
  26. package/dist/cjs/components/assets/AssetsTableDateCell.test.js +116 -0
  27. package/dist/cjs/components/assets/AssetsTableDateCell.test.js.map +1 -0
  28. package/dist/cjs/components/assets/AssetsTableGlobalCell.d.ts +1 -5
  29. package/dist/cjs/components/assets/AssetsTablePreviewCell.d.ts +1 -17
  30. package/dist/cjs/components/assets/AssetsTableStatusCell.d.ts +1 -5
  31. package/dist/cjs/components/assets/AssetsTableTagsCell.d.ts +1 -6
  32. package/dist/cjs/components/assets/AssetsTableTypeCell.d.ts +1 -5
  33. package/dist/cjs/components/assets/AssetsTypeIcon.d.ts +1 -5
  34. package/dist/cjs/components/assets/FontAssetPreview.d.ts +1 -1
  35. package/dist/cjs/components/assets/StoryTableTotalRendersCell.d.ts +1 -2
  36. package/dist/cjs/components/button/Button.d.ts +1 -1
  37. package/dist/cjs/components/button/Button.stories.d.ts +5 -6
  38. package/dist/cjs/components/button-group-field/ButtonGroupField.d.ts +1 -1
  39. package/dist/cjs/components/button-group-field/ButtonGroupField.stories.d.ts +1 -2
  40. package/dist/cjs/components/button-menu/ButtonMenu.d.ts +2 -2
  41. package/dist/cjs/components/button-menu/ButtonMenu.stories.d.ts +1 -2
  42. package/dist/cjs/components/button-menu/ButtonMenuItem.d.ts +1 -1
  43. package/dist/cjs/components/card/Card.d.ts +4 -4
  44. package/dist/cjs/components/card/Card.stories.d.ts +1 -2
  45. package/dist/cjs/components/checkbox-field/CheckboxField.d.ts +1 -1
  46. package/dist/cjs/components/checkbox-field/CheckboxField.stories.d.ts +1 -2
  47. package/dist/cjs/components/color-field/ColorField.d.ts +1 -1
  48. package/dist/cjs/components/color-field/ColorFiled.stories.d.ts +1 -2
  49. package/dist/cjs/components/compositions/TextLayer.d.ts +1 -1
  50. package/dist/cjs/components/config-variable-button/ConfigVariableButton.d.ts +1 -42
  51. package/dist/cjs/components/confirm-modal/ConfirmModal.d.ts +1 -2
  52. package/dist/cjs/components/controlled-list/ControlledList.d.ts +2 -2
  53. package/dist/cjs/components/controlled-list/ControlledList.stories.d.ts +1 -2
  54. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.d.ts +1 -1
  55. package/dist/cjs/components/determinate-loader/DeterminateLoader.stories.d.ts +3 -4
  56. package/dist/cjs/components/dropdown/Dropdown.d.ts +1 -1
  57. package/dist/cjs/components/dropdown/Dropdown.stories.d.ts +1 -1
  58. package/dist/cjs/components/field-wrapper/FieldWrapper.d.ts +2 -2
  59. package/dist/cjs/components/field-wrapper/FieldWrapper.stories.d.ts +1 -2
  60. package/dist/cjs/components/font-field/FontField.d.ts +1 -2
  61. package/dist/cjs/components/font-picker/FontPicker.d.ts +1 -1
  62. package/dist/cjs/components/h-rule/HRule.d.ts +1 -2
  63. package/dist/cjs/components/h-rule/HRule.stories.d.ts +2 -3
  64. package/dist/cjs/components/header/ProjectDropdown.d.ts +1 -2
  65. package/dist/cjs/components/list-field/ListField.d.ts +1 -1
  66. package/dist/cjs/components/list-field/ListField.stories.d.ts +1 -2
  67. package/dist/cjs/components/log-viewer/LogViewer.d.ts +1 -1
  68. package/dist/cjs/components/media-variable-field/MediaVariableField.d.ts +1 -1
  69. package/dist/cjs/components/modal/Modal.d.ts +1 -1
  70. package/dist/cjs/components/modal/Modal.stories.d.ts +1 -2
  71. package/dist/cjs/components/number-field/NumberField.d.ts +3 -3
  72. package/dist/cjs/components/number-field/NumberField.js +4 -7
  73. package/dist/cjs/components/number-field/NumberField.js.map +1 -1
  74. package/dist/cjs/components/number-field/NumberField.stories.d.ts +1 -2
  75. package/dist/cjs/components/number-field/NumberField.test.d.ts +1 -0
  76. package/dist/cjs/components/number-field/NumberField.test.js +241 -0
  77. package/dist/cjs/components/number-field/NumberField.test.js.map +1 -0
  78. package/dist/cjs/components/players/AudioPlayer.d.ts +1 -1
  79. package/dist/cjs/components/players/AudioPreview.d.ts +1 -1
  80. package/dist/cjs/components/players/ImagePlayer.d.ts +1 -1
  81. package/dist/cjs/components/players/ImagePreview.d.ts +1 -1
  82. package/dist/cjs/components/players/ImageSequencePlayer.d.ts +1 -1
  83. package/dist/cjs/components/players/TemplatePlayer.d.ts +1 -1
  84. package/dist/cjs/components/players/VideoPlayer.d.ts +1 -1
  85. package/dist/cjs/components/players/VideoPreview.d.ts +1 -1
  86. package/dist/cjs/components/publish-wizard/PublishWizard.d.ts +3 -3
  87. package/dist/cjs/components/publish-wizard/publish/APIIntegration.d.ts +1 -1
  88. package/dist/cjs/components/publish-wizard/publish/HubSpotFlow.d.ts +1 -1
  89. package/dist/cjs/components/publish-wizard/publish/WebpageHosted.d.ts +2 -2
  90. package/dist/cjs/components/section/Section.d.ts +1 -2
  91. package/dist/cjs/components/section/Section.stories.d.ts +2 -3
  92. package/dist/cjs/components/select-field/SelectField.d.ts +1 -1
  93. package/dist/cjs/components/select-field/SelectField.stories.d.ts +1 -2
  94. package/dist/cjs/components/shortcut-menu/ShortcutMenu.stories.d.ts +1 -2
  95. package/dist/cjs/components/slider-field/SliderField.d.ts +1 -1
  96. package/dist/cjs/components/slider-field/SliderField.stories.d.ts +1 -2
  97. package/dist/cjs/components/smpte-field/SMPTEField.d.ts +1 -1
  98. package/dist/cjs/components/tabs/Tabs.stories.d.ts +2 -3
  99. package/dist/cjs/components/tag/Tag.d.ts +1 -9
  100. package/dist/cjs/components/text-area-autocomplete/TextAreaAutocomplete.d.ts +1 -2
  101. package/dist/cjs/components/text-area-field/TextAreaField.d.ts +1 -1
  102. package/dist/cjs/components/text-area-field/TextAreaField.stories.d.ts +1 -2
  103. package/dist/cjs/components/text-field/TextField.d.ts +1 -1
  104. package/dist/cjs/components/text-field/TextField.stories.d.ts +1 -2
  105. package/dist/cjs/components/text-field/TextField.test.d.ts +1 -0
  106. package/dist/cjs/components/text-field/TextField.test.js +540 -0
  107. package/dist/cjs/components/text-field/TextField.test.js.map +1 -0
  108. package/dist/cjs/constants/icons.d.ts +79 -80
  109. package/dist/cjs/test/setup.d.ts +1 -0
  110. package/dist/cjs/test/setup.js +97 -0
  111. package/dist/cjs/test/setup.js.map +1 -0
  112. package/dist/cjs/test/utils.d.ts +26 -0
  113. package/dist/cjs/test/utils.js +44 -0
  114. package/dist/cjs/test/utils.js.map +1 -0
  115. package/dist/esm/components/advanced-number-field/AdvancedNumberField.d.ts +1 -1
  116. package/dist/esm/components/advanced-number-field/AdvancedNumberField.test.d.ts +1 -0
  117. package/dist/esm/components/advanced-number-field/AdvancedNumberField.test.js +361 -0
  118. package/dist/esm/components/advanced-number-field/AdvancedNumberField.test.js.map +1 -0
  119. package/dist/esm/components/anchor-field/AnchorField.d.ts +1 -1
  120. package/dist/esm/components/anchor-field/AnchorField.test.d.ts +1 -0
  121. package/dist/esm/components/anchor-field/AnchorField.test.js +81 -0
  122. package/dist/esm/components/anchor-field/AnchorField.test.js.map +1 -0
  123. package/dist/esm/components/asset-details/AssetDetails.test.d.ts +1 -0
  124. package/dist/esm/components/asset-details/AssetDetails.test.js +367 -0
  125. package/dist/esm/components/asset-details/AssetDetails.test.js.map +1 -0
  126. package/dist/esm/components/assets/AssetField.test.d.ts +1 -0
  127. package/dist/esm/components/assets/AssetField.test.js +311 -0
  128. package/dist/esm/components/assets/AssetField.test.js.map +1 -0
  129. package/dist/esm/components/assets/AssetsTableAssetIdCell.test.d.ts +1 -0
  130. package/dist/esm/components/assets/AssetsTableAssetIdCell.test.js +105 -0
  131. package/dist/esm/components/assets/AssetsTableAssetIdCell.test.js.map +1 -0
  132. package/dist/esm/components/assets/AssetsTableAssetIdFilter.test.d.ts +1 -0
  133. package/dist/esm/components/assets/AssetsTableAssetIdFilter.test.js +63 -0
  134. package/dist/esm/components/assets/AssetsTableAssetIdFilter.test.js.map +1 -0
  135. package/dist/esm/components/assets/AssetsTableComplexTagCell.test.d.ts +1 -0
  136. package/dist/esm/components/assets/AssetsTableComplexTagCell.test.js +100 -0
  137. package/dist/esm/components/assets/AssetsTableComplexTagCell.test.js.map +1 -0
  138. package/dist/esm/components/assets/AssetsTableDateCell.d.ts +1 -6
  139. package/dist/esm/components/assets/AssetsTableDateCell.test.d.ts +1 -0
  140. package/dist/esm/components/assets/AssetsTableDateCell.test.js +60 -0
  141. package/dist/esm/components/assets/AssetsTableDateCell.test.js.map +1 -0
  142. package/dist/esm/components/assets/AssetsTableGlobalCell.d.ts +1 -5
  143. package/dist/esm/components/assets/AssetsTablePreviewCell.d.ts +1 -17
  144. package/dist/esm/components/assets/AssetsTableStatusCell.d.ts +1 -5
  145. package/dist/esm/components/assets/AssetsTableTagsCell.d.ts +1 -6
  146. package/dist/esm/components/assets/AssetsTableTypeCell.d.ts +1 -5
  147. package/dist/esm/components/assets/AssetsTypeIcon.d.ts +1 -5
  148. package/dist/esm/components/assets/FontAssetPreview.d.ts +1 -1
  149. package/dist/esm/components/assets/StoryTableTotalRendersCell.d.ts +1 -2
  150. package/dist/esm/components/button/Button.d.ts +1 -1
  151. package/dist/esm/components/button/Button.stories.d.ts +5 -6
  152. package/dist/esm/components/button-group-field/ButtonGroupField.d.ts +1 -1
  153. package/dist/esm/components/button-group-field/ButtonGroupField.stories.d.ts +1 -2
  154. package/dist/esm/components/button-menu/ButtonMenu.d.ts +2 -2
  155. package/dist/esm/components/button-menu/ButtonMenu.stories.d.ts +1 -2
  156. package/dist/esm/components/button-menu/ButtonMenuItem.d.ts +1 -1
  157. package/dist/esm/components/card/Card.d.ts +4 -4
  158. package/dist/esm/components/card/Card.stories.d.ts +1 -2
  159. package/dist/esm/components/checkbox-field/CheckboxField.d.ts +1 -1
  160. package/dist/esm/components/checkbox-field/CheckboxField.stories.d.ts +1 -2
  161. package/dist/esm/components/color-field/ColorField.d.ts +1 -1
  162. package/dist/esm/components/color-field/ColorFiled.stories.d.ts +1 -2
  163. package/dist/esm/components/compositions/TextLayer.d.ts +1 -1
  164. package/dist/esm/components/config-variable-button/ConfigVariableButton.d.ts +1 -42
  165. package/dist/esm/components/confirm-modal/ConfirmModal.d.ts +1 -2
  166. package/dist/esm/components/controlled-list/ControlledList.d.ts +2 -2
  167. package/dist/esm/components/controlled-list/ControlledList.stories.d.ts +1 -2
  168. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.d.ts +1 -1
  169. package/dist/esm/components/determinate-loader/DeterminateLoader.stories.d.ts +3 -4
  170. package/dist/esm/components/dropdown/Dropdown.d.ts +1 -1
  171. package/dist/esm/components/dropdown/Dropdown.stories.d.ts +1 -1
  172. package/dist/esm/components/field-wrapper/FieldWrapper.d.ts +2 -2
  173. package/dist/esm/components/field-wrapper/FieldWrapper.stories.d.ts +1 -2
  174. package/dist/esm/components/font-field/FontField.d.ts +1 -2
  175. package/dist/esm/components/font-picker/FontPicker.d.ts +1 -1
  176. package/dist/esm/components/h-rule/HRule.d.ts +1 -2
  177. package/dist/esm/components/h-rule/HRule.stories.d.ts +2 -3
  178. package/dist/esm/components/header/ProjectDropdown.d.ts +1 -2
  179. package/dist/esm/components/list-field/ListField.d.ts +1 -1
  180. package/dist/esm/components/list-field/ListField.stories.d.ts +1 -2
  181. package/dist/esm/components/log-viewer/LogViewer.d.ts +1 -1
  182. package/dist/esm/components/media-variable-field/MediaVariableField.d.ts +1 -1
  183. package/dist/esm/components/modal/Modal.d.ts +1 -1
  184. package/dist/esm/components/modal/Modal.stories.d.ts +1 -2
  185. package/dist/esm/components/number-field/NumberField.d.ts +3 -3
  186. package/dist/esm/components/number-field/NumberField.js +4 -5
  187. package/dist/esm/components/number-field/NumberField.js.map +1 -1
  188. package/dist/esm/components/number-field/NumberField.stories.d.ts +1 -2
  189. package/dist/esm/components/number-field/NumberField.test.d.ts +1 -0
  190. package/dist/esm/components/number-field/NumberField.test.js +192 -0
  191. package/dist/esm/components/number-field/NumberField.test.js.map +1 -0
  192. package/dist/esm/components/players/AudioPlayer.d.ts +1 -1
  193. package/dist/esm/components/players/AudioPreview.d.ts +1 -1
  194. package/dist/esm/components/players/ImagePlayer.d.ts +1 -1
  195. package/dist/esm/components/players/ImagePreview.d.ts +1 -1
  196. package/dist/esm/components/players/ImageSequencePlayer.d.ts +1 -1
  197. package/dist/esm/components/players/TemplatePlayer.d.ts +1 -1
  198. package/dist/esm/components/players/VideoPlayer.d.ts +1 -1
  199. package/dist/esm/components/players/VideoPreview.d.ts +1 -1
  200. package/dist/esm/components/publish-wizard/PublishWizard.d.ts +3 -3
  201. package/dist/esm/components/publish-wizard/publish/APIIntegration.d.ts +1 -1
  202. package/dist/esm/components/publish-wizard/publish/HubSpotFlow.d.ts +1 -1
  203. package/dist/esm/components/publish-wizard/publish/WebpageHosted.d.ts +2 -2
  204. package/dist/esm/components/section/Section.d.ts +1 -2
  205. package/dist/esm/components/section/Section.stories.d.ts +2 -3
  206. package/dist/esm/components/select-field/SelectField.d.ts +1 -1
  207. package/dist/esm/components/select-field/SelectField.stories.d.ts +1 -2
  208. package/dist/esm/components/shortcut-menu/ShortcutMenu.stories.d.ts +1 -2
  209. package/dist/esm/components/slider-field/SliderField.d.ts +1 -1
  210. package/dist/esm/components/slider-field/SliderField.stories.d.ts +1 -2
  211. package/dist/esm/components/smpte-field/SMPTEField.d.ts +1 -1
  212. package/dist/esm/components/tabs/Tabs.stories.d.ts +2 -3
  213. package/dist/esm/components/tag/Tag.d.ts +1 -9
  214. package/dist/esm/components/text-area-autocomplete/TextAreaAutocomplete.d.ts +1 -2
  215. package/dist/esm/components/text-area-field/TextAreaField.d.ts +1 -1
  216. package/dist/esm/components/text-area-field/TextAreaField.stories.d.ts +1 -2
  217. package/dist/esm/components/text-field/TextField.d.ts +1 -1
  218. package/dist/esm/components/text-field/TextField.stories.d.ts +1 -2
  219. package/dist/esm/components/text-field/TextField.test.d.ts +1 -0
  220. package/dist/esm/components/text-field/TextField.test.js +469 -0
  221. package/dist/esm/components/text-field/TextField.test.js.map +1 -0
  222. package/dist/esm/constants/icons.d.ts +79 -80
  223. package/dist/esm/test/setup.d.ts +1 -0
  224. package/dist/esm/test/setup.js +70 -0
  225. package/dist/esm/test/setup.js.map +1 -0
  226. package/dist/esm/test/utils.d.ts +26 -0
  227. package/dist/esm/test/utils.js +27 -0
  228. package/dist/esm/test/utils.js.map +1 -0
  229. package/package.json +1 -1
@@ -0,0 +1,540 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ var react_1 = __importDefault(require("react"));
54
+ var vitest_1 = require("vitest");
55
+ var utils_1 = require("../../test/utils");
56
+ var TextField_1 = __importDefault(require("./TextField"));
57
+ (0, vitest_1.describe)('TextField', function () {
58
+ var defaultProps = {
59
+ onChange: vitest_1.vi.fn(),
60
+ label: 'Test Text Field'
61
+ };
62
+ (0, vitest_1.beforeEach)(function () {
63
+ vitest_1.vi.clearAllMocks();
64
+ });
65
+ (0, vitest_1.describe)('Rendering', function () {
66
+ (0, vitest_1.it)('renders without crashing', function () {
67
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps)));
68
+ var input = utils_1.screen.getByRole('textbox');
69
+ (0, vitest_1.expect)(input).toBeDefined();
70
+ });
71
+ (0, vitest_1.it)('displays the correct value', function () {
72
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { value: 'test value' })));
73
+ var input = utils_1.screen.getByRole('textbox');
74
+ (0, vitest_1.expect)(input.value).toBe('test value');
75
+ });
76
+ (0, vitest_1.it)('displays placeholder when provided', function () {
77
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { placeholder: 'Enter text' })));
78
+ var input = utils_1.screen.getByRole('textbox');
79
+ (0, vitest_1.expect)(input.placeholder).toBe('Enter text');
80
+ });
81
+ (0, vitest_1.it)('sets disabled state correctly', function () {
82
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { disabled: true })));
83
+ var input = utils_1.screen.getByRole('textbox');
84
+ (0, vitest_1.expect)(input.disabled).toBe(true);
85
+ });
86
+ (0, vitest_1.it)('sets readOnly attribute when readOnly prop is true', function () {
87
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { readOnly: true })));
88
+ var input = utils_1.screen.getByRole('textbox');
89
+ (0, vitest_1.expect)(input.readOnly).toBe(true);
90
+ });
91
+ (0, vitest_1.it)('applies maxLength attribute when provided', function () {
92
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { maxLength: 50 })));
93
+ var input = utils_1.screen.getByRole('textbox');
94
+ (0, vitest_1.expect)(input.maxLength).toBe(50);
95
+ });
96
+ (0, vitest_1.it)('focuses input on mount when focusOnMount is true', function () {
97
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { focusOnMount: true })));
98
+ var input = utils_1.screen.getByRole('textbox');
99
+ (0, vitest_1.expect)(document.activeElement).toBe(input);
100
+ });
101
+ });
102
+ (0, vitest_1.describe)('Basic Interactions', function () {
103
+ (0, vitest_1.it)('calls onChange when value changes in uncontrolled mode', function () {
104
+ var onChange = vitest_1.vi.fn();
105
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { onChange: onChange })));
106
+ var input = utils_1.screen.getByRole('textbox');
107
+ utils_1.fireEvent.change(input, { target: { value: 'new text' } });
108
+ (0, vitest_1.expect)(onChange).toHaveBeenCalledWith('new text');
109
+ });
110
+ (0, vitest_1.it)('calls onFocus when input receives focus', function () {
111
+ var onFocus = vitest_1.vi.fn();
112
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { onFocus: onFocus })));
113
+ var input = utils_1.screen.getByRole('textbox');
114
+ utils_1.fireEvent.focus(input);
115
+ (0, vitest_1.expect)(onFocus).toHaveBeenCalled();
116
+ });
117
+ (0, vitest_1.it)('calls onBlur when input loses focus', function () {
118
+ var onBlur = vitest_1.vi.fn();
119
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { onBlur: onBlur })));
120
+ var input = utils_1.screen.getByRole('textbox');
121
+ utils_1.fireEvent.blur(input);
122
+ (0, vitest_1.expect)(onBlur).toHaveBeenCalled();
123
+ });
124
+ });
125
+ (0, vitest_1.describe)('Pattern Validation', function () {
126
+ (0, vitest_1.it)('prevents input that does not match pattern', function () {
127
+ var onChange = vitest_1.vi.fn();
128
+ var numberPattern = /^\d*$/;
129
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { onChange: onChange, pattern: numberPattern })));
130
+ var input = utils_1.screen.getByRole('textbox');
131
+ utils_1.fireEvent.change(input, { target: { value: 'abc123' } });
132
+ (0, vitest_1.expect)(onChange).not.toHaveBeenCalled();
133
+ });
134
+ (0, vitest_1.it)('allows input that matches pattern', function () {
135
+ var onChange = vitest_1.vi.fn();
136
+ var numberPattern = /^\d*$/;
137
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { onChange: onChange, pattern: numberPattern })));
138
+ var input = utils_1.screen.getByRole('textbox');
139
+ utils_1.fireEvent.change(input, { target: { value: '123' } });
140
+ (0, vitest_1.expect)(onChange).toHaveBeenCalledWith('123');
141
+ });
142
+ });
143
+ (0, vitest_1.describe)('Controlled Mode', function () {
144
+ (0, vitest_1.it)('renders edit button in controlled mode', function () {
145
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'test', onSubmit: vitest_1.vi.fn() }))).container;
146
+ var button = container.querySelector('[data-tooltip-content="Edit"]');
147
+ (0, vitest_1.expect)(button).toBeDefined();
148
+ (0, vitest_1.expect)(button === null || button === void 0 ? void 0 : button.getAttribute('data-tooltip-content')).toBe('Edit');
149
+ });
150
+ });
151
+ (0, vitest_1.describe)('Submittable Mode', function () {
152
+ (0, vitest_1.it)('renders submit button in submittable mode', function () {
153
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, doSubmit: vitest_1.vi.fn() }))).container;
154
+ var button = container.querySelector('[data-tooltip-content="Confirm"]');
155
+ (0, vitest_1.expect)(button).toBeDefined();
156
+ (0, vitest_1.expect)(button === null || button === void 0 ? void 0 : button.getAttribute('data-tooltip-content')).toBe('Confirm');
157
+ });
158
+ (0, vitest_1.it)('renders search icon when submittableType is search', function () {
159
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, submittableType: 'search', doSubmit: vitest_1.vi.fn() }))).container;
160
+ var button = container.querySelector('[data-tooltip-content="Search"]');
161
+ (0, vitest_1.expect)(button).toBeDefined();
162
+ (0, vitest_1.expect)(button === null || button === void 0 ? void 0 : button.getAttribute('data-tooltip-content')).toBe('Search');
163
+ });
164
+ });
165
+ (0, vitest_1.describe)('Loading State', function () {
166
+ (0, vitest_1.it)('disables input when loading is true', function () {
167
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { loading: true })));
168
+ var input = utils_1.screen.getByRole('textbox');
169
+ (0, vitest_1.expect)(input.disabled).toBe(true);
170
+ });
171
+ });
172
+ (0, vitest_1.describe)('Constructor Validation', function () {
173
+ (0, vitest_1.it)('throws error when both controlled and submittable are true', function () {
174
+ (0, vitest_1.expect)(function () {
175
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, submittable: true })));
176
+ }).toThrow('Actionable TextField(s) must be one of either: controlled or submittable.');
177
+ });
178
+ });
179
+ (0, vitest_1.describe)('Controlled Mode', function () {
180
+ (0, vitest_1.it)('renders in controlled mode with edit button', function () {
181
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'test value' }))).container;
182
+ var editButton = container.querySelector('[data-tooltip-content="Edit"]');
183
+ (0, vitest_1.expect)(editButton).toBeDefined();
184
+ });
185
+ (0, vitest_1.it)('toggles editing state when edit button is clicked', function () {
186
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'test value' }))).container;
187
+ var editButton = container.querySelector('[data-tooltip-content="Edit"]');
188
+ utils_1.fireEvent.click(editButton);
189
+ // Should now show check icon instead of edit icon
190
+ var checkButton = container.querySelector('[data-tooltip-content="Edit"]');
191
+ (0, vitest_1.expect)(checkButton).toBeDefined();
192
+ });
193
+ (0, vitest_1.it)('calls onSubmit when editing is completed with changed value', function () {
194
+ var onSubmit = vitest_1.vi.fn();
195
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'original', onSubmit: onSubmit }))).container;
196
+ // Start editing
197
+ var editButton = container.querySelector('[data-tooltip-content="Edit"]');
198
+ utils_1.fireEvent.click(editButton);
199
+ // Change value
200
+ var input = utils_1.screen.getByRole('textbox');
201
+ utils_1.fireEvent.change(input, { target: { value: 'modified' } });
202
+ // Complete editing
203
+ var checkButton = container.querySelector('[data-tooltip-content="Edit"]');
204
+ utils_1.fireEvent.click(checkButton);
205
+ (0, vitest_1.expect)(onSubmit).toHaveBeenCalledWith('modified');
206
+ });
207
+ (0, vitest_1.it)('does not call onSubmit when editing is completed without changes', function () {
208
+ var onSubmit = vitest_1.vi.fn();
209
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'unchanged', onSubmit: onSubmit }))).container;
210
+ // Start editing
211
+ var editButton = container.querySelector('[data-tooltip-content="Edit"]');
212
+ utils_1.fireEvent.click(editButton);
213
+ // Complete editing without changes
214
+ var checkButton = container.querySelector('[data-tooltip-content="Edit"]');
215
+ utils_1.fireEvent.click(checkButton);
216
+ (0, vitest_1.expect)(onSubmit).not.toHaveBeenCalled();
217
+ });
218
+ (0, vitest_1.it)('calls onSubmit with null when empty value is submitted', function () {
219
+ var onSubmit = vitest_1.vi.fn();
220
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'original', onSubmit: onSubmit }))).container;
221
+ // Start editing
222
+ var editButton = container.querySelector('[data-tooltip-content="Edit"]');
223
+ utils_1.fireEvent.click(editButton);
224
+ // Clear value
225
+ var input = utils_1.screen.getByRole('textbox');
226
+ utils_1.fireEvent.change(input, { target: { value: '' } });
227
+ // Complete editing
228
+ var checkButton = container.querySelector('[data-tooltip-content="Edit"]');
229
+ utils_1.fireEvent.click(checkButton);
230
+ (0, vitest_1.expect)(onSubmit).toHaveBeenCalledWith(null);
231
+ });
232
+ });
233
+ (0, vitest_1.describe)('Submittable Mode', function () {
234
+ (0, vitest_1.it)('renders submittable mode with search icon', function () {
235
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, submittableType: 'search' }))).container;
236
+ var submitButton = container.querySelector('[data-tooltip-content="Search"]');
237
+ (0, vitest_1.expect)(submitButton).toBeDefined();
238
+ });
239
+ (0, vitest_1.it)('renders submittable mode with check icon', function () {
240
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, submittableType: 'check' }))).container;
241
+ var submitButton = container.querySelector('[data-tooltip-content="Confirm"]');
242
+ (0, vitest_1.expect)(submitButton).toBeDefined();
243
+ });
244
+ (0, vitest_1.it)('renders submittable mode with add icon', function () {
245
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, submittableType: 'add' }))).container;
246
+ var submitButton = container.querySelector('[data-tooltip-content="Confirm"]');
247
+ (0, vitest_1.expect)(submitButton).toBeDefined();
248
+ });
249
+ (0, vitest_1.it)('calls doSubmit when submit button is clicked with value', function () {
250
+ var doSubmit = vitest_1.vi.fn();
251
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, doSubmit: doSubmit }))).container;
252
+ var input = utils_1.screen.getByRole('textbox');
253
+ utils_1.fireEvent.change(input, { target: { value: 'test submission' } });
254
+ var submitButton = container.querySelector('[data-tooltip-content="Confirm"]');
255
+ utils_1.fireEvent.click(submitButton);
256
+ (0, vitest_1.expect)(doSubmit).toHaveBeenCalledWith('test submission');
257
+ });
258
+ (0, vitest_1.it)('clears value after submission when submittableType is add', function () {
259
+ var doSubmit = vitest_1.vi.fn();
260
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, submittableType: 'add', doSubmit: doSubmit }))).container;
261
+ var input = utils_1.screen.getByRole('textbox');
262
+ utils_1.fireEvent.change(input, { target: { value: 'test value' } });
263
+ var submitButton = container.querySelector('[data-tooltip-content="Confirm"]');
264
+ utils_1.fireEvent.click(submitButton);
265
+ (0, vitest_1.expect)(input.value).toBe('');
266
+ });
267
+ (0, vitest_1.it)('shows clear button when value exists', function () {
268
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, value: 'some value' }))).container;
269
+ var clearButton = container.querySelector('[data-tooltip-content="Clear"]');
270
+ (0, vitest_1.expect)(clearButton).toBeDefined();
271
+ });
272
+ (0, vitest_1.it)('calls doSubmit with empty string when clear button is clicked', function () {
273
+ var doSubmit = vitest_1.vi.fn();
274
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, value: 'some value', doSubmit: doSubmit }))).container;
275
+ var clearButton = container.querySelector('[data-tooltip-content="Clear"]');
276
+ utils_1.fireEvent.click(clearButton);
277
+ (0, vitest_1.expect)(doSubmit).toHaveBeenCalledWith('');
278
+ });
279
+ });
280
+ (0, vitest_1.describe)('Copy Functionality', function () {
281
+ (0, vitest_1.it)('shows copy button when showCopy is true', function () {
282
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { showCopy: true, value: 'copyable text' }))).container;
283
+ var copyButton = container.querySelector('[data-tooltip-content*="Copy"]');
284
+ (0, vitest_1.expect)(copyButton).toBeDefined();
285
+ });
286
+ (0, vitest_1.it)('calls onNotification when copy succeeds', function () { return __awaiter(void 0, void 0, void 0, function () {
287
+ var onNotification, container, copyButton;
288
+ return __generator(this, function (_a) {
289
+ switch (_a.label) {
290
+ case 0:
291
+ onNotification = vitest_1.vi.fn();
292
+ container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { showCopy: true, value: 'copyable text', onNotification: onNotification }))).container;
293
+ copyButton = container.querySelector('[data-tooltip-content*="Copy"]');
294
+ utils_1.fireEvent.click(copyButton);
295
+ // Wait for clipboard operation
296
+ return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 0); })];
297
+ case 1:
298
+ // Wait for clipboard operation
299
+ _a.sent();
300
+ (0, vitest_1.expect)(onNotification).toHaveBeenCalledWith('Copied to clipboard!');
301
+ return [2 /*return*/];
302
+ }
303
+ });
304
+ }); });
305
+ (0, vitest_1.it)('calls onError when copy fails', function () { return __awaiter(void 0, void 0, void 0, function () {
306
+ var originalClipboard, onError, container, copyButton;
307
+ return __generator(this, function (_a) {
308
+ switch (_a.label) {
309
+ case 0:
310
+ originalClipboard = navigator.clipboard;
311
+ Object.defineProperty(navigator, 'clipboard', {
312
+ value: {
313
+ writeText: vitest_1.vi.fn().mockRejectedValue(new Error('Copy failed'))
314
+ },
315
+ writable: true,
316
+ configurable: true
317
+ });
318
+ onError = vitest_1.vi.fn();
319
+ container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { showCopy: true, value: 'copyable text', onError: onError }))).container;
320
+ copyButton = container.querySelector('[data-tooltip-content*="Copy"]');
321
+ utils_1.fireEvent.click(copyButton);
322
+ // Wait for clipboard operation
323
+ return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 0); })];
324
+ case 1:
325
+ // Wait for clipboard operation
326
+ _a.sent();
327
+ (0, vitest_1.expect)(onError).toHaveBeenCalledWith('Error copying to clipboard.');
328
+ // Restore clipboard
329
+ Object.defineProperty(navigator, 'clipboard', {
330
+ value: originalClipboard,
331
+ writable: true,
332
+ configurable: true
333
+ });
334
+ return [2 /*return*/];
335
+ }
336
+ });
337
+ }); });
338
+ });
339
+ (0, vitest_1.describe)('Pattern Validation', function () {
340
+ (0, vitest_1.it)('prevents input that does not match pattern', function () {
341
+ var onChange = vitest_1.vi.fn();
342
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { pattern: /^\d+$/, onChange: onChange })));
343
+ var input = utils_1.screen.getByRole('textbox');
344
+ utils_1.fireEvent.change(input, { target: { value: 'abc123' } });
345
+ (0, vitest_1.expect)(onChange).not.toHaveBeenCalled();
346
+ });
347
+ (0, vitest_1.it)('allows input that matches pattern', function () {
348
+ var onChange = vitest_1.vi.fn();
349
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { pattern: /^\d+$/, onChange: onChange })));
350
+ var input = utils_1.screen.getByRole('textbox');
351
+ utils_1.fireEvent.change(input, { target: { value: '123' } });
352
+ (0, vitest_1.expect)(onChange).toHaveBeenCalledWith('123');
353
+ });
354
+ (0, vitest_1.it)('converts empty string to null for regular input', function () {
355
+ var onChange = vitest_1.vi.fn();
356
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { onChange: onChange, value: 'initial' })));
357
+ var input = utils_1.screen.getByRole('textbox');
358
+ utils_1.fireEvent.change(input, { target: { value: '' } });
359
+ (0, vitest_1.expect)(onChange).toHaveBeenCalledWith(null);
360
+ });
361
+ });
362
+ (0, vitest_1.describe)('Button Visibility', function () {
363
+ (0, vitest_1.it)('hides all buttons when hideButtons is true', function () {
364
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, showCopy: true, hideButtons: true, value: 'test' }))).container;
365
+ var submitButton = container.querySelector('[data-tooltip-content="Confirm"]');
366
+ var copyButton = container.querySelector('[data-tooltip-content*="Copy"]');
367
+ (0, vitest_1.expect)(submitButton).toBeNull();
368
+ (0, vitest_1.expect)(copyButton).toBeNull();
369
+ });
370
+ (0, vitest_1.it)('renders custom buttons array', function () {
371
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { buttons: [react_1.default.createElement("button", { key: 'custom' }, "Custom")] })));
372
+ var button = utils_1.screen.getByText('Custom');
373
+ (0, vitest_1.expect)(button).toBeDefined();
374
+ });
375
+ (0, vitest_1.it)('renders single custom button', function () {
376
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { buttons: react_1.default.createElement("button", { key: 'custom' }, "Single") })));
377
+ var button = utils_1.screen.getByText('Single');
378
+ (0, vitest_1.expect)(button).toBeDefined();
379
+ });
380
+ });
381
+ (0, vitest_1.describe)('Suggestions/Autocomplete', function () {
382
+ (0, vitest_1.it)('renders with suggestions and autocomplete functionality', function () {
383
+ var suggestions = ['apple', 'banana', 'cherry'];
384
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { suggestions: suggestions }))).container;
385
+ // Should render ReactTextareaAutocomplete (mocked as 'input' string)
386
+ var textContent = container.textContent;
387
+ (0, vitest_1.expect)(textContent).toContain('input');
388
+ });
389
+ (0, vitest_1.it)('handles suggestion click in submittable mode', function () {
390
+ var doSubmit = vitest_1.vi.fn();
391
+ var suggestions = ['apple', 'banana', 'cherry'];
392
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, suggestions: suggestions, doSubmit: doSubmit }))).container;
393
+ // Test that it renders with suggestions
394
+ (0, vitest_1.expect)(container.textContent).toContain('input');
395
+ });
396
+ (0, vitest_1.it)('handles Enter key in submittable mode with suggestions', function () {
397
+ var doSubmit = vitest_1.vi.fn();
398
+ var suggestions = ['apple', 'banana', 'cherry'];
399
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, suggestions: suggestions, doSubmit: doSubmit })));
400
+ // Test that component renders without errors
401
+ (0, vitest_1.expect)(doSubmit).toBeDefined();
402
+ });
403
+ });
404
+ (0, vitest_1.describe)('Keyboard Shortcuts', function () {
405
+ (0, vitest_1.it)('binds hotkeys on focus in submittable mode', function () {
406
+ var doSubmit = vitest_1.vi.fn();
407
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, doSubmit: doSubmit })));
408
+ var input = utils_1.screen.getByRole('textbox');
409
+ utils_1.fireEvent.focus(input);
410
+ // Test that focus event was handled
411
+ (0, vitest_1.expect)(input).toBeDefined();
412
+ });
413
+ (0, vitest_1.it)('unbinds hotkeys on blur in submittable mode', function () {
414
+ var doSubmit = vitest_1.vi.fn();
415
+ var onBlur = vitest_1.vi.fn();
416
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, doSubmit: doSubmit, onBlur: onBlur })));
417
+ var input = utils_1.screen.getByRole('textbox');
418
+ utils_1.fireEvent.focus(input);
419
+ utils_1.fireEvent.blur(input);
420
+ (0, vitest_1.expect)(onBlur).toHaveBeenCalled();
421
+ });
422
+ (0, vitest_1.it)('binds hotkeys on focus in controlled mode', function () {
423
+ var onSubmit = vitest_1.vi.fn();
424
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'original', onSubmit: onSubmit })));
425
+ var input = utils_1.screen.getByRole('textbox');
426
+ utils_1.fireEvent.focus(input);
427
+ // Test that focus event was handled
428
+ (0, vitest_1.expect)(input).toBeDefined();
429
+ });
430
+ (0, vitest_1.it)('unbinds hotkeys on blur in controlled mode', function () {
431
+ var onBlur = vitest_1.vi.fn();
432
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'original', onBlur: onBlur })));
433
+ var input = utils_1.screen.getByRole('textbox');
434
+ utils_1.fireEvent.focus(input);
435
+ utils_1.fireEvent.blur(input);
436
+ (0, vitest_1.expect)(onBlur).toHaveBeenCalled();
437
+ });
438
+ });
439
+ (0, vitest_1.describe)('Lifecycle Methods', function () {
440
+ (0, vitest_1.it)('handles componentWillUnmount for submittable mode', function () {
441
+ var unmount = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true }))).unmount;
442
+ // Focus to bind hotkeys
443
+ var input = utils_1.screen.getByRole('textbox');
444
+ utils_1.fireEvent.focus(input);
445
+ // Unmount should clean up hotkey bindings
446
+ unmount();
447
+ });
448
+ (0, vitest_1.it)('handles componentWillUnmount for controlled mode', function () {
449
+ var unmount = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true }))).unmount;
450
+ // Focus to bind hotkeys
451
+ var input = utils_1.screen.getByRole('textbox');
452
+ utils_1.fireEvent.focus(input);
453
+ // Unmount should clean up hotkey bindings
454
+ unmount();
455
+ });
456
+ (0, vitest_1.it)('handles componentDidUpdate for controlled mode', function () {
457
+ var rerender = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'initial' }))).rerender;
458
+ // Update component to trigger componentDidUpdate
459
+ rerender(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'updated' })));
460
+ var input = utils_1.screen.getByRole('textbox');
461
+ (0, vitest_1.expect)(input.value).toBe('updated');
462
+ });
463
+ });
464
+ (0, vitest_1.describe)('Edge Cases', function () {
465
+ (0, vitest_1.it)('handles null submittableType gracefully', function () {
466
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, submittableType: null })));
467
+ // Should still render without crashing
468
+ var input = utils_1.screen.getByRole('textbox');
469
+ (0, vitest_1.expect)(input).toBeDefined();
470
+ });
471
+ (0, vitest_1.it)('handles empty suggestions array', function () {
472
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { suggestions: [] }))).container;
473
+ // Should render ReactTextareaAutocomplete (mocked as 'input' string) even with empty suggestions
474
+ (0, vitest_1.expect)(container.textContent).toContain('input');
475
+ });
476
+ (0, vitest_1.it)('handles disabled state in controlled mode', function () {
477
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, disabled: true })));
478
+ var input = utils_1.screen.getByRole('textbox');
479
+ (0, vitest_1.expect)(input.disabled).toBe(true);
480
+ });
481
+ (0, vitest_1.it)('handles blur event with hotkey cleanup', function () {
482
+ var onBlur = vitest_1.vi.fn();
483
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { submittable: true, onBlur: onBlur })));
484
+ var input = utils_1.screen.getByRole('textbox');
485
+ utils_1.fireEvent.focus(input);
486
+ utils_1.fireEvent.blur(input);
487
+ (0, vitest_1.expect)(onBlur).toHaveBeenCalled();
488
+ });
489
+ (0, vitest_1.it)('handles focus event with hotkey binding', function () {
490
+ var onFocus = vitest_1.vi.fn();
491
+ (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, onFocus: onFocus })));
492
+ var input = utils_1.screen.getByRole('textbox');
493
+ utils_1.fireEvent.focus(input);
494
+ (0, vitest_1.expect)(onFocus).toHaveBeenCalled();
495
+ });
496
+ (0, vitest_1.it)('handles setEditing method', function () {
497
+ var container = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'test' }))).container;
498
+ // Start editing by clicking edit button
499
+ var editButton = container.querySelector('[data-tooltip-content="Edit"]');
500
+ utils_1.fireEvent.click(editButton);
501
+ // Should be in editing mode
502
+ var input = utils_1.screen.getByRole('textbox');
503
+ (0, vitest_1.expect)(input.disabled).toBe(false);
504
+ });
505
+ (0, vitest_1.it)('handles getValue method for different modes', function () {
506
+ var rerender = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { value: 'test' }))).rerender;
507
+ var input = utils_1.screen.getByRole('textbox');
508
+ (0, vitest_1.expect)(input.value).toBe('test');
509
+ // Test controlled mode
510
+ rerender(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'controlled test' })));
511
+ var controlledInput = utils_1.screen.getByRole('textbox');
512
+ (0, vitest_1.expect)(controlledInput.value).toBe('controlled test');
513
+ });
514
+ });
515
+ (0, vitest_1.describe)('Component Updates', function () {
516
+ (0, vitest_1.it)('updates internal value when props.value changes', function () {
517
+ var rerender = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { value: 'initial' }))).rerender;
518
+ rerender(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { value: 'updated' })));
519
+ var input = utils_1.screen.getByRole('textbox');
520
+ (0, vitest_1.expect)(input.value).toBe('updated');
521
+ });
522
+ (0, vitest_1.it)('updates internal value when controlled mode value changes', function () {
523
+ var rerender = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'initial' }))).rerender;
524
+ rerender(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'updated' })));
525
+ var input = utils_1.screen.getByRole('textbox');
526
+ (0, vitest_1.expect)(input.value).toBe('updated');
527
+ });
528
+ (0, vitest_1.it)('clears internal value when editing ends and value is empty', function () {
529
+ var _a = (0, utils_1.render)(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: 'initial' }))), rerender = _a.rerender, container = _a.container;
530
+ // Start editing
531
+ var editButton = container.querySelector('[data-tooltip-content="Edit"]');
532
+ utils_1.fireEvent.click(editButton);
533
+ // Update props to empty value and stop editing
534
+ rerender(react_1.default.createElement(TextField_1.default, __assign({}, defaultProps, { controlled: true, value: '' })));
535
+ var input = utils_1.screen.getByRole('textbox');
536
+ (0, vitest_1.expect)(input.value).toBe('');
537
+ });
538
+ });
539
+ });
540
+ //# sourceMappingURL=TextField.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextField.test.js","sourceRoot":"","sources":["../../../../src/components/text-field/TextField.test.tsx"],"names":[],"mappings":"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"}