@uipath/apollo-wind 2.16.1 → 2.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/forms/field-renderer.cjs +68 -32
- package/dist/components/forms/field-renderer.js +68 -32
- package/dist/components/forms/form-schema.d.ts +16 -0
- package/dist/components/ui/calendar.cjs +0 -1
- package/dist/components/ui/calendar.js +0 -1
- package/dist/components/ui/index.cjs +12 -12
- package/package.json +4 -7
|
@@ -450,38 +450,12 @@ function FieldByType({ field, formField, error, disabled, required, options }) {
|
|
|
450
450
|
]
|
|
451
451
|
});
|
|
452
452
|
case 'slider':
|
|
453
|
-
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
required: required,
|
|
460
|
-
children: field.label
|
|
461
|
-
}),
|
|
462
|
-
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
|
|
463
|
-
className: "text-sm text-muted-foreground",
|
|
464
|
-
children: formField.value
|
|
465
|
-
})
|
|
466
|
-
]
|
|
467
|
-
}),
|
|
468
|
-
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(slider_cjs_namespaceObject.Slider, {
|
|
469
|
-
value: [
|
|
470
|
-
formField.value
|
|
471
|
-
],
|
|
472
|
-
onValueChange: (values)=>formField.onChange(values[0]),
|
|
473
|
-
min: field.min || 0,
|
|
474
|
-
max: field.max || 100,
|
|
475
|
-
step: field.step || 1,
|
|
476
|
-
disabled: disabled
|
|
477
|
-
}),
|
|
478
|
-
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(FormDescription, {
|
|
479
|
-
children: field.description
|
|
480
|
-
}),
|
|
481
|
-
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(FormError, {
|
|
482
|
-
children: error
|
|
483
|
-
})
|
|
484
|
-
]
|
|
453
|
+
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(SliderField, {
|
|
454
|
+
field: field,
|
|
455
|
+
formField: formField,
|
|
456
|
+
error: error,
|
|
457
|
+
disabled: disabled,
|
|
458
|
+
required: required
|
|
485
459
|
});
|
|
486
460
|
case 'date':
|
|
487
461
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(FormField, {
|
|
@@ -588,6 +562,68 @@ function FormError({ children }) {
|
|
|
588
562
|
children: children
|
|
589
563
|
});
|
|
590
564
|
}
|
|
565
|
+
function SliderField({ field, formField, error, disabled, required }) {
|
|
566
|
+
const { watch } = (0, external_react_hook_form_namespaceObject.useFormContext)();
|
|
567
|
+
const watchedMax = field.maxRef ? watch(field.maxRef.fromField) : void 0;
|
|
568
|
+
const resolvedMax = resolveSliderMax(field, watchedMax);
|
|
569
|
+
const prevMaxRef = (0, external_react_namespaceObject.useRef)(resolvedMax);
|
|
570
|
+
(0, external_react_namespaceObject.useEffect)(()=>{
|
|
571
|
+
if (resolvedMax === prevMaxRef.current) return;
|
|
572
|
+
prevMaxRef.current = resolvedMax;
|
|
573
|
+
const v = formField.value;
|
|
574
|
+
if ('number' == typeof v && v > resolvedMax) formField.onChange(resolvedMax);
|
|
575
|
+
}, [
|
|
576
|
+
resolvedMax,
|
|
577
|
+
formField.value,
|
|
578
|
+
formField.onChange
|
|
579
|
+
]);
|
|
580
|
+
const displayValue = (()=>{
|
|
581
|
+
const v = formField.value;
|
|
582
|
+
if ('number' == typeof v) return Math.min(v, resolvedMax);
|
|
583
|
+
return v;
|
|
584
|
+
})();
|
|
585
|
+
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(FormField, {
|
|
586
|
+
children: [
|
|
587
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
|
|
588
|
+
className: "flex justify-between",
|
|
589
|
+
children: [
|
|
590
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(FormLabel, {
|
|
591
|
+
required: required,
|
|
592
|
+
children: field.label
|
|
593
|
+
}),
|
|
594
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
|
|
595
|
+
className: "text-sm text-muted-foreground",
|
|
596
|
+
children: displayValue
|
|
597
|
+
})
|
|
598
|
+
]
|
|
599
|
+
}),
|
|
600
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(slider_cjs_namespaceObject.Slider, {
|
|
601
|
+
value: [
|
|
602
|
+
displayValue ?? field.min ?? 0
|
|
603
|
+
],
|
|
604
|
+
onValueChange: (values)=>formField.onChange(values[0]),
|
|
605
|
+
min: field.min || 0,
|
|
606
|
+
max: resolvedMax,
|
|
607
|
+
step: field.step || 1,
|
|
608
|
+
disabled: disabled
|
|
609
|
+
}),
|
|
610
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(FormDescription, {
|
|
611
|
+
children: field.description
|
|
612
|
+
}),
|
|
613
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(FormError, {
|
|
614
|
+
children: error
|
|
615
|
+
})
|
|
616
|
+
]
|
|
617
|
+
});
|
|
618
|
+
}
|
|
619
|
+
function resolveSliderMax(field, watchedValue) {
|
|
620
|
+
if (field.maxRef) {
|
|
621
|
+
if ('number' == typeof watchedValue && Number.isFinite(watchedValue) && watchedValue > 0) return watchedValue;
|
|
622
|
+
if ('number' == typeof field.maxRef.fallback) return field.maxRef.fallback;
|
|
623
|
+
}
|
|
624
|
+
if ('number' == typeof field.max) return field.max;
|
|
625
|
+
return 100;
|
|
626
|
+
}
|
|
591
627
|
exports.FormFieldRenderer = __webpack_exports__.FormFieldRenderer;
|
|
592
628
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
593
629
|
"FormFieldRenderer"
|
|
@@ -422,38 +422,12 @@ function FieldByType({ field, formField, error, disabled, required, options }) {
|
|
|
422
422
|
]
|
|
423
423
|
});
|
|
424
424
|
case 'slider':
|
|
425
|
-
return /*#__PURE__*/
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
required: required,
|
|
432
|
-
children: field.label
|
|
433
|
-
}),
|
|
434
|
-
/*#__PURE__*/ jsx("span", {
|
|
435
|
-
className: "text-sm text-muted-foreground",
|
|
436
|
-
children: formField.value
|
|
437
|
-
})
|
|
438
|
-
]
|
|
439
|
-
}),
|
|
440
|
-
/*#__PURE__*/ jsx(Slider, {
|
|
441
|
-
value: [
|
|
442
|
-
formField.value
|
|
443
|
-
],
|
|
444
|
-
onValueChange: (values)=>formField.onChange(values[0]),
|
|
445
|
-
min: field.min || 0,
|
|
446
|
-
max: field.max || 100,
|
|
447
|
-
step: field.step || 1,
|
|
448
|
-
disabled: disabled
|
|
449
|
-
}),
|
|
450
|
-
/*#__PURE__*/ jsx(FormDescription, {
|
|
451
|
-
children: field.description
|
|
452
|
-
}),
|
|
453
|
-
/*#__PURE__*/ jsx(FormError, {
|
|
454
|
-
children: error
|
|
455
|
-
})
|
|
456
|
-
]
|
|
425
|
+
return /*#__PURE__*/ jsx(SliderField, {
|
|
426
|
+
field: field,
|
|
427
|
+
formField: formField,
|
|
428
|
+
error: error,
|
|
429
|
+
disabled: disabled,
|
|
430
|
+
required: required
|
|
457
431
|
});
|
|
458
432
|
case 'date':
|
|
459
433
|
return /*#__PURE__*/ jsxs(FormField, {
|
|
@@ -560,4 +534,66 @@ function FormError({ children }) {
|
|
|
560
534
|
children: children
|
|
561
535
|
});
|
|
562
536
|
}
|
|
537
|
+
function SliderField({ field, formField, error, disabled, required }) {
|
|
538
|
+
const { watch } = useFormContext();
|
|
539
|
+
const watchedMax = field.maxRef ? watch(field.maxRef.fromField) : void 0;
|
|
540
|
+
const resolvedMax = resolveSliderMax(field, watchedMax);
|
|
541
|
+
const prevMaxRef = useRef(resolvedMax);
|
|
542
|
+
useEffect(()=>{
|
|
543
|
+
if (resolvedMax === prevMaxRef.current) return;
|
|
544
|
+
prevMaxRef.current = resolvedMax;
|
|
545
|
+
const v = formField.value;
|
|
546
|
+
if ('number' == typeof v && v > resolvedMax) formField.onChange(resolvedMax);
|
|
547
|
+
}, [
|
|
548
|
+
resolvedMax,
|
|
549
|
+
formField.value,
|
|
550
|
+
formField.onChange
|
|
551
|
+
]);
|
|
552
|
+
const displayValue = (()=>{
|
|
553
|
+
const v = formField.value;
|
|
554
|
+
if ('number' == typeof v) return Math.min(v, resolvedMax);
|
|
555
|
+
return v;
|
|
556
|
+
})();
|
|
557
|
+
return /*#__PURE__*/ jsxs(FormField, {
|
|
558
|
+
children: [
|
|
559
|
+
/*#__PURE__*/ jsxs("div", {
|
|
560
|
+
className: "flex justify-between",
|
|
561
|
+
children: [
|
|
562
|
+
/*#__PURE__*/ jsx(FormLabel, {
|
|
563
|
+
required: required,
|
|
564
|
+
children: field.label
|
|
565
|
+
}),
|
|
566
|
+
/*#__PURE__*/ jsx("span", {
|
|
567
|
+
className: "text-sm text-muted-foreground",
|
|
568
|
+
children: displayValue
|
|
569
|
+
})
|
|
570
|
+
]
|
|
571
|
+
}),
|
|
572
|
+
/*#__PURE__*/ jsx(Slider, {
|
|
573
|
+
value: [
|
|
574
|
+
displayValue ?? field.min ?? 0
|
|
575
|
+
],
|
|
576
|
+
onValueChange: (values)=>formField.onChange(values[0]),
|
|
577
|
+
min: field.min || 0,
|
|
578
|
+
max: resolvedMax,
|
|
579
|
+
step: field.step || 1,
|
|
580
|
+
disabled: disabled
|
|
581
|
+
}),
|
|
582
|
+
/*#__PURE__*/ jsx(FormDescription, {
|
|
583
|
+
children: field.description
|
|
584
|
+
}),
|
|
585
|
+
/*#__PURE__*/ jsx(FormError, {
|
|
586
|
+
children: error
|
|
587
|
+
})
|
|
588
|
+
]
|
|
589
|
+
});
|
|
590
|
+
}
|
|
591
|
+
function resolveSliderMax(field, watchedValue) {
|
|
592
|
+
if (field.maxRef) {
|
|
593
|
+
if ('number' == typeof watchedValue && Number.isFinite(watchedValue) && watchedValue > 0) return watchedValue;
|
|
594
|
+
if ('number' == typeof field.maxRef.fallback) return field.maxRef.fallback;
|
|
595
|
+
}
|
|
596
|
+
if ('number' == typeof field.max) return field.max;
|
|
597
|
+
return 100;
|
|
598
|
+
}
|
|
563
599
|
export { FormFieldRenderer };
|
|
@@ -184,10 +184,26 @@ export interface CheckboxFieldMetadata extends BaseFieldMetadata {
|
|
|
184
184
|
export interface SwitchFieldMetadata extends BaseFieldMetadata {
|
|
185
185
|
type: 'switch';
|
|
186
186
|
}
|
|
187
|
+
/**
|
|
188
|
+
* Reference to another form field's value, used to drive a numeric property
|
|
189
|
+
* (e.g. a slider's `max`) at render time.
|
|
190
|
+
*/
|
|
191
|
+
export interface FieldRef {
|
|
192
|
+
/** Form field path to watch (react-hook-form name). */
|
|
193
|
+
fromField: string;
|
|
194
|
+
/** Used when the watched value is missing or not a finite positive number. */
|
|
195
|
+
fallback?: number;
|
|
196
|
+
}
|
|
187
197
|
export interface SliderFieldMetadata extends BaseFieldMetadata {
|
|
188
198
|
type: 'slider';
|
|
189
199
|
min?: number;
|
|
190
200
|
max?: number;
|
|
201
|
+
/**
|
|
202
|
+
* Dynamic upper bound sourced from another form field. Takes precedence
|
|
203
|
+
* over `max` when present. The watched field's value is used as the slider's
|
|
204
|
+
* `max` when it's a finite positive number; otherwise `fallback` is used.
|
|
205
|
+
*/
|
|
206
|
+
maxRef?: FieldRef;
|
|
191
207
|
step?: number;
|
|
192
208
|
}
|
|
193
209
|
export interface DateFieldMetadata extends BaseFieldMetadata {
|
|
@@ -62,7 +62,6 @@ function Calendar({ className, classNames, showOutsideDays = true, captionLayout
|
|
|
62
62
|
dropdown_root: (0, index_cjs_namespaceObject.cn)('has-focus:border-ring border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] relative rounded-md border', defaultClassNames.dropdown_root),
|
|
63
63
|
dropdown: (0, index_cjs_namespaceObject.cn)('bg-popover absolute inset-0 opacity-0', defaultClassNames.dropdown),
|
|
64
64
|
caption_label: (0, index_cjs_namespaceObject.cn)('select-none font-medium', 'label' === captionLayout ? 'text-sm' : '[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm [&>svg]:size-3.5', defaultClassNames.caption_label),
|
|
65
|
-
table: 'w-full border-collapse',
|
|
66
65
|
weekdays: (0, index_cjs_namespaceObject.cn)('flex gap-2', defaultClassNames.weekdays),
|
|
67
66
|
weekday: (0, index_cjs_namespaceObject.cn)('text-muted-foreground flex-1 select-none rounded-md text-[0.8rem] font-normal', defaultClassNames.weekday),
|
|
68
67
|
week: (0, index_cjs_namespaceObject.cn)('mt-2 flex w-full gap-2', defaultClassNames.week),
|
|
@@ -33,7 +33,6 @@ function Calendar({ className, classNames, showOutsideDays = true, captionLayout
|
|
|
33
33
|
dropdown_root: cn('has-focus:border-ring border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] relative rounded-md border', defaultClassNames.dropdown_root),
|
|
34
34
|
dropdown: cn('bg-popover absolute inset-0 opacity-0', defaultClassNames.dropdown),
|
|
35
35
|
caption_label: cn('select-none font-medium', 'label' === captionLayout ? 'text-sm' : '[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm [&>svg]:size-3.5', defaultClassNames.caption_label),
|
|
36
|
-
table: 'w-full border-collapse',
|
|
37
36
|
weekdays: cn('flex gap-2', defaultClassNames.weekdays),
|
|
38
37
|
weekday: cn('text-muted-foreground flex-1 select-none rounded-md text-[0.8rem] font-normal', defaultClassNames.weekday),
|
|
39
38
|
week: cn('mt-2 flex w-full gap-2', defaultClassNames.week),
|
|
@@ -27,10 +27,10 @@ var __webpack_modules__ = {
|
|
|
27
27
|
"@/components/ui/button" (module) {
|
|
28
28
|
module.exports = require("./button.cjs");
|
|
29
29
|
},
|
|
30
|
-
"
|
|
30
|
+
"@/components/ui/calendar" (module) {
|
|
31
31
|
module.exports = require("./calendar.cjs");
|
|
32
32
|
},
|
|
33
|
-
"
|
|
33
|
+
"@/components/ui/card" (module) {
|
|
34
34
|
module.exports = require("./card.cjs");
|
|
35
35
|
},
|
|
36
36
|
"@/components/ui/checkbox" (module) {
|
|
@@ -57,13 +57,13 @@ var __webpack_modules__ = {
|
|
|
57
57
|
"./datetime-picker" (module) {
|
|
58
58
|
module.exports = require("./datetime-picker.cjs");
|
|
59
59
|
},
|
|
60
|
-
"
|
|
60
|
+
"@/components/ui/dialog" (module) {
|
|
61
61
|
module.exports = require("./dialog.cjs");
|
|
62
62
|
},
|
|
63
63
|
"@/components/ui/dropdown-menu" (module) {
|
|
64
64
|
module.exports = require("./dropdown-menu.cjs");
|
|
65
65
|
},
|
|
66
|
-
"
|
|
66
|
+
"@/components/ui/editable-cell" (module) {
|
|
67
67
|
module.exports = require("./editable-cell.cjs");
|
|
68
68
|
},
|
|
69
69
|
"./empty-state" (module) {
|
|
@@ -78,7 +78,7 @@ var __webpack_modules__ = {
|
|
|
78
78
|
"@/components/ui/input" (module) {
|
|
79
79
|
module.exports = require("./input.cjs");
|
|
80
80
|
},
|
|
81
|
-
"
|
|
81
|
+
"@/components/ui/label" (module) {
|
|
82
82
|
module.exports = require("./label.cjs");
|
|
83
83
|
},
|
|
84
84
|
"./layout" (module) {
|
|
@@ -138,7 +138,7 @@ var __webpack_modules__ = {
|
|
|
138
138
|
"./switch" (module) {
|
|
139
139
|
module.exports = require("./switch.cjs");
|
|
140
140
|
},
|
|
141
|
-
"
|
|
141
|
+
"@/components/ui/table" (module) {
|
|
142
142
|
module.exports = require("./table.cjs");
|
|
143
143
|
},
|
|
144
144
|
"./tabs" (module) {
|
|
@@ -269,14 +269,14 @@ var __webpack_exports__ = {};
|
|
|
269
269
|
"default"
|
|
270
270
|
].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_button_group__rspack_import_8[__rspack_import_key];
|
|
271
271
|
__webpack_require__.d(__webpack_exports__, __rspack_reexport);
|
|
272
|
-
var _calendar__rspack_import_9 = __webpack_require__("
|
|
272
|
+
var _calendar__rspack_import_9 = __webpack_require__("@/components/ui/calendar");
|
|
273
273
|
var __rspack_reexport = {};
|
|
274
274
|
for(const __rspack_import_key in _calendar__rspack_import_9)if ([
|
|
275
275
|
"TreeView",
|
|
276
276
|
"default"
|
|
277
277
|
].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_calendar__rspack_import_9[__rspack_import_key];
|
|
278
278
|
__webpack_require__.d(__webpack_exports__, __rspack_reexport);
|
|
279
|
-
var _card__rspack_import_10 = __webpack_require__("
|
|
279
|
+
var _card__rspack_import_10 = __webpack_require__("@/components/ui/card");
|
|
280
280
|
var __rspack_reexport = {};
|
|
281
281
|
for(const __rspack_import_key in _card__rspack_import_10)if ([
|
|
282
282
|
"TreeView",
|
|
@@ -339,7 +339,7 @@ var __webpack_exports__ = {};
|
|
|
339
339
|
"default"
|
|
340
340
|
].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_datetime_picker__rspack_import_18[__rspack_import_key];
|
|
341
341
|
__webpack_require__.d(__webpack_exports__, __rspack_reexport);
|
|
342
|
-
var _dialog__rspack_import_19 = __webpack_require__("
|
|
342
|
+
var _dialog__rspack_import_19 = __webpack_require__("@/components/ui/dialog");
|
|
343
343
|
var __rspack_reexport = {};
|
|
344
344
|
for(const __rspack_import_key in _dialog__rspack_import_19)if ([
|
|
345
345
|
"TreeView",
|
|
@@ -353,7 +353,7 @@ var __webpack_exports__ = {};
|
|
|
353
353
|
"default"
|
|
354
354
|
].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_dropdown_menu__rspack_import_20[__rspack_import_key];
|
|
355
355
|
__webpack_require__.d(__webpack_exports__, __rspack_reexport);
|
|
356
|
-
var _editable_cell__rspack_import_21 = __webpack_require__("
|
|
356
|
+
var _editable_cell__rspack_import_21 = __webpack_require__("@/components/ui/editable-cell");
|
|
357
357
|
var __rspack_reexport = {};
|
|
358
358
|
for(const __rspack_import_key in _editable_cell__rspack_import_21)if ([
|
|
359
359
|
"TreeView",
|
|
@@ -388,7 +388,7 @@ var __webpack_exports__ = {};
|
|
|
388
388
|
"default"
|
|
389
389
|
].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_input__rspack_import_25[__rspack_import_key];
|
|
390
390
|
__webpack_require__.d(__webpack_exports__, __rspack_reexport);
|
|
391
|
-
var _label__rspack_import_26 = __webpack_require__("
|
|
391
|
+
var _label__rspack_import_26 = __webpack_require__("@/components/ui/label");
|
|
392
392
|
var __rspack_reexport = {};
|
|
393
393
|
for(const __rspack_import_key in _label__rspack_import_26)if ([
|
|
394
394
|
"TreeView",
|
|
@@ -528,7 +528,7 @@ var __webpack_exports__ = {};
|
|
|
528
528
|
"default"
|
|
529
529
|
].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_switch__rspack_import_45[__rspack_import_key];
|
|
530
530
|
__webpack_require__.d(__webpack_exports__, __rspack_reexport);
|
|
531
|
-
var _table__rspack_import_46 = __webpack_require__("
|
|
531
|
+
var _table__rspack_import_46 = __webpack_require__("@/components/ui/table");
|
|
532
532
|
var __rspack_reexport = {};
|
|
533
533
|
for(const __rspack_import_key in _table__rspack_import_46)if ([
|
|
534
534
|
"TreeView",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uipath/apollo-wind",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.17.0",
|
|
4
4
|
"description": "UiPath wind design system - A Tailwind CSS based React component library",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -164,15 +164,12 @@
|
|
|
164
164
|
"author": "UiPath",
|
|
165
165
|
"license": "MIT",
|
|
166
166
|
"publishConfig": {
|
|
167
|
-
"access": "public"
|
|
168
|
-
"registry": "https://registry.npmjs.org"
|
|
167
|
+
"access": "public"
|
|
169
168
|
},
|
|
170
169
|
"repository": {
|
|
171
170
|
"type": "git",
|
|
172
|
-
"url": "https://github.com/
|
|
173
|
-
|
|
174
|
-
"bugs": {
|
|
175
|
-
"url": "https://github.com/uipath/apollo-ui/issues"
|
|
171
|
+
"url": "https://github.com/UiPath/apollo-ui.git",
|
|
172
|
+
"directory": "packages/apollo-wind"
|
|
176
173
|
},
|
|
177
174
|
"homepage": "https://apollo-design.vercel.app",
|
|
178
175
|
"scripts": {
|