@clyrex-digital/clyrex-controls-dev 0.8.1-dev.20260919092040 → 0.8.1-dev.20260919110110

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.
@@ -13,7 +13,7 @@ import { useRouter } from "next/navigation";
13
13
 
14
14
  // src/components/controls/edit/InputControl.tsx
15
15
  import dynamic from "next/dynamic";
16
- var InputControl = dynamic(() => import("./InputControlClient-UK7BUVZP.mjs"), {
16
+ var InputControl = dynamic(() => import("./InputControlClient-KQPQC6LK.mjs"), {
17
17
  ssr: false
18
18
  });
19
19
  var InputControl_default = InputControl;
@@ -3,7 +3,7 @@
3
3
  "use client";
4
4
  import {
5
5
  InputControl_default
6
- } from "./chunk-6DLRMMX3.mjs";
6
+ } from "./chunk-5NI44TXC.mjs";
7
7
  import {
8
8
  Button_default
9
9
  } from "./chunk-LSKD5U3S.mjs";
@@ -18,7 +18,7 @@ import {
18
18
  SelectWithSearchInput_default,
19
19
  Select_default,
20
20
  TimeInput_default
21
- } from "./chunk-ACHYBM3S.mjs";
21
+ } from "./chunk-WQ7BAR74.mjs";
22
22
  import {
23
23
  Hyperlink,
24
24
  Icon_default
@@ -140,7 +140,7 @@ var MoneyInput = (props) => {
140
140
  event.preventDefault();
141
141
  event.target.blur();
142
142
  };
143
- let value;
143
+ let value = "";
144
144
  if (props.value !== void 0 && props.value !== null) {
145
145
  value = props.value;
146
146
  }
@@ -149,8 +149,8 @@ var MoneyInput = (props) => {
149
149
  e.preventDefault();
150
150
  }
151
151
  };
152
- return /* @__PURE__ */ jsx3(React3.Fragment, { children: /* @__PURE__ */ jsxs3("label", { className: "block mb-1", children: [
153
- /* @__PURE__ */ jsx3("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
152
+ return /* @__PURE__ */ jsx3(React3.Fragment, { children: /* @__PURE__ */ jsxs3("label", { className: "block", children: [
153
+ props?.attributes?.label && /* @__PURE__ */ jsx3("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
154
154
  " ",
155
155
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx3("span", { className: "bg-error-weak", children: "*" }),
156
156
  /* @__PURE__ */ jsx3(
@@ -162,6 +162,8 @@ var MoneyInput = (props) => {
162
162
  value,
163
163
  min: 0,
164
164
  onChange: textChangeHandler,
165
+ onBlur: props?.onBlur,
166
+ autoFocus: props?.attributes?.autoFocus,
165
167
  onWheel: handleWheel,
166
168
  onKeyDown: preventNegative,
167
169
  required: props?.attributes?.required,
@@ -170,7 +172,9 @@ var MoneyInput = (props) => {
170
172
  pattern: props?.attributes?.pattern,
171
173
  disabled: props?.attributes?.readOnly,
172
174
  minLength: props?.attributes?.minLength,
173
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
175
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
176
+ ${props?.inputClasses ? props.inputClasses : ``}
177
+ `
174
178
  }
175
179
  ),
176
180
  /* @__PURE__ */ jsx3("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -322,7 +326,7 @@ var PercentageInput = (props) => {
322
326
  event.preventDefault();
323
327
  event.target.blur();
324
328
  };
325
- let value;
329
+ let value = "";
326
330
  if (props.value !== void 0 && props.value !== null) {
327
331
  value = props.value;
328
332
  }
@@ -331,8 +335,8 @@ var PercentageInput = (props) => {
331
335
  e.preventDefault();
332
336
  }
333
337
  };
334
- return /* @__PURE__ */ jsx5(React5.Fragment, { children: /* @__PURE__ */ jsxs5("label", { className: "block mb-1", children: [
335
- /* @__PURE__ */ jsx5("span", { className: "text-sm font-medium ", children: props?.attributes?.label ? props?.attributes?.label + " %" : "" }),
338
+ return /* @__PURE__ */ jsx5(React5.Fragment, { children: /* @__PURE__ */ jsxs5("label", { className: "block", children: [
339
+ props?.attributes?.label && /* @__PURE__ */ jsx5("span", { className: "text-sm inline-block pb-1 font-medium ", children: props.attributes.label + " %" }),
336
340
  " ",
337
341
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx5("span", { className: "bg-error-weak", children: "*" }),
338
342
  /* @__PURE__ */ jsx5(
@@ -344,6 +348,8 @@ var PercentageInput = (props) => {
344
348
  value,
345
349
  min: 0,
346
350
  onChange: textChangeHandler,
351
+ onBlur: props?.onBlur,
352
+ autoFocus: props?.attributes?.autoFocus,
347
353
  onKeyDown: preventNegative,
348
354
  onWheel: handleWheel,
349
355
  required: props?.attributes?.required,
@@ -351,7 +357,9 @@ var PercentageInput = (props) => {
351
357
  pattern: props?.attributes?.pattern,
352
358
  disabled: props?.attributes?.readOnly,
353
359
  max: "100",
354
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
360
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
361
+ ${props?.inputClasses ? props.inputClasses : ``}
362
+ `
355
363
  }
356
364
  ),
357
365
  /* @__PURE__ */ jsx5("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -416,21 +424,19 @@ var NumberInput = (props) => {
416
424
  const textChangeHandler = (event) => {
417
425
  const text = event.target.value;
418
426
  if (props.callback !== void 0) {
419
- props.callback(
420
- {
421
- name: props.name,
422
- value: text,
423
- index: props.index,
424
- groupKey: props.groupKey
425
- }
426
- );
427
+ props.callback({
428
+ name: props.name,
429
+ value: text,
430
+ index: props.index,
431
+ groupKey: props.groupKey
432
+ });
427
433
  }
428
434
  };
429
435
  const handleWheel = (event) => {
430
436
  event.preventDefault();
431
437
  event.target.blur();
432
438
  };
433
- let value;
439
+ let value = "";
434
440
  if (props.value !== void 0 && props.value !== null) {
435
441
  value = props.value;
436
442
  }
@@ -447,14 +453,17 @@ var NumberInput = (props) => {
447
453
  value,
448
454
  onChange: textChangeHandler,
449
455
  onWheel: handleWheel,
456
+ onBlur: props?.onBlur,
457
+ autoFocus: props?.attributes?.autoFocus,
450
458
  required: props?.attributes?.required,
451
459
  placeholder: props?.attributes?.placeholder,
452
- onBlur: props?.onBlur,
453
460
  pattern: props?.attributes?.pattern,
454
461
  disabled: props?.attributes?.readOnly,
455
462
  max: props?.attributes?.maxValue,
456
463
  min: props?.attributes?.minValue,
457
- className: "peer py-1.5 block w-full rounded shadow-sm number-input input\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n "
464
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
465
+ ${props?.inputClasses ? props.inputClasses : ``}
466
+ `
458
467
  }
459
468
  ),
460
469
  /* @__PURE__ */ jsx7("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -483,6 +492,7 @@ var CheckboxInput = (props) => {
483
492
  if (props.value !== void 0 && props.value !== null && props.value !== "" && (props.value === true || props.value === "true" || props.value.toString().toLowerCase() === "true" || props.value === 1 || props.value === "1")) {
484
493
  value = true;
485
494
  }
495
+ const customClasses = (props?.inputClasses || "").split(/\s+/).filter((c) => !/^(w-|h-|block|inline-block|py-|px-|p-)/.test(c)).join(" ");
486
496
  return /* @__PURE__ */ jsx8(React8.Fragment, { children: /* @__PURE__ */ jsxs8("div", { className: `mb-1 ${isReadOnly ? "cursor-not-allowed" : ""}`, children: [
487
497
  props?.attributes?.label && /* @__PURE__ */ jsxs8(Fragment, { children: [
488
498
  /* @__PURE__ */ jsx8(
@@ -494,7 +504,7 @@ var CheckboxInput = (props) => {
494
504
  }
495
505
  ),
496
506
  " ",
497
- props?.attributes?.required && /* @__PURE__ */ jsx8("span", { className: "bg-error-weak !bg-transparent", children: "*" })
507
+ props?.attributes?.required && /* @__PURE__ */ jsx8("span", { className: "bg-error-weak", children: "*" })
498
508
  ] }),
499
509
  /* @__PURE__ */ jsx8(
500
510
  "input",
@@ -520,7 +530,7 @@ var CheckboxInput = (props) => {
520
530
  }
521
531
  },
522
532
  minLength: props?.attributes?.minLength,
523
- className: `peer mt-1 block rounded shadow-sm h-4 w-4 transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${props?.inputClasses ? props.inputClasses : ""}`
533
+ className: `peer mt-1 h-4 w-4 shrink-0 rounded shadow-sm transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${customClasses}`
524
534
  }
525
535
  ),
526
536
  /* @__PURE__ */ jsx8("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage || "" })
@@ -535,25 +545,23 @@ var OtpInput = (props) => {
535
545
  const textChangeHandler = (event) => {
536
546
  const text = event.target.value;
537
547
  if (props.callback !== void 0) {
538
- props.callback(
539
- {
540
- name: props.name,
541
- value: text,
542
- index: props.index,
543
- groupKey: props.groupKey
544
- }
545
- );
548
+ props.callback({
549
+ name: props.name,
550
+ value: text,
551
+ index: props.index,
552
+ groupKey: props.groupKey
553
+ });
546
554
  }
547
555
  };
548
556
  const handleWheel = (event) => {
549
557
  event.preventDefault();
550
558
  };
551
- let value;
559
+ let value = "";
552
560
  if (props.value !== void 0 && props.value !== null) {
553
561
  value = props.value;
554
562
  }
555
- return /* @__PURE__ */ jsx9(React9.Fragment, { children: /* @__PURE__ */ jsxs9("label", { htmlFor: props.name, className: "block mb-1 w-full", children: [
556
- /* @__PURE__ */ jsx9("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
563
+ return /* @__PURE__ */ jsx9(React9.Fragment, { children: /* @__PURE__ */ jsxs9("label", { htmlFor: props.name, className: "block w-full", children: [
564
+ props?.attributes?.label && /* @__PURE__ */ jsx9("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
557
565
  " ",
558
566
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx9("span", { className: "bg-error-weak", children: "*" }),
559
567
  /* @__PURE__ */ jsx9(
@@ -564,6 +572,7 @@ var OtpInput = (props) => {
564
572
  id: props.name,
565
573
  value,
566
574
  onChange: textChangeHandler,
575
+ onBlur: props?.onBlur,
567
576
  autoComplete: "off",
568
577
  required: props?.attributes?.required,
569
578
  placeholder: props?.attributes?.placeholder,
@@ -573,7 +582,9 @@ var OtpInput = (props) => {
573
582
  minLength: props?.attributes?.minLength,
574
583
  autoFocus: props?.attributes?.autoFocus,
575
584
  onWheel: handleWheel,
576
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center"
585
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center transition-all duration-500 ease-in-out
586
+ ${props?.inputClasses ? props.inputClasses : ``}
587
+ `
577
588
  }
578
589
  ),
579
590
  /* @__PURE__ */ jsx9("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -1252,8 +1263,8 @@ var TimeInput = (props) => {
1252
1263
  });
1253
1264
  }
1254
1265
  };
1255
- return /* @__PURE__ */ jsx15(React15.Fragment, { children: /* @__PURE__ */ jsxs15("label", { className: "block mb-1", children: [
1256
- /* @__PURE__ */ jsx15("span", { className: "text-sm font-medium", children: props?.attributes?.label }),
1266
+ return /* @__PURE__ */ jsx15(React15.Fragment, { children: /* @__PURE__ */ jsxs15("label", { className: "block", children: [
1267
+ props?.attributes?.label && /* @__PURE__ */ jsx15("span", { className: "text-sm inline-block pb-1 font-medium", children: props?.attributes?.label }),
1257
1268
  " ",
1258
1269
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx15("span", { className: "bg-error-weak", children: "*" }),
1259
1270
  /* @__PURE__ */ jsx15("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ jsx15(
@@ -1264,9 +1275,13 @@ var TimeInput = (props) => {
1264
1275
  id: props.name,
1265
1276
  value: typeof props.value === "boolean" ? "" : props.value ?? "",
1266
1277
  onChange: timeChangeHandler,
1278
+ onBlur: props?.onBlur,
1279
+ autoFocus: props?.attributes?.autoFocus,
1267
1280
  required: props?.attributes?.required,
1268
1281
  disabled: props?.attributes?.readOnly,
1269
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none"
1282
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm transition-all duration-500 ease-in-out
1283
+ ${props?.inputClasses ? props.inputClasses : ``}
1284
+ `
1270
1285
  }
1271
1286
  ) }),
1272
1287
  /* @__PURE__ */ jsx15("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ?? "" })
@@ -3,7 +3,7 @@
3
3
 
4
4
  // src/components/controls/edit/InputControl.tsx
5
5
  import dynamic from "next/dynamic";
6
- var InputControl = dynamic(() => import("./InputControlClient-DZXYU5UB.mjs"), {
6
+ var InputControl = dynamic(() => import("./InputControlClient-AKEKO6LT.mjs"), {
7
7
  ssr: false
8
8
  });
9
9
  var InputControl_default = InputControl;
@@ -124,7 +124,7 @@ var MoneyInput = (props) => {
124
124
  event.preventDefault();
125
125
  event.target.blur();
126
126
  };
127
- let value;
127
+ let value = "";
128
128
  if (props.value !== void 0 && props.value !== null) {
129
129
  value = props.value;
130
130
  }
@@ -133,8 +133,8 @@ var MoneyInput = (props) => {
133
133
  e.preventDefault();
134
134
  }
135
135
  };
136
- return /* @__PURE__ */ jsx3(React3.Fragment, { children: /* @__PURE__ */ jsxs3("label", { className: "block mb-1", children: [
137
- /* @__PURE__ */ jsx3("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
136
+ return /* @__PURE__ */ jsx3(React3.Fragment, { children: /* @__PURE__ */ jsxs3("label", { className: "block", children: [
137
+ props?.attributes?.label && /* @__PURE__ */ jsx3("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
138
138
  " ",
139
139
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx3("span", { className: "bg-error-weak", children: "*" }),
140
140
  /* @__PURE__ */ jsx3(
@@ -146,6 +146,8 @@ var MoneyInput = (props) => {
146
146
  value,
147
147
  min: 0,
148
148
  onChange: textChangeHandler,
149
+ onBlur: props?.onBlur,
150
+ autoFocus: props?.attributes?.autoFocus,
149
151
  onWheel: handleWheel,
150
152
  onKeyDown: preventNegative,
151
153
  required: props?.attributes?.required,
@@ -154,7 +156,9 @@ var MoneyInput = (props) => {
154
156
  pattern: props?.attributes?.pattern,
155
157
  disabled: props?.attributes?.readOnly,
156
158
  minLength: props?.attributes?.minLength,
157
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
159
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
160
+ ${props?.inputClasses ? props.inputClasses : ``}
161
+ `
158
162
  }
159
163
  ),
160
164
  /* @__PURE__ */ jsx3("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -306,7 +310,7 @@ var PercentageInput = (props) => {
306
310
  event.preventDefault();
307
311
  event.target.blur();
308
312
  };
309
- let value;
313
+ let value = "";
310
314
  if (props.value !== void 0 && props.value !== null) {
311
315
  value = props.value;
312
316
  }
@@ -315,8 +319,8 @@ var PercentageInput = (props) => {
315
319
  e.preventDefault();
316
320
  }
317
321
  };
318
- return /* @__PURE__ */ jsx5(React5.Fragment, { children: /* @__PURE__ */ jsxs5("label", { className: "block mb-1", children: [
319
- /* @__PURE__ */ jsx5("span", { className: "text-sm font-medium ", children: props?.attributes?.label ? props?.attributes?.label + " %" : "" }),
322
+ return /* @__PURE__ */ jsx5(React5.Fragment, { children: /* @__PURE__ */ jsxs5("label", { className: "block", children: [
323
+ props?.attributes?.label && /* @__PURE__ */ jsx5("span", { className: "text-sm inline-block pb-1 font-medium ", children: props.attributes.label + " %" }),
320
324
  " ",
321
325
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx5("span", { className: "bg-error-weak", children: "*" }),
322
326
  /* @__PURE__ */ jsx5(
@@ -328,6 +332,8 @@ var PercentageInput = (props) => {
328
332
  value,
329
333
  min: 0,
330
334
  onChange: textChangeHandler,
335
+ onBlur: props?.onBlur,
336
+ autoFocus: props?.attributes?.autoFocus,
331
337
  onKeyDown: preventNegative,
332
338
  onWheel: handleWheel,
333
339
  required: props?.attributes?.required,
@@ -335,7 +341,9 @@ var PercentageInput = (props) => {
335
341
  pattern: props?.attributes?.pattern,
336
342
  disabled: props?.attributes?.readOnly,
337
343
  max: "100",
338
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
344
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
345
+ ${props?.inputClasses ? props.inputClasses : ``}
346
+ `
339
347
  }
340
348
  ),
341
349
  /* @__PURE__ */ jsx5("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -400,21 +408,19 @@ var NumberInput = (props) => {
400
408
  const textChangeHandler = (event) => {
401
409
  const text = event.target.value;
402
410
  if (props.callback !== void 0) {
403
- props.callback(
404
- {
405
- name: props.name,
406
- value: text,
407
- index: props.index,
408
- groupKey: props.groupKey
409
- }
410
- );
411
+ props.callback({
412
+ name: props.name,
413
+ value: text,
414
+ index: props.index,
415
+ groupKey: props.groupKey
416
+ });
411
417
  }
412
418
  };
413
419
  const handleWheel = (event) => {
414
420
  event.preventDefault();
415
421
  event.target.blur();
416
422
  };
417
- let value;
423
+ let value = "";
418
424
  if (props.value !== void 0 && props.value !== null) {
419
425
  value = props.value;
420
426
  }
@@ -431,14 +437,17 @@ var NumberInput = (props) => {
431
437
  value,
432
438
  onChange: textChangeHandler,
433
439
  onWheel: handleWheel,
440
+ onBlur: props?.onBlur,
441
+ autoFocus: props?.attributes?.autoFocus,
434
442
  required: props?.attributes?.required,
435
443
  placeholder: props?.attributes?.placeholder,
436
- onBlur: props?.onBlur,
437
444
  pattern: props?.attributes?.pattern,
438
445
  disabled: props?.attributes?.readOnly,
439
446
  max: props?.attributes?.maxValue,
440
447
  min: props?.attributes?.minValue,
441
- className: "peer py-1.5 block w-full rounded shadow-sm number-input input\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n "
448
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
449
+ ${props?.inputClasses ? props.inputClasses : ``}
450
+ `
442
451
  }
443
452
  ),
444
453
  /* @__PURE__ */ jsx7("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -467,6 +476,7 @@ var CheckboxInput = (props) => {
467
476
  if (props.value !== void 0 && props.value !== null && props.value !== "" && (props.value === true || props.value === "true" || props.value.toString().toLowerCase() === "true" || props.value === 1 || props.value === "1")) {
468
477
  value = true;
469
478
  }
479
+ const customClasses = (props?.inputClasses || "").split(/\s+/).filter((c) => !/^(w-|h-|block|inline-block|py-|px-|p-)/.test(c)).join(" ");
470
480
  return /* @__PURE__ */ jsx8(React8.Fragment, { children: /* @__PURE__ */ jsxs8("div", { className: `mb-1 ${isReadOnly ? "cursor-not-allowed" : ""}`, children: [
471
481
  props?.attributes?.label && /* @__PURE__ */ jsxs8(Fragment, { children: [
472
482
  /* @__PURE__ */ jsx8(
@@ -478,7 +488,7 @@ var CheckboxInput = (props) => {
478
488
  }
479
489
  ),
480
490
  " ",
481
- props?.attributes?.required && /* @__PURE__ */ jsx8("span", { className: "bg-error-weak !bg-transparent", children: "*" })
491
+ props?.attributes?.required && /* @__PURE__ */ jsx8("span", { className: "bg-error-weak", children: "*" })
482
492
  ] }),
483
493
  /* @__PURE__ */ jsx8(
484
494
  "input",
@@ -504,7 +514,7 @@ var CheckboxInput = (props) => {
504
514
  }
505
515
  },
506
516
  minLength: props?.attributes?.minLength,
507
- className: `peer mt-1 block rounded shadow-sm h-4 w-4 transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${props?.inputClasses ? props.inputClasses : ""}`
517
+ className: `peer mt-1 h-4 w-4 shrink-0 rounded shadow-sm transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${customClasses}`
508
518
  }
509
519
  ),
510
520
  /* @__PURE__ */ jsx8("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage || "" })
@@ -519,25 +529,23 @@ var OtpInput = (props) => {
519
529
  const textChangeHandler = (event) => {
520
530
  const text = event.target.value;
521
531
  if (props.callback !== void 0) {
522
- props.callback(
523
- {
524
- name: props.name,
525
- value: text,
526
- index: props.index,
527
- groupKey: props.groupKey
528
- }
529
- );
532
+ props.callback({
533
+ name: props.name,
534
+ value: text,
535
+ index: props.index,
536
+ groupKey: props.groupKey
537
+ });
530
538
  }
531
539
  };
532
540
  const handleWheel = (event) => {
533
541
  event.preventDefault();
534
542
  };
535
- let value;
543
+ let value = "";
536
544
  if (props.value !== void 0 && props.value !== null) {
537
545
  value = props.value;
538
546
  }
539
- return /* @__PURE__ */ jsx9(React9.Fragment, { children: /* @__PURE__ */ jsxs9("label", { htmlFor: props.name, className: "block mb-1 w-full", children: [
540
- /* @__PURE__ */ jsx9("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
547
+ return /* @__PURE__ */ jsx9(React9.Fragment, { children: /* @__PURE__ */ jsxs9("label", { htmlFor: props.name, className: "block w-full", children: [
548
+ props?.attributes?.label && /* @__PURE__ */ jsx9("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
541
549
  " ",
542
550
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx9("span", { className: "bg-error-weak", children: "*" }),
543
551
  /* @__PURE__ */ jsx9(
@@ -548,6 +556,7 @@ var OtpInput = (props) => {
548
556
  id: props.name,
549
557
  value,
550
558
  onChange: textChangeHandler,
559
+ onBlur: props?.onBlur,
551
560
  autoComplete: "off",
552
561
  required: props?.attributes?.required,
553
562
  placeholder: props?.attributes?.placeholder,
@@ -557,7 +566,9 @@ var OtpInput = (props) => {
557
566
  minLength: props?.attributes?.minLength,
558
567
  autoFocus: props?.attributes?.autoFocus,
559
568
  onWheel: handleWheel,
560
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center"
569
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center transition-all duration-500 ease-in-out
570
+ ${props?.inputClasses ? props.inputClasses : ``}
571
+ `
561
572
  }
562
573
  ),
563
574
  /* @__PURE__ */ jsx9("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -984,8 +995,8 @@ var TimeInput = (props) => {
984
995
  });
985
996
  }
986
997
  };
987
- return /* @__PURE__ */ jsx14(React14.Fragment, { children: /* @__PURE__ */ jsxs14("label", { className: "block mb-1", children: [
988
- /* @__PURE__ */ jsx14("span", { className: "text-sm font-medium", children: props?.attributes?.label }),
998
+ return /* @__PURE__ */ jsx14(React14.Fragment, { children: /* @__PURE__ */ jsxs14("label", { className: "block", children: [
999
+ props?.attributes?.label && /* @__PURE__ */ jsx14("span", { className: "text-sm inline-block pb-1 font-medium", children: props?.attributes?.label }),
989
1000
  " ",
990
1001
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ jsx14("span", { className: "bg-error-weak", children: "*" }),
991
1002
  /* @__PURE__ */ jsx14("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ jsx14(
@@ -996,9 +1007,13 @@ var TimeInput = (props) => {
996
1007
  id: props.name,
997
1008
  value: typeof props.value === "boolean" ? "" : props.value ?? "",
998
1009
  onChange: timeChangeHandler,
1010
+ onBlur: props?.onBlur,
1011
+ autoFocus: props?.attributes?.autoFocus,
999
1012
  required: props?.attributes?.required,
1000
1013
  disabled: props?.attributes?.readOnly,
1001
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none"
1014
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm transition-all duration-500 ease-in-out
1015
+ ${props?.inputClasses ? props.inputClasses : ``}
1016
+ `
1002
1017
  }
1003
1018
  ) }),
1004
1019
  /* @__PURE__ */ jsx14("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ?? "" })
package/dist/index.js CHANGED
@@ -2293,7 +2293,7 @@ var init_MoneyInput = __esm({
2293
2293
  event.preventDefault();
2294
2294
  event.target.blur();
2295
2295
  };
2296
- let value;
2296
+ let value = "";
2297
2297
  if (props.value !== void 0 && props.value !== null) {
2298
2298
  value = props.value;
2299
2299
  }
@@ -2302,8 +2302,8 @@ var init_MoneyInput = __esm({
2302
2302
  e.preventDefault();
2303
2303
  }
2304
2304
  };
2305
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react25.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("label", { className: "block mb-1", children: [
2306
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
2305
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react25.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("label", { className: "block", children: [
2306
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
2307
2307
  " ",
2308
2308
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "bg-error-weak", children: "*" }),
2309
2309
  /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
@@ -2315,6 +2315,8 @@ var init_MoneyInput = __esm({
2315
2315
  value,
2316
2316
  min: 0,
2317
2317
  onChange: textChangeHandler,
2318
+ onBlur: props?.onBlur,
2319
+ autoFocus: props?.attributes?.autoFocus,
2318
2320
  onWheel: handleWheel,
2319
2321
  onKeyDown: preventNegative,
2320
2322
  required: props?.attributes?.required,
@@ -2323,7 +2325,9 @@ var init_MoneyInput = __esm({
2323
2325
  pattern: props?.attributes?.pattern,
2324
2326
  disabled: props?.attributes?.readOnly,
2325
2327
  minLength: props?.attributes?.minLength,
2326
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
2328
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
2329
+ ${props?.inputClasses ? props.inputClasses : ``}
2330
+ `
2327
2331
  }
2328
2332
  ),
2329
2333
  /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -2522,7 +2526,7 @@ var init_PercentageInput = __esm({
2522
2526
  event.preventDefault();
2523
2527
  event.target.blur();
2524
2528
  };
2525
- let value;
2529
+ let value = "";
2526
2530
  if (props.value !== void 0 && props.value !== null) {
2527
2531
  value = props.value;
2528
2532
  }
@@ -2531,8 +2535,8 @@ var init_PercentageInput = __esm({
2531
2535
  e.preventDefault();
2532
2536
  }
2533
2537
  };
2534
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react27.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("label", { className: "block mb-1", children: [
2535
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "text-sm font-medium ", children: props?.attributes?.label ? props?.attributes?.label + " %" : "" }),
2538
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react27.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("label", { className: "block", children: [
2539
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "text-sm inline-block pb-1 font-medium ", children: props.attributes.label + " %" }),
2536
2540
  " ",
2537
2541
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "bg-error-weak", children: "*" }),
2538
2542
  /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
@@ -2544,6 +2548,8 @@ var init_PercentageInput = __esm({
2544
2548
  value,
2545
2549
  min: 0,
2546
2550
  onChange: textChangeHandler,
2551
+ onBlur: props?.onBlur,
2552
+ autoFocus: props?.attributes?.autoFocus,
2547
2553
  onKeyDown: preventNegative,
2548
2554
  onWheel: handleWheel,
2549
2555
  required: props?.attributes?.required,
@@ -2551,7 +2557,9 @@ var init_PercentageInput = __esm({
2551
2557
  pattern: props?.attributes?.pattern,
2552
2558
  disabled: props?.attributes?.readOnly,
2553
2559
  max: "100",
2554
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
2560
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
2561
+ ${props?.inputClasses ? props.inputClasses : ``}
2562
+ `
2555
2563
  }
2556
2564
  ),
2557
2565
  /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -2628,21 +2636,19 @@ var init_NumberInput = __esm({
2628
2636
  const textChangeHandler = (event) => {
2629
2637
  const text = event.target.value;
2630
2638
  if (props.callback !== void 0) {
2631
- props.callback(
2632
- {
2633
- name: props.name,
2634
- value: text,
2635
- index: props.index,
2636
- groupKey: props.groupKey
2637
- }
2638
- );
2639
+ props.callback({
2640
+ name: props.name,
2641
+ value: text,
2642
+ index: props.index,
2643
+ groupKey: props.groupKey
2644
+ });
2639
2645
  }
2640
2646
  };
2641
2647
  const handleWheel = (event) => {
2642
2648
  event.preventDefault();
2643
2649
  event.target.blur();
2644
2650
  };
2645
- let value;
2651
+ let value = "";
2646
2652
  if (props.value !== void 0 && props.value !== null) {
2647
2653
  value = props.value;
2648
2654
  }
@@ -2659,14 +2665,17 @@ var init_NumberInput = __esm({
2659
2665
  value,
2660
2666
  onChange: textChangeHandler,
2661
2667
  onWheel: handleWheel,
2668
+ onBlur: props?.onBlur,
2669
+ autoFocus: props?.attributes?.autoFocus,
2662
2670
  required: props?.attributes?.required,
2663
2671
  placeholder: props?.attributes?.placeholder,
2664
- onBlur: props?.onBlur,
2665
2672
  pattern: props?.attributes?.pattern,
2666
2673
  disabled: props?.attributes?.readOnly,
2667
2674
  max: props?.attributes?.maxValue,
2668
2675
  min: props?.attributes?.minValue,
2669
- className: "peer py-1.5 block w-full rounded shadow-sm number-input input\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n "
2676
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
2677
+ ${props?.inputClasses ? props.inputClasses : ``}
2678
+ `
2670
2679
  }
2671
2680
  ),
2672
2681
  /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -2701,6 +2710,7 @@ var init_CheckboxInput = __esm({
2701
2710
  if (props.value !== void 0 && props.value !== null && props.value !== "" && (props.value === true || props.value === "true" || props.value.toString().toLowerCase() === "true" || props.value === 1 || props.value === "1")) {
2702
2711
  value = true;
2703
2712
  }
2713
+ const customClasses = (props?.inputClasses || "").split(/\s+/).filter((c) => !/^(w-|h-|block|inline-block|py-|px-|p-)/.test(c)).join(" ");
2704
2714
  return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_react30.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: `mb-1 ${isReadOnly ? "cursor-not-allowed" : ""}`, children: [
2705
2715
  props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
2706
2716
  /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
@@ -2712,7 +2722,7 @@ var init_CheckboxInput = __esm({
2712
2722
  }
2713
2723
  ),
2714
2724
  " ",
2715
- props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: "bg-error-weak !bg-transparent", children: "*" })
2725
+ props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { className: "bg-error-weak", children: "*" })
2716
2726
  ] }),
2717
2727
  /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
2718
2728
  "input",
@@ -2738,7 +2748,7 @@ var init_CheckboxInput = __esm({
2738
2748
  }
2739
2749
  },
2740
2750
  minLength: props?.attributes?.minLength,
2741
- className: `peer mt-1 block rounded shadow-sm h-4 w-4 transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${props?.inputClasses ? props.inputClasses : ""}`
2751
+ className: `peer mt-1 h-4 w-4 shrink-0 rounded shadow-sm transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${customClasses}`
2742
2752
  }
2743
2753
  ),
2744
2754
  /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage || "" })
@@ -2759,25 +2769,23 @@ var init_OtpInput = __esm({
2759
2769
  const textChangeHandler = (event) => {
2760
2770
  const text = event.target.value;
2761
2771
  if (props.callback !== void 0) {
2762
- props.callback(
2763
- {
2764
- name: props.name,
2765
- value: text,
2766
- index: props.index,
2767
- groupKey: props.groupKey
2768
- }
2769
- );
2772
+ props.callback({
2773
+ name: props.name,
2774
+ value: text,
2775
+ index: props.index,
2776
+ groupKey: props.groupKey
2777
+ });
2770
2778
  }
2771
2779
  };
2772
2780
  const handleWheel = (event) => {
2773
2781
  event.preventDefault();
2774
2782
  };
2775
- let value;
2783
+ let value = "";
2776
2784
  if (props.value !== void 0 && props.value !== null) {
2777
2785
  value = props.value;
2778
2786
  }
2779
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_react31.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("label", { htmlFor: props.name, className: "block mb-1 w-full", children: [
2780
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
2787
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_react31.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("label", { htmlFor: props.name, className: "block w-full", children: [
2788
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
2781
2789
  " ",
2782
2790
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "bg-error-weak", children: "*" }),
2783
2791
  /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
@@ -2788,6 +2796,7 @@ var init_OtpInput = __esm({
2788
2796
  id: props.name,
2789
2797
  value,
2790
2798
  onChange: textChangeHandler,
2799
+ onBlur: props?.onBlur,
2791
2800
  autoComplete: "off",
2792
2801
  required: props?.attributes?.required,
2793
2802
  placeholder: props?.attributes?.placeholder,
@@ -2797,7 +2806,9 @@ var init_OtpInput = __esm({
2797
2806
  minLength: props?.attributes?.minLength,
2798
2807
  autoFocus: props?.attributes?.autoFocus,
2799
2808
  onWheel: handleWheel,
2800
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center"
2809
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center transition-all duration-500 ease-in-out
2810
+ ${props?.inputClasses ? props.inputClasses : ``}
2811
+ `
2801
2812
  }
2802
2813
  ),
2803
2814
  /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -3806,8 +3817,8 @@ var init_TimeInput = __esm({
3806
3817
  });
3807
3818
  }
3808
3819
  };
3809
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_react40.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("label", { className: "block mb-1", children: [
3810
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-medium", children: props?.attributes?.label }),
3820
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_react40.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("label", { className: "block", children: [
3821
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm inline-block pb-1 font-medium", children: props?.attributes?.label }),
3811
3822
  " ",
3812
3823
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "bg-error-weak", children: "*" }),
3813
3824
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
@@ -3818,9 +3829,13 @@ var init_TimeInput = __esm({
3818
3829
  id: props.name,
3819
3830
  value: typeof props.value === "boolean" ? "" : props.value ?? "",
3820
3831
  onChange: timeChangeHandler,
3832
+ onBlur: props?.onBlur,
3833
+ autoFocus: props?.attributes?.autoFocus,
3821
3834
  required: props?.attributes?.required,
3822
3835
  disabled: props?.attributes?.readOnly,
3823
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none"
3836
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm transition-all duration-500 ease-in-out
3837
+ ${props?.inputClasses ? props.inputClasses : ``}
3838
+ `
3824
3839
  }
3825
3840
  ) }),
3826
3841
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ?? "" })
package/dist/index.mjs CHANGED
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-SNDGEYWZ.mjs";
9
9
  import {
10
10
  InputControl_default
11
- } from "./chunk-6DLRMMX3.mjs";
11
+ } from "./chunk-5NI44TXC.mjs";
12
12
  import "./chunk-JDX47MFV.mjs";
13
13
  import {
14
14
  CheckboxInput_default,
@@ -27,7 +27,7 @@ import {
27
27
  SelectWithSearchInput_default,
28
28
  Select_default,
29
29
  TimeInput_default
30
- } from "./chunk-ACHYBM3S.mjs";
30
+ } from "./chunk-WQ7BAR74.mjs";
31
31
  import {
32
32
  Hyperlink,
33
33
  Icon_default
@@ -2391,7 +2391,7 @@ var GoogleMapNode_default = GoogleMapNode;
2391
2391
  // src/components/pageRenderingEngine/nodes/DivContainer.tsx
2392
2392
  import { jsx as jsx36, jsxs as jsxs14 } from "react/jsx-runtime";
2393
2393
  var Pagination = dynamic13(() => import("./Pagination-BDWRNSFB.mjs"), { ssr: true });
2394
- var DataBindingControls = dynamic13(() => import("./DataBindingControls-MBHEIZVZ.mjs"), {
2394
+ var DataBindingControls = dynamic13(() => import("./DataBindingControls-ZUBNGEMX.mjs"), {
2395
2395
  ssr: true
2396
2396
  });
2397
2397
  var Slider = dynamic13(() => import("./Slider-IVPJBPE5.mjs"), {
package/dist/server.js CHANGED
@@ -3807,7 +3807,7 @@ var init_MoneyInput = __esm({
3807
3807
  event.preventDefault();
3808
3808
  event.target.blur();
3809
3809
  };
3810
- let value;
3810
+ let value = "";
3811
3811
  if (props.value !== void 0 && props.value !== null) {
3812
3812
  value = props.value;
3813
3813
  }
@@ -3816,8 +3816,8 @@ var init_MoneyInput = __esm({
3816
3816
  e.preventDefault();
3817
3817
  }
3818
3818
  };
3819
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react41.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("label", { className: "block mb-1", children: [
3820
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
3819
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react41.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("label", { className: "block", children: [
3820
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
3821
3821
  " ",
3822
3822
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "bg-error-weak", children: "*" }),
3823
3823
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
@@ -3829,6 +3829,8 @@ var init_MoneyInput = __esm({
3829
3829
  value,
3830
3830
  min: 0,
3831
3831
  onChange: textChangeHandler,
3832
+ onBlur: props?.onBlur,
3833
+ autoFocus: props?.attributes?.autoFocus,
3832
3834
  onWheel: handleWheel,
3833
3835
  onKeyDown: preventNegative,
3834
3836
  required: props?.attributes?.required,
@@ -3837,7 +3839,9 @@ var init_MoneyInput = __esm({
3837
3839
  pattern: props?.attributes?.pattern,
3838
3840
  disabled: props?.attributes?.readOnly,
3839
3841
  minLength: props?.attributes?.minLength,
3840
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
3842
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
3843
+ ${props?.inputClasses ? props.inputClasses : ``}
3844
+ `
3841
3845
  }
3842
3846
  ),
3843
3847
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -4001,7 +4005,7 @@ var init_PercentageInput = __esm({
4001
4005
  event.preventDefault();
4002
4006
  event.target.blur();
4003
4007
  };
4004
- let value;
4008
+ let value = "";
4005
4009
  if (props.value !== void 0 && props.value !== null) {
4006
4010
  value = props.value;
4007
4011
  }
@@ -4010,8 +4014,8 @@ var init_PercentageInput = __esm({
4010
4014
  e.preventDefault();
4011
4015
  }
4012
4016
  };
4013
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react43.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("label", { className: "block mb-1", children: [
4014
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-sm font-medium ", children: props?.attributes?.label ? props?.attributes?.label + " %" : "" }),
4017
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react43.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("label", { className: "block", children: [
4018
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-sm inline-block pb-1 font-medium ", children: props.attributes.label + " %" }),
4015
4019
  " ",
4016
4020
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "bg-error-weak", children: "*" }),
4017
4021
  /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
@@ -4023,6 +4027,8 @@ var init_PercentageInput = __esm({
4023
4027
  value,
4024
4028
  min: 0,
4025
4029
  onChange: textChangeHandler,
4030
+ onBlur: props?.onBlur,
4031
+ autoFocus: props?.attributes?.autoFocus,
4026
4032
  onKeyDown: preventNegative,
4027
4033
  onWheel: handleWheel,
4028
4034
  required: props?.attributes?.required,
@@ -4030,7 +4036,9 @@ var init_PercentageInput = __esm({
4030
4036
  pattern: props?.attributes?.pattern,
4031
4037
  disabled: props?.attributes?.readOnly,
4032
4038
  max: "100",
4033
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm number-input"
4039
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
4040
+ ${props?.inputClasses ? props.inputClasses : ``}
4041
+ `
4034
4042
  }
4035
4043
  ),
4036
4044
  /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -4107,21 +4115,19 @@ var init_NumberInput = __esm({
4107
4115
  const textChangeHandler = (event) => {
4108
4116
  const text = event.target.value;
4109
4117
  if (props.callback !== void 0) {
4110
- props.callback(
4111
- {
4112
- name: props.name,
4113
- value: text,
4114
- index: props.index,
4115
- groupKey: props.groupKey
4116
- }
4117
- );
4118
+ props.callback({
4119
+ name: props.name,
4120
+ value: text,
4121
+ index: props.index,
4122
+ groupKey: props.groupKey
4123
+ });
4118
4124
  }
4119
4125
  };
4120
4126
  const handleWheel = (event) => {
4121
4127
  event.preventDefault();
4122
4128
  event.target.blur();
4123
4129
  };
4124
- let value;
4130
+ let value = "";
4125
4131
  if (props.value !== void 0 && props.value !== null) {
4126
4132
  value = props.value;
4127
4133
  }
@@ -4138,14 +4144,17 @@ var init_NumberInput = __esm({
4138
4144
  value,
4139
4145
  onChange: textChangeHandler,
4140
4146
  onWheel: handleWheel,
4147
+ onBlur: props?.onBlur,
4148
+ autoFocus: props?.attributes?.autoFocus,
4141
4149
  required: props?.attributes?.required,
4142
4150
  placeholder: props?.attributes?.placeholder,
4143
- onBlur: props?.onBlur,
4144
4151
  pattern: props?.attributes?.pattern,
4145
4152
  disabled: props?.attributes?.readOnly,
4146
4153
  max: props?.attributes?.maxValue,
4147
4154
  min: props?.attributes?.minValue,
4148
- className: "peer py-1.5 block w-full rounded shadow-sm number-input input\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n "
4155
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm number-input transition-all duration-500 ease-in-out
4156
+ ${props?.inputClasses ? props.inputClasses : ``}
4157
+ `
4149
4158
  }
4150
4159
  ),
4151
4160
  /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -4180,6 +4189,7 @@ var init_CheckboxInput = __esm({
4180
4189
  if (props.value !== void 0 && props.value !== null && props.value !== "" && (props.value === true || props.value === "true" || props.value.toString().toLowerCase() === "true" || props.value === 1 || props.value === "1")) {
4181
4190
  value = true;
4182
4191
  }
4192
+ const customClasses = (props?.inputClasses || "").split(/\s+/).filter((c) => !/^(w-|h-|block|inline-block|py-|px-|p-)/.test(c)).join(" ");
4183
4193
  return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_react46.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: `mb-1 ${isReadOnly ? "cursor-not-allowed" : ""}`, children: [
4184
4194
  props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_jsx_runtime71.Fragment, { children: [
4185
4195
  /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
@@ -4191,7 +4201,7 @@ var init_CheckboxInput = __esm({
4191
4201
  }
4192
4202
  ),
4193
4203
  " ",
4194
- props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: "bg-error-weak !bg-transparent", children: "*" })
4204
+ props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: "bg-error-weak", children: "*" })
4195
4205
  ] }),
4196
4206
  /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
4197
4207
  "input",
@@ -4217,7 +4227,7 @@ var init_CheckboxInput = __esm({
4217
4227
  }
4218
4228
  },
4219
4229
  minLength: props?.attributes?.minLength,
4220
- className: `peer mt-1 block rounded shadow-sm h-4 w-4 transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${props?.inputClasses ? props.inputClasses : ""}`
4230
+ className: `peer mt-1 h-4 w-4 shrink-0 rounded shadow-sm transition-all duration-200 ${isReadOnly ? "cursor-not-allowed pointer-events-none" : "cursor-pointer"} ${customClasses}`
4221
4231
  }
4222
4232
  ),
4223
4233
  /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage || "" })
@@ -4238,25 +4248,23 @@ var init_OtpInput = __esm({
4238
4248
  const textChangeHandler = (event) => {
4239
4249
  const text = event.target.value;
4240
4250
  if (props.callback !== void 0) {
4241
- props.callback(
4242
- {
4243
- name: props.name,
4244
- value: text,
4245
- index: props.index,
4246
- groupKey: props.groupKey
4247
- }
4248
- );
4251
+ props.callback({
4252
+ name: props.name,
4253
+ value: text,
4254
+ index: props.index,
4255
+ groupKey: props.groupKey
4256
+ });
4249
4257
  }
4250
4258
  };
4251
4259
  const handleWheel = (event) => {
4252
4260
  event.preventDefault();
4253
4261
  };
4254
- let value;
4262
+ let value = "";
4255
4263
  if (props.value !== void 0 && props.value !== null) {
4256
4264
  value = props.value;
4257
4265
  }
4258
- return /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react47.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("label", { htmlFor: props.name, className: "block mb-1 w-full", children: [
4259
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("span", { className: "text-sm font-medium ", children: props?.attributes?.label }),
4266
+ return /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react47.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("label", { htmlFor: props.name, className: "block w-full", children: [
4267
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("span", { className: "text-sm inline-block pb-1 font-medium ", children: props?.attributes?.label }),
4260
4268
  " ",
4261
4269
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("span", { className: "bg-error-weak", children: "*" }),
4262
4270
  /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
@@ -4267,6 +4275,7 @@ var init_OtpInput = __esm({
4267
4275
  id: props.name,
4268
4276
  value,
4269
4277
  onChange: textChangeHandler,
4278
+ onBlur: props?.onBlur,
4270
4279
  autoComplete: "off",
4271
4280
  required: props?.attributes?.required,
4272
4281
  placeholder: props?.attributes?.placeholder,
@@ -4276,7 +4285,9 @@ var init_OtpInput = __esm({
4276
4285
  minLength: props?.attributes?.minLength,
4277
4286
  autoFocus: props?.attributes?.autoFocus,
4278
4287
  onWheel: handleWheel,
4279
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center"
4288
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm tracking-[1.25em] text-center transition-all duration-500 ease-in-out
4289
+ ${props?.inputClasses ? props.inputClasses : ``}
4290
+ `
4280
4291
  }
4281
4292
  ),
4282
4293
  /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ? props.attributes.errorMessage : "" })
@@ -4990,8 +5001,8 @@ var init_TimeInput = __esm({
4990
5001
  });
4991
5002
  }
4992
5003
  };
4993
- return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_react53.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("label", { className: "block mb-1", children: [
4994
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "text-sm font-medium", children: props?.attributes?.label }),
5004
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_react53.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("label", { className: "block", children: [
5005
+ props?.attributes?.label && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "text-sm inline-block pb-1 font-medium", children: props?.attributes?.label }),
4995
5006
  " ",
4996
5007
  props?.attributes?.label && props?.attributes?.required && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "bg-error-weak", children: "*" }),
4997
5008
  /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
@@ -5002,9 +5013,13 @@ var init_TimeInput = __esm({
5002
5013
  id: props.name,
5003
5014
  value: typeof props.value === "boolean" ? "" : props.value ?? "",
5004
5015
  onChange: timeChangeHandler,
5016
+ onBlur: props?.onBlur,
5017
+ autoFocus: props?.attributes?.autoFocus,
5005
5018
  required: props?.attributes?.required,
5006
5019
  disabled: props?.attributes?.readOnly,
5007
- className: "peer mt-1 py-1.5 block w-full rounded shadow-sm\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none"
5020
+ className: `peer input mt-1 py-1.5 block w-full rounded shadow-sm transition-all duration-500 ease-in-out
5021
+ ${props?.inputClasses ? props.inputClasses : ``}
5022
+ `
5008
5023
  }
5009
5024
  ) }),
5010
5025
  /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("p", { className: "hidden group-[.validated]:peer-invalid:block mt-1 bg-error-weak text-sm", children: props?.attributes?.errorMessage ?? "" })
package/dist/server.mjs CHANGED
@@ -2359,7 +2359,7 @@ var GoogleMapNode_default = GoogleMapNode;
2359
2359
  // src/components/pageRenderingEngine/nodes/DivContainer.tsx
2360
2360
  import { jsx as jsx36, jsxs as jsxs14 } from "react/jsx-runtime";
2361
2361
  var Pagination = dynamic13(() => import("./Pagination-OSLUL7SF.mjs"), { ssr: true });
2362
- var DataBindingControls = dynamic13(() => import("./DataBindingControls-BJLDJL7F.mjs"), {
2362
+ var DataBindingControls = dynamic13(() => import("./DataBindingControls-KJJLT3V6.mjs"), {
2363
2363
  ssr: true
2364
2364
  });
2365
2365
  var Slider = dynamic13(() => import("./Slider-QIGKP6AE.mjs"), {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clyrex-digital/clyrex-controls-dev",
3
- "version": "0.8.1-dev.20260919092040",
3
+ "version": "0.8.1-dev.20260919110110",
4
4
  "description": "Reusable React components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",