@bpmn-io/form-js-viewer 0.14.1 → 0.15.0-alpha.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/assets/form-js-base.css +94 -45
- package/dist/assets/form-js.css +90 -41
- package/dist/index.cjs +493 -304
- package/dist/index.cjs.map +1 -1
- package/dist/index.es.js +493 -304
- package/dist/index.es.js.map +1 -1
- package/dist/types/Form.d.ts +1 -1
- package/dist/types/core/EventBus.d.ts +1 -1
- package/dist/types/core/index.d.ts +2 -1
- package/dist/types/render/Renderer.d.ts +2 -2
- package/dist/types/render/components/Util.d.ts +2 -2
- package/dist/types/render/components/form-fields/Button.d.ts +9 -7
- package/dist/types/render/components/form-fields/Checkbox.d.ts +11 -9
- package/dist/types/render/components/form-fields/Checklist.d.ts +14 -12
- package/dist/types/render/components/form-fields/Datetime.d.ts +9 -7
- package/dist/types/render/components/form-fields/Default.d.ts +9 -7
- package/dist/types/render/components/form-fields/Image.d.ts +7 -5
- package/dist/types/render/components/form-fields/Number.d.ts +12 -10
- package/dist/types/render/components/form-fields/Radio.d.ts +14 -12
- package/dist/types/render/components/form-fields/Select.d.ts +14 -12
- package/dist/types/render/components/form-fields/Taglist.d.ts +14 -12
- package/dist/types/render/components/form-fields/Text.d.ts +9 -7
- package/dist/types/render/components/form-fields/Textarea.d.ts +11 -9
- package/dist/types/render/components/form-fields/Textfield.d.ts +11 -9
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -476,6 +476,30 @@ var FN_REF = '__fn';
|
|
|
476
476
|
var DEFAULT_PRIORITY = 1000;
|
|
477
477
|
var slice = Array.prototype.slice;
|
|
478
478
|
|
|
479
|
+
/**
|
|
480
|
+
* @typedef { {
|
|
481
|
+
* stopPropagation(): void;
|
|
482
|
+
* preventDefault(): void;
|
|
483
|
+
* cancelBubble: boolean;
|
|
484
|
+
* defaultPrevented: boolean;
|
|
485
|
+
* returnValue: any;
|
|
486
|
+
* } } Event
|
|
487
|
+
*/
|
|
488
|
+
|
|
489
|
+
/**
|
|
490
|
+
* @template E
|
|
491
|
+
*
|
|
492
|
+
* @typedef { (event: E & Event, ...any) => any } EventBusEventCallback
|
|
493
|
+
*/
|
|
494
|
+
|
|
495
|
+
/**
|
|
496
|
+
* @typedef { {
|
|
497
|
+
* priority: number;
|
|
498
|
+
* next: EventBusListener | null;
|
|
499
|
+
* callback: EventBusEventCallback<any>;
|
|
500
|
+
* } } EventBusListener
|
|
501
|
+
*/
|
|
502
|
+
|
|
479
503
|
/**
|
|
480
504
|
* A general purpose event bus.
|
|
481
505
|
*
|
|
@@ -560,6 +584,9 @@ var slice = Array.prototype.slice;
|
|
|
560
584
|
* ```
|
|
561
585
|
*/
|
|
562
586
|
function EventBus() {
|
|
587
|
+
/**
|
|
588
|
+
* @type { Record<string, EventBusListener> }
|
|
589
|
+
*/
|
|
563
590
|
this._listeners = {};
|
|
564
591
|
|
|
565
592
|
// cleanup on destroy on lowest priority to allow
|
|
@@ -579,10 +606,12 @@ function EventBus() {
|
|
|
579
606
|
*
|
|
580
607
|
* Returning anything but `undefined` from a listener will stop the listener propagation.
|
|
581
608
|
*
|
|
582
|
-
* @
|
|
583
|
-
*
|
|
584
|
-
* @param {
|
|
585
|
-
* @param {
|
|
609
|
+
* @template T
|
|
610
|
+
*
|
|
611
|
+
* @param {string|string[]} events to subscribe to
|
|
612
|
+
* @param {number} [priority=1000] listen priority
|
|
613
|
+
* @param {EventBusEventCallback<T>} callback
|
|
614
|
+
* @param {any} [that] callback context
|
|
586
615
|
*/
|
|
587
616
|
EventBus.prototype.on = function (events, priority, callback, that) {
|
|
588
617
|
events = minDash.isArray(events) ? events : [events];
|
|
@@ -614,14 +643,16 @@ EventBus.prototype.on = function (events, priority, callback, that) {
|
|
|
614
643
|
};
|
|
615
644
|
|
|
616
645
|
/**
|
|
617
|
-
* Register an event listener that is
|
|
646
|
+
* Register an event listener that is called only once.
|
|
647
|
+
*
|
|
648
|
+
* @template T
|
|
618
649
|
*
|
|
619
|
-
* @param {string}
|
|
620
|
-
* @param {number} [priority=1000] the priority
|
|
621
|
-
* @param {
|
|
622
|
-
* @param {
|
|
650
|
+
* @param {string|string[]} events to subscribe to
|
|
651
|
+
* @param {number} [priority=1000] the listen priority
|
|
652
|
+
* @param {EventBusEventCallback<T>} callback
|
|
653
|
+
* @param {any} [that] callback context
|
|
623
654
|
*/
|
|
624
|
-
EventBus.prototype.once = function (
|
|
655
|
+
EventBus.prototype.once = function (events, priority, callback, that) {
|
|
625
656
|
var self = this;
|
|
626
657
|
if (minDash.isFunction(priority)) {
|
|
627
658
|
that = callback;
|
|
@@ -634,7 +665,7 @@ EventBus.prototype.once = function (event, priority, callback, that) {
|
|
|
634
665
|
function wrappedCallback() {
|
|
635
666
|
wrappedCallback.__isTomb = true;
|
|
636
667
|
var result = callback.apply(that, arguments);
|
|
637
|
-
self.off(
|
|
668
|
+
self.off(events, wrappedCallback);
|
|
638
669
|
return result;
|
|
639
670
|
}
|
|
640
671
|
|
|
@@ -642,7 +673,7 @@ EventBus.prototype.once = function (event, priority, callback, that) {
|
|
|
642
673
|
// bound callbacks via {@link #off} using the original
|
|
643
674
|
// callback
|
|
644
675
|
wrappedCallback[FN_REF] = callback;
|
|
645
|
-
this.on(
|
|
676
|
+
this.on(events, priority, wrappedCallback);
|
|
646
677
|
};
|
|
647
678
|
|
|
648
679
|
/**
|
|
@@ -650,8 +681,8 @@ EventBus.prototype.once = function (event, priority, callback, that) {
|
|
|
650
681
|
*
|
|
651
682
|
* If no callback is given, all listeners for a given event name are being removed.
|
|
652
683
|
*
|
|
653
|
-
* @param {string|
|
|
654
|
-
* @param {
|
|
684
|
+
* @param {string|string[]} events
|
|
685
|
+
* @param {EventBusEventCallback} [callback]
|
|
655
686
|
*/
|
|
656
687
|
EventBus.prototype.off = function (events, callback) {
|
|
657
688
|
events = minDash.isArray(events) ? events : [events];
|
|
@@ -662,11 +693,11 @@ EventBus.prototype.off = function (events, callback) {
|
|
|
662
693
|
};
|
|
663
694
|
|
|
664
695
|
/**
|
|
665
|
-
* Create an
|
|
696
|
+
* Create an event recognized be the event bus.
|
|
666
697
|
*
|
|
667
|
-
* @param {Object} data
|
|
698
|
+
* @param {Object} data Event data.
|
|
668
699
|
*
|
|
669
|
-
* @return {
|
|
700
|
+
* @return {Event} An event that will be recognized by the event bus.
|
|
670
701
|
*/
|
|
671
702
|
EventBus.prototype.createEvent = function (data) {
|
|
672
703
|
var event = new InternalEvent();
|
|
@@ -675,10 +706,11 @@ EventBus.prototype.createEvent = function (data) {
|
|
|
675
706
|
};
|
|
676
707
|
|
|
677
708
|
/**
|
|
678
|
-
* Fires
|
|
709
|
+
* Fires an event.
|
|
679
710
|
*
|
|
680
711
|
* @example
|
|
681
712
|
*
|
|
713
|
+
* ```javascript
|
|
682
714
|
* // fire event by name
|
|
683
715
|
* events.fire('foo');
|
|
684
716
|
*
|
|
@@ -696,13 +728,13 @@ EventBus.prototype.createEvent = function (data) {
|
|
|
696
728
|
* });
|
|
697
729
|
*
|
|
698
730
|
* events.fire({ type: 'foo' }, 'I am bar!');
|
|
731
|
+
* ```
|
|
699
732
|
*
|
|
700
|
-
* @param {string} [
|
|
701
|
-
* @param {Object} [
|
|
702
|
-
* @param {...
|
|
733
|
+
* @param {string} [type] event type
|
|
734
|
+
* @param {Object} [data] event or event data
|
|
735
|
+
* @param {...any} [args] additional arguments the callback will be called with.
|
|
703
736
|
*
|
|
704
|
-
* @return {
|
|
705
|
-
* default action was prevented by listeners
|
|
737
|
+
* @return {any} The return value. Will be set to `false` if the default was prevented.
|
|
706
738
|
*/
|
|
707
739
|
EventBus.prototype.fire = function (type, data) {
|
|
708
740
|
var event, firstListener, returnValue, args;
|
|
@@ -754,6 +786,14 @@ EventBus.prototype.fire = function (type, data) {
|
|
|
754
786
|
}
|
|
755
787
|
return returnValue;
|
|
756
788
|
};
|
|
789
|
+
|
|
790
|
+
/**
|
|
791
|
+
* Handle an error by firing an event.
|
|
792
|
+
*
|
|
793
|
+
* @param {Error} error The error to be handled.
|
|
794
|
+
*
|
|
795
|
+
* @return {boolean} Whether the error was handled.
|
|
796
|
+
*/
|
|
757
797
|
EventBus.prototype.handleError = function (error) {
|
|
758
798
|
return this.fire('error', {
|
|
759
799
|
error: error
|
|
@@ -762,6 +802,14 @@ EventBus.prototype.handleError = function (error) {
|
|
|
762
802
|
EventBus.prototype._destroy = function () {
|
|
763
803
|
this._listeners = {};
|
|
764
804
|
};
|
|
805
|
+
|
|
806
|
+
/**
|
|
807
|
+
* @param {Event} event
|
|
808
|
+
* @param {any[]} args
|
|
809
|
+
* @param {EventBusListener} listener
|
|
810
|
+
*
|
|
811
|
+
* @return {any}
|
|
812
|
+
*/
|
|
765
813
|
EventBus.prototype._invokeListeners = function (event, args, listener) {
|
|
766
814
|
var returnValue;
|
|
767
815
|
while (listener) {
|
|
@@ -774,6 +822,14 @@ EventBus.prototype._invokeListeners = function (event, args, listener) {
|
|
|
774
822
|
}
|
|
775
823
|
return returnValue;
|
|
776
824
|
};
|
|
825
|
+
|
|
826
|
+
/**
|
|
827
|
+
* @param {Event} event
|
|
828
|
+
* @param {any[]} args
|
|
829
|
+
* @param {EventBusListener} listener
|
|
830
|
+
*
|
|
831
|
+
* @return {any}
|
|
832
|
+
*/
|
|
777
833
|
EventBus.prototype._invokeListener = function (event, args, listener) {
|
|
778
834
|
var returnValue;
|
|
779
835
|
if (listener.callback.__isTomb) {
|
|
@@ -802,7 +858,7 @@ EventBus.prototype._invokeListener = function (event, args, listener) {
|
|
|
802
858
|
return returnValue;
|
|
803
859
|
};
|
|
804
860
|
|
|
805
|
-
|
|
861
|
+
/**
|
|
806
862
|
* Add new listener with a certain priority to the list
|
|
807
863
|
* of listeners (for the given event).
|
|
808
864
|
*
|
|
@@ -816,7 +872,7 @@ EventBus.prototype._invokeListener = function (event, args, listener) {
|
|
|
816
872
|
* * after: [ 1500, 1500, (new=1300), 1000, 1000, (new=1000) ]
|
|
817
873
|
*
|
|
818
874
|
* @param {string} event
|
|
819
|
-
* @param {
|
|
875
|
+
* @param {EventBusListener} listener
|
|
820
876
|
*/
|
|
821
877
|
EventBus.prototype._addListener = function (event, newListener) {
|
|
822
878
|
var listener = this._getListeners(event),
|
|
@@ -847,9 +903,20 @@ EventBus.prototype._addListener = function (event, newListener) {
|
|
|
847
903
|
// add new listener to back
|
|
848
904
|
previousListener.next = newListener;
|
|
849
905
|
};
|
|
906
|
+
|
|
907
|
+
/**
|
|
908
|
+
* @param {string} name
|
|
909
|
+
*
|
|
910
|
+
* @return {EventBusListener}
|
|
911
|
+
*/
|
|
850
912
|
EventBus.prototype._getListeners = function (name) {
|
|
851
913
|
return this._listeners[name];
|
|
852
914
|
};
|
|
915
|
+
|
|
916
|
+
/**
|
|
917
|
+
* @param {string} name
|
|
918
|
+
* @param {EventBusListener} listener
|
|
919
|
+
*/
|
|
853
920
|
EventBus.prototype._setListeners = function (name, listener) {
|
|
854
921
|
this._listeners[name] = listener;
|
|
855
922
|
};
|
|
@@ -897,9 +964,9 @@ InternalEvent.prototype.init = function (data) {
|
|
|
897
964
|
* Invoke function. Be fast...
|
|
898
965
|
*
|
|
899
966
|
* @param {Function} fn
|
|
900
|
-
* @param {
|
|
967
|
+
* @param {any[]} args
|
|
901
968
|
*
|
|
902
|
-
* @return {
|
|
969
|
+
* @return {any}
|
|
903
970
|
*/
|
|
904
971
|
function invokeFunction(fn, args) {
|
|
905
972
|
return fn.apply(null, args);
|
|
@@ -1494,16 +1561,18 @@ class Importer {
|
|
|
1494
1561
|
// if unavailable - get empty value from form field
|
|
1495
1562
|
|
|
1496
1563
|
if (_path) {
|
|
1497
|
-
const
|
|
1564
|
+
const {
|
|
1565
|
+
config: fieldConfig
|
|
1566
|
+
} = this._formFields.get(type);
|
|
1498
1567
|
let valueData = minDash.get(data, _path);
|
|
1499
|
-
if (!minDash.isUndefined(valueData) &&
|
|
1500
|
-
valueData =
|
|
1568
|
+
if (!minDash.isUndefined(valueData) && fieldConfig.sanitizeValue) {
|
|
1569
|
+
valueData = fieldConfig.sanitizeValue({
|
|
1501
1570
|
formField,
|
|
1502
1571
|
data,
|
|
1503
1572
|
value: valueData
|
|
1504
1573
|
});
|
|
1505
1574
|
}
|
|
1506
|
-
const initializedFieldValue = !minDash.isUndefined(valueData) ? valueData : !minDash.isUndefined(defaultValue) ? defaultValue :
|
|
1575
|
+
const initializedFieldValue = !minDash.isUndefined(valueData) ? valueData : !minDash.isUndefined(defaultValue) ? defaultValue : fieldConfig.emptyValue;
|
|
1507
1576
|
initializedData = {
|
|
1508
1577
|
...initializedData,
|
|
1509
1578
|
[_path[0]]: initializedFieldValue
|
|
@@ -1568,14 +1637,16 @@ function Button(props) {
|
|
|
1568
1637
|
})
|
|
1569
1638
|
});
|
|
1570
1639
|
}
|
|
1571
|
-
Button.
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1640
|
+
Button.config = {
|
|
1641
|
+
type: type$b,
|
|
1642
|
+
keyed: true,
|
|
1643
|
+
label: 'Button',
|
|
1644
|
+
group: 'action',
|
|
1645
|
+
create: (options = {}) => ({
|
|
1646
|
+
action: 'submit',
|
|
1647
|
+
...options
|
|
1648
|
+
})
|
|
1649
|
+
};
|
|
1579
1650
|
|
|
1580
1651
|
const FormRenderContext = preact.createContext({
|
|
1581
1652
|
Empty: props => {
|
|
@@ -1639,13 +1710,16 @@ function Description(props) {
|
|
|
1639
1710
|
|
|
1640
1711
|
function Errors(props) {
|
|
1641
1712
|
const {
|
|
1642
|
-
errors
|
|
1713
|
+
errors,
|
|
1714
|
+
id
|
|
1643
1715
|
} = props;
|
|
1644
1716
|
if (!errors.length) {
|
|
1645
1717
|
return null;
|
|
1646
1718
|
}
|
|
1647
1719
|
return jsxRuntime.jsx("div", {
|
|
1648
1720
|
class: "fjs-form-field-error",
|
|
1721
|
+
"aria-live": "polite",
|
|
1722
|
+
id: id,
|
|
1649
1723
|
children: jsxRuntime.jsx("ul", {
|
|
1650
1724
|
children: errors.map(error => {
|
|
1651
1725
|
return jsxRuntime.jsx("li", {
|
|
@@ -1703,6 +1777,7 @@ function Checkbox(props) {
|
|
|
1703
1777
|
const {
|
|
1704
1778
|
formId
|
|
1705
1779
|
} = hooks.useContext(FormContext$1);
|
|
1780
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
1706
1781
|
return jsxRuntime.jsxs("div", {
|
|
1707
1782
|
class: classNames(formFieldClasses(type$a, {
|
|
1708
1783
|
errors,
|
|
@@ -1720,26 +1795,30 @@ function Checkbox(props) {
|
|
|
1720
1795
|
disabled: disabled,
|
|
1721
1796
|
id: prefixId(id, formId),
|
|
1722
1797
|
type: "checkbox",
|
|
1723
|
-
onChange: onChange
|
|
1798
|
+
onChange: onChange,
|
|
1799
|
+
"aria-describedby": errorMessageId
|
|
1724
1800
|
})
|
|
1725
1801
|
}), jsxRuntime.jsx(Description, {
|
|
1726
1802
|
description: description
|
|
1727
1803
|
}), jsxRuntime.jsx(Errors, {
|
|
1728
|
-
errors: errors
|
|
1804
|
+
errors: errors,
|
|
1805
|
+
id: errorMessageId
|
|
1729
1806
|
})]
|
|
1730
1807
|
});
|
|
1731
1808
|
}
|
|
1732
|
-
Checkbox.
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
Checkbox
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
value
|
|
1741
|
-
}) =>
|
|
1742
|
-
|
|
1809
|
+
Checkbox.config = {
|
|
1810
|
+
type: type$a,
|
|
1811
|
+
keyed: true,
|
|
1812
|
+
label: 'Checkbox',
|
|
1813
|
+
group: 'selection',
|
|
1814
|
+
emptyValue: false,
|
|
1815
|
+
sanitizeValue: ({
|
|
1816
|
+
value
|
|
1817
|
+
}) => value === true,
|
|
1818
|
+
create: (options = {}) => ({
|
|
1819
|
+
...options
|
|
1820
|
+
})
|
|
1821
|
+
};
|
|
1743
1822
|
|
|
1744
1823
|
// parses the options data from the provided form field and form data
|
|
1745
1824
|
function getValuesData(formField, formData) {
|
|
@@ -2105,6 +2184,7 @@ function Checklist(props) {
|
|
|
2105
2184
|
const {
|
|
2106
2185
|
formId
|
|
2107
2186
|
} = hooks.useContext(FormContext$1);
|
|
2187
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
2108
2188
|
return jsxRuntime.jsxs("div", {
|
|
2109
2189
|
class: classNames(formFieldClasses(type$9, {
|
|
2110
2190
|
errors,
|
|
@@ -2127,37 +2207,41 @@ function Checklist(props) {
|
|
|
2127
2207
|
disabled: disabled,
|
|
2128
2208
|
id: prefixId(`${id}-${index}`, formId),
|
|
2129
2209
|
type: "checkbox",
|
|
2130
|
-
onClick: () => toggleCheckbox(v.value)
|
|
2210
|
+
onClick: () => toggleCheckbox(v.value),
|
|
2211
|
+
"aria-describedby": errorMessageId
|
|
2131
2212
|
})
|
|
2132
2213
|
}, `${id}-${index}`);
|
|
2133
2214
|
}), jsxRuntime.jsx(Description, {
|
|
2134
2215
|
description: description
|
|
2135
2216
|
}), jsxRuntime.jsx(Errors, {
|
|
2136
|
-
errors: errors
|
|
2217
|
+
errors: errors,
|
|
2218
|
+
id: errorMessageId
|
|
2137
2219
|
})]
|
|
2138
2220
|
});
|
|
2139
2221
|
}
|
|
2140
|
-
Checklist.
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
}
|
|
2222
|
+
Checklist.config = {
|
|
2223
|
+
type: type$9,
|
|
2224
|
+
keyed: true,
|
|
2225
|
+
label: 'Checklist',
|
|
2226
|
+
group: 'selection',
|
|
2227
|
+
emptyValue: [],
|
|
2228
|
+
sanitizeValue: sanitizeMultiSelectValue,
|
|
2229
|
+
create: (options = {}) => {
|
|
2230
|
+
const defaults = {};
|
|
2231
|
+
|
|
2232
|
+
// provide default values if valuesKey isn't set
|
|
2233
|
+
if (!options.valuesKey) {
|
|
2234
|
+
defaults.values = [{
|
|
2235
|
+
label: 'Value',
|
|
2236
|
+
value: 'value'
|
|
2237
|
+
}];
|
|
2238
|
+
}
|
|
2239
|
+
return {
|
|
2240
|
+
...defaults,
|
|
2241
|
+
...options
|
|
2242
|
+
};
|
|
2149
2243
|
}
|
|
2150
|
-
return {
|
|
2151
|
-
...defaults,
|
|
2152
|
-
...options
|
|
2153
|
-
};
|
|
2154
2244
|
};
|
|
2155
|
-
Checklist.type = type$9;
|
|
2156
|
-
Checklist.label = 'Checklist';
|
|
2157
|
-
Checklist.keyed = true;
|
|
2158
|
-
Checklist.emptyValue = [];
|
|
2159
|
-
Checklist.sanitizeValue = sanitizeMultiSelectValue;
|
|
2160
|
-
Checklist.group = 'selection';
|
|
2161
2245
|
|
|
2162
2246
|
/**
|
|
2163
2247
|
* Returns the conditionally filtered data of a form reactively.
|
|
@@ -2257,9 +2341,6 @@ function FormField(props) {
|
|
|
2257
2341
|
field,
|
|
2258
2342
|
onChange
|
|
2259
2343
|
} = props;
|
|
2260
|
-
const {
|
|
2261
|
-
_path
|
|
2262
|
-
} = field;
|
|
2263
2344
|
const formFields = useService('formFields'),
|
|
2264
2345
|
form = useService('form');
|
|
2265
2346
|
const {
|
|
@@ -2276,8 +2357,8 @@ function FormField(props) {
|
|
|
2276
2357
|
if (!FormFieldComponent) {
|
|
2277
2358
|
throw new Error(`cannot render field <${field.type}>`);
|
|
2278
2359
|
}
|
|
2279
|
-
const value = minDash.get(data, _path);
|
|
2280
|
-
const fieldErrors = findErrors(errors, _path);
|
|
2360
|
+
const value = minDash.get(data, field._path);
|
|
2361
|
+
const fieldErrors = findErrors(errors, field._path);
|
|
2281
2362
|
const disabled = properties.readOnly || field.disabled || false;
|
|
2282
2363
|
const hidden = useCondition(field.conditional && field.conditional.hide || null);
|
|
2283
2364
|
if (hidden) {
|
|
@@ -2344,14 +2425,16 @@ function Default(props) {
|
|
|
2344
2425
|
}), components.length ? null : jsxRuntime.jsx(Empty, {})]
|
|
2345
2426
|
});
|
|
2346
2427
|
}
|
|
2347
|
-
Default.
|
|
2348
|
-
|
|
2349
|
-
|
|
2350
|
-
|
|
2351
|
-
|
|
2352
|
-
|
|
2353
|
-
|
|
2354
|
-
|
|
2428
|
+
Default.config = {
|
|
2429
|
+
type: 'default',
|
|
2430
|
+
keyed: false,
|
|
2431
|
+
label: null,
|
|
2432
|
+
group: null,
|
|
2433
|
+
create: (options = {}) => ({
|
|
2434
|
+
components: [],
|
|
2435
|
+
...options
|
|
2436
|
+
})
|
|
2437
|
+
};
|
|
2355
2438
|
|
|
2356
2439
|
function _extends$j() { _extends$j = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$j.apply(this, arguments); }
|
|
2357
2440
|
var CalendarIcon = (({
|
|
@@ -2527,16 +2610,17 @@ function Datepicker(props) {
|
|
|
2527
2610
|
ref: dateInputRef,
|
|
2528
2611
|
type: "text",
|
|
2529
2612
|
id: fullId,
|
|
2530
|
-
class:
|
|
2613
|
+
class: "fjs-input",
|
|
2531
2614
|
disabled: disabled,
|
|
2532
2615
|
placeholder: "mm/dd/yyyy",
|
|
2533
2616
|
autoComplete: "off",
|
|
2534
2617
|
onFocus: onInputFocus,
|
|
2535
2618
|
onKeyDown: onInputKeyDown,
|
|
2536
|
-
onMouseDown:
|
|
2619
|
+
onMouseDown: () => !flatpickrInstance.isOpen && flatpickrInstance.open(),
|
|
2537
2620
|
onBlur: onInputBlur,
|
|
2538
|
-
onInput:
|
|
2539
|
-
"data-input": true
|
|
2621
|
+
onInput: () => setIsInputDirty(true),
|
|
2622
|
+
"data-input": true,
|
|
2623
|
+
"aria-describedby": props['aria-describedby']
|
|
2540
2624
|
})
|
|
2541
2625
|
})
|
|
2542
2626
|
})]
|
|
@@ -2793,7 +2877,8 @@ function Timepicker(props) {
|
|
|
2793
2877
|
},
|
|
2794
2878
|
onBlur: onInputBlur,
|
|
2795
2879
|
onKeyDown: onInputKeyDown,
|
|
2796
|
-
"data-input": true
|
|
2880
|
+
"data-input": true,
|
|
2881
|
+
"aria-describedby": props['aria-describedby']
|
|
2797
2882
|
}), dropdownIsOpen && jsxRuntime.jsx(DropdownList, {
|
|
2798
2883
|
values: timeOptions,
|
|
2799
2884
|
height: 150,
|
|
@@ -2929,6 +3014,7 @@ function Datetime(props) {
|
|
|
2929
3014
|
time
|
|
2930
3015
|
});
|
|
2931
3016
|
}, []);
|
|
3017
|
+
const errorMessageId = allErrors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
2932
3018
|
const datePickerProps = {
|
|
2933
3019
|
id,
|
|
2934
3020
|
label: dateLabel,
|
|
@@ -2938,7 +3024,8 @@ function Datetime(props) {
|
|
|
2938
3024
|
disabled,
|
|
2939
3025
|
disallowPassedDates,
|
|
2940
3026
|
date: dateTime.date,
|
|
2941
|
-
setDate
|
|
3027
|
+
setDate,
|
|
3028
|
+
'aria-describedby': errorMessageId
|
|
2942
3029
|
};
|
|
2943
3030
|
const timePickerProps = {
|
|
2944
3031
|
id,
|
|
@@ -2950,7 +3037,8 @@ function Datetime(props) {
|
|
|
2950
3037
|
use24h,
|
|
2951
3038
|
timeInterval,
|
|
2952
3039
|
time: dateTime.time,
|
|
2953
|
-
setTime
|
|
3040
|
+
setTime,
|
|
3041
|
+
'aria-describedby': errorMessageId
|
|
2954
3042
|
};
|
|
2955
3043
|
return jsxRuntime.jsxs("div", {
|
|
2956
3044
|
class: formFieldClasses(type$8, {
|
|
@@ -2969,25 +3057,28 @@ function Datetime(props) {
|
|
|
2969
3057
|
}), jsxRuntime.jsx(Description, {
|
|
2970
3058
|
description: description
|
|
2971
3059
|
}), jsxRuntime.jsx(Errors, {
|
|
2972
|
-
errors: allErrors
|
|
3060
|
+
errors: allErrors,
|
|
3061
|
+
id: errorMessageId
|
|
2973
3062
|
})]
|
|
2974
3063
|
});
|
|
2975
3064
|
}
|
|
2976
|
-
Datetime.
|
|
2977
|
-
|
|
2978
|
-
|
|
2979
|
-
|
|
2980
|
-
|
|
2981
|
-
|
|
2982
|
-
|
|
2983
|
-
}
|
|
3065
|
+
Datetime.config = {
|
|
3066
|
+
type: type$8,
|
|
3067
|
+
keyed: true,
|
|
3068
|
+
label: 'Date time',
|
|
3069
|
+
group: 'basic-input',
|
|
3070
|
+
emptyValue: null,
|
|
3071
|
+
sanitizeValue: sanitizeDateTimePickerValue,
|
|
3072
|
+
create: (options = {}) => {
|
|
3073
|
+
const defaults = {};
|
|
3074
|
+
minDash.set(defaults, DATETIME_SUBTYPE_PATH, DATETIME_SUBTYPES.DATE);
|
|
3075
|
+
minDash.set(defaults, DATE_LABEL_PATH, 'Date');
|
|
3076
|
+
return {
|
|
3077
|
+
...defaults,
|
|
3078
|
+
...options
|
|
3079
|
+
};
|
|
3080
|
+
}
|
|
2984
3081
|
};
|
|
2985
|
-
Datetime.type = type$8;
|
|
2986
|
-
Datetime.keyed = true;
|
|
2987
|
-
Datetime.emptyValue = null;
|
|
2988
|
-
Datetime.sanitizeValue = sanitizeDateTimePickerValue;
|
|
2989
|
-
Datetime.label = 'Date time';
|
|
2990
|
-
Datetime.group = 'basic-input';
|
|
2991
3082
|
|
|
2992
3083
|
/**
|
|
2993
3084
|
* This file must not be changed or exchanged.
|
|
@@ -3031,7 +3122,7 @@ function Lightbox(props) {
|
|
|
3031
3122
|
href: "https://bpmn.io",
|
|
3032
3123
|
target: "_blank",
|
|
3033
3124
|
rel: "noopener",
|
|
3034
|
-
style: "margin: 15px 20px 15px 10px; align-self: center; color: #404040",
|
|
3125
|
+
style: "margin: 15px 20px 15px 10px; align-self: center; color: var(--cds-icon-primary, #404040)",
|
|
3035
3126
|
children: jsxRuntime.jsx(Logo, {})
|
|
3036
3127
|
}), jsxRuntime.jsxs("span", {
|
|
3037
3128
|
children: ["Web-based tooling for BPMN, DMN, and forms powered by ", jsxRuntime.jsx("a", {
|
|
@@ -3054,7 +3145,7 @@ function Link(props) {
|
|
|
3054
3145
|
rel: "noopener",
|
|
3055
3146
|
class: "fjs-powered-by-link",
|
|
3056
3147
|
title: "Powered by bpmn.io",
|
|
3057
|
-
style: "color: #404040",
|
|
3148
|
+
style: "color: var(--cds-text-primary, #404040)",
|
|
3058
3149
|
onClick: props.onClick,
|
|
3059
3150
|
children: jsxRuntime.jsx(Logo, {})
|
|
3060
3151
|
})
|
|
@@ -3082,8 +3173,12 @@ const noop = () => {};
|
|
|
3082
3173
|
function FormComponent(props) {
|
|
3083
3174
|
const form = useService('form');
|
|
3084
3175
|
const {
|
|
3085
|
-
schema
|
|
3176
|
+
schema,
|
|
3177
|
+
properties
|
|
3086
3178
|
} = form._getState();
|
|
3179
|
+
const {
|
|
3180
|
+
ariaLabel
|
|
3181
|
+
} = properties;
|
|
3087
3182
|
const {
|
|
3088
3183
|
onSubmit = noop,
|
|
3089
3184
|
onReset = noop,
|
|
@@ -3101,6 +3196,7 @@ function FormComponent(props) {
|
|
|
3101
3196
|
class: "fjs-form",
|
|
3102
3197
|
onSubmit: handleSubmit,
|
|
3103
3198
|
onReset: handleReset,
|
|
3199
|
+
"aria-label": ariaLabel,
|
|
3104
3200
|
noValidate: true,
|
|
3105
3201
|
children: [jsxRuntime.jsx(FormField, {
|
|
3106
3202
|
field: schema,
|
|
@@ -3111,7 +3207,7 @@ function FormComponent(props) {
|
|
|
3111
3207
|
|
|
3112
3208
|
const NODE_TYPE_TEXT = 3,
|
|
3113
3209
|
NODE_TYPE_ELEMENT = 1;
|
|
3114
|
-
const ALLOWED_NODES = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'span', 'em', 'a', 'p', 'div', 'ul', 'ol', 'li', 'hr', 'blockquote', 'img', 'pre', 'code', 'br', 'strong'];
|
|
3210
|
+
const ALLOWED_NODES = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'span', 'em', 'a', 'p', 'div', 'ul', 'ol', 'li', 'hr', 'blockquote', 'img', 'pre', 'code', 'br', 'strong', 'table', 'thead', 'tbody', 'tr', 'th', 'td'];
|
|
3115
3211
|
const ALLOWED_ATTRIBUTES = ['align', 'alt', 'class', 'href', 'id', 'name', 'rel', 'target', 'src'];
|
|
3116
3212
|
const ALLOWED_URI_PATTERN = /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i; // eslint-disable-line no-useless-escape
|
|
3117
3213
|
const ALLOWED_IMAGE_SRC_PATTERN = /^(https?|data):.*/i; // eslint-disable-line no-useless-escape
|
|
@@ -3300,13 +3396,15 @@ function Image(props) {
|
|
|
3300
3396
|
})
|
|
3301
3397
|
});
|
|
3302
3398
|
}
|
|
3303
|
-
Image.
|
|
3304
|
-
|
|
3305
|
-
|
|
3306
|
-
Image
|
|
3307
|
-
|
|
3308
|
-
|
|
3309
|
-
|
|
3399
|
+
Image.config = {
|
|
3400
|
+
type: type$7,
|
|
3401
|
+
keyed: false,
|
|
3402
|
+
label: 'Image view',
|
|
3403
|
+
group: 'presentation',
|
|
3404
|
+
create: (options = {}) => ({
|
|
3405
|
+
...options
|
|
3406
|
+
})
|
|
3407
|
+
};
|
|
3310
3408
|
|
|
3311
3409
|
function _extends$g() { _extends$g = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$g.apply(this, arguments); }
|
|
3312
3410
|
var AngelDownIcon = (({
|
|
@@ -3373,10 +3471,10 @@ function Numberfield(props) {
|
|
|
3373
3471
|
|
|
3374
3472
|
// checks whether the value currently in the form data is practically different from the one in the input field cache
|
|
3375
3473
|
// this allows us to guarantee the field always displays valid form data, but without auto-simplifying values like 1.000 to 1
|
|
3376
|
-
const cacheValueMatchesState = hooks.useMemo(() => Numberfield.sanitizeValue({
|
|
3474
|
+
const cacheValueMatchesState = hooks.useMemo(() => Numberfield.config.sanitizeValue({
|
|
3377
3475
|
value,
|
|
3378
3476
|
formField: field
|
|
3379
|
-
}) === Numberfield.sanitizeValue({
|
|
3477
|
+
}) === Numberfield.config.sanitizeValue({
|
|
3380
3478
|
value: stringValueCache,
|
|
3381
3479
|
formField: field
|
|
3382
3480
|
}), [stringValueCache, value, field]);
|
|
@@ -3470,6 +3568,7 @@ function Numberfield(props) {
|
|
|
3470
3568
|
const {
|
|
3471
3569
|
formId
|
|
3472
3570
|
} = hooks.useContext(FormContext$1);
|
|
3571
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
3473
3572
|
return jsxRuntime.jsxs("div", {
|
|
3474
3573
|
class: formFieldClasses(type$6, {
|
|
3475
3574
|
errors,
|
|
@@ -3503,7 +3602,8 @@ function Numberfield(props) {
|
|
|
3503
3602
|
type: "text",
|
|
3504
3603
|
autoComplete: "off",
|
|
3505
3604
|
step: arrowIncrementValue,
|
|
3506
|
-
value: displayValue
|
|
3605
|
+
value: displayValue,
|
|
3606
|
+
"aria-describedby": errorMessageId
|
|
3507
3607
|
}), jsxRuntime.jsxs("div", {
|
|
3508
3608
|
class: classNames('fjs-number-arrow-container', {
|
|
3509
3609
|
'fjs-disabled': disabled
|
|
@@ -3530,31 +3630,34 @@ function Numberfield(props) {
|
|
|
3530
3630
|
}), jsxRuntime.jsx(Description, {
|
|
3531
3631
|
description: description
|
|
3532
3632
|
}), jsxRuntime.jsx(Errors, {
|
|
3533
|
-
errors: errors
|
|
3633
|
+
errors: errors,
|
|
3634
|
+
id: errorMessageId
|
|
3534
3635
|
})]
|
|
3535
3636
|
});
|
|
3536
3637
|
}
|
|
3537
|
-
Numberfield.
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
|
|
3542
|
-
|
|
3543
|
-
|
|
3544
|
-
|
|
3545
|
-
|
|
3546
|
-
|
|
3547
|
-
|
|
3548
|
-
|
|
3549
|
-
|
|
3550
|
-
|
|
3551
|
-
|
|
3638
|
+
Numberfield.config = {
|
|
3639
|
+
type: type$6,
|
|
3640
|
+
keyed: true,
|
|
3641
|
+
label: 'Number',
|
|
3642
|
+
group: 'basic-input',
|
|
3643
|
+
emptyValue: null,
|
|
3644
|
+
sanitizeValue: ({
|
|
3645
|
+
value,
|
|
3646
|
+
formField
|
|
3647
|
+
}) => {
|
|
3648
|
+
// null state is allowed
|
|
3649
|
+
if (isNullEquivalentValue(value)) return null;
|
|
3650
|
+
|
|
3651
|
+
// if data cannot be parsed as a valid number, go into invalid NaN state
|
|
3652
|
+
if (!isValidNumber(value)) return 'NaN';
|
|
3653
|
+
|
|
3654
|
+
// otherwise parse to formatting type
|
|
3655
|
+
return formField.serializeToString ? value.toString() : Number(value);
|
|
3656
|
+
},
|
|
3657
|
+
create: (options = {}) => ({
|
|
3658
|
+
...options
|
|
3659
|
+
})
|
|
3552
3660
|
};
|
|
3553
|
-
Numberfield.type = type$6;
|
|
3554
|
-
Numberfield.keyed = true;
|
|
3555
|
-
Numberfield.label = 'Number';
|
|
3556
|
-
Numberfield.emptyValue = null;
|
|
3557
|
-
Numberfield.group = 'basic-input';
|
|
3558
3661
|
|
|
3559
3662
|
const type$5 = 'radio';
|
|
3560
3663
|
function Radio(props) {
|
|
@@ -3586,6 +3689,7 @@ function Radio(props) {
|
|
|
3586
3689
|
const {
|
|
3587
3690
|
formId
|
|
3588
3691
|
} = hooks.useContext(FormContext$1);
|
|
3692
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
3589
3693
|
return jsxRuntime.jsxs("div", {
|
|
3590
3694
|
class: formFieldClasses(type$5, {
|
|
3591
3695
|
errors,
|
|
@@ -3608,37 +3712,41 @@ function Radio(props) {
|
|
|
3608
3712
|
disabled: disabled,
|
|
3609
3713
|
id: prefixId(`${id}-${index}`, formId),
|
|
3610
3714
|
type: "radio",
|
|
3611
|
-
onClick: () => onChange(option.value)
|
|
3715
|
+
onClick: () => onChange(option.value),
|
|
3716
|
+
"aria-describedby": errorMessageId
|
|
3612
3717
|
})
|
|
3613
3718
|
}, `${id}-${index}`);
|
|
3614
3719
|
}), jsxRuntime.jsx(Description, {
|
|
3615
3720
|
description: description
|
|
3616
3721
|
}), jsxRuntime.jsx(Errors, {
|
|
3617
|
-
errors: errors
|
|
3722
|
+
errors: errors,
|
|
3723
|
+
id: errorMessageId
|
|
3618
3724
|
})]
|
|
3619
3725
|
});
|
|
3620
3726
|
}
|
|
3621
|
-
Radio.
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
}
|
|
3727
|
+
Radio.config = {
|
|
3728
|
+
type: type$5,
|
|
3729
|
+
keyed: true,
|
|
3730
|
+
label: 'Radio',
|
|
3731
|
+
group: 'selection',
|
|
3732
|
+
emptyValue: null,
|
|
3733
|
+
sanitizeValue: sanitizeSingleSelectValue,
|
|
3734
|
+
create: (options = {}) => {
|
|
3735
|
+
const defaults = {};
|
|
3736
|
+
|
|
3737
|
+
// provide default values if valuesKey isn't set
|
|
3738
|
+
if (!options.valuesKey) {
|
|
3739
|
+
defaults.values = [{
|
|
3740
|
+
label: 'Value',
|
|
3741
|
+
value: 'value'
|
|
3742
|
+
}];
|
|
3743
|
+
}
|
|
3744
|
+
return {
|
|
3745
|
+
...defaults,
|
|
3746
|
+
...options
|
|
3747
|
+
};
|
|
3630
3748
|
}
|
|
3631
|
-
return {
|
|
3632
|
-
...defaults,
|
|
3633
|
-
...options
|
|
3634
|
-
};
|
|
3635
3749
|
};
|
|
3636
|
-
Radio.type = type$5;
|
|
3637
|
-
Radio.label = 'Radio';
|
|
3638
|
-
Radio.keyed = true;
|
|
3639
|
-
Radio.emptyValue = null;
|
|
3640
|
-
Radio.sanitizeValue = sanitizeSingleSelectValue;
|
|
3641
|
-
Radio.group = 'selection';
|
|
3642
3750
|
|
|
3643
3751
|
function _extends$e() { _extends$e = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$e.apply(this, arguments); }
|
|
3644
3752
|
var XMarkIcon = (({
|
|
@@ -3778,7 +3886,8 @@ function SearchableSelect(props) {
|
|
|
3778
3886
|
onBlur: () => {
|
|
3779
3887
|
setIsDropdownExpanded(false);
|
|
3780
3888
|
setFilter(valueLabel);
|
|
3781
|
-
}
|
|
3889
|
+
},
|
|
3890
|
+
"aria-describedby": props['aria-describedby']
|
|
3782
3891
|
}), displayState.displayCross && jsxRuntime.jsxs("span", {
|
|
3783
3892
|
class: "fjs-select-cross",
|
|
3784
3893
|
onMouseDown: e => {
|
|
@@ -3864,14 +3973,20 @@ function SimpleSelect(props) {
|
|
|
3864
3973
|
}),
|
|
3865
3974
|
onFocus: () => setIsDropdownExpanded(true),
|
|
3866
3975
|
onBlur: () => setIsDropdownExpanded(false),
|
|
3867
|
-
onMouseDown:
|
|
3868
|
-
tabIndex: disabled ? undefined : 0,
|
|
3976
|
+
onMouseDown: onMouseDown,
|
|
3869
3977
|
children: [jsxRuntime.jsx("div", {
|
|
3870
3978
|
class: classNames('fjs-select-display', {
|
|
3871
3979
|
'fjs-select-placeholder': !value
|
|
3872
3980
|
}),
|
|
3873
3981
|
id: prefixId(`${id}-display`, formId),
|
|
3874
3982
|
children: valueLabel || 'Select'
|
|
3983
|
+
}), !disabled && jsxRuntime.jsx("input", {
|
|
3984
|
+
id: prefixId(`${id}-search`, formId),
|
|
3985
|
+
class: "fjs-select-hidden-input",
|
|
3986
|
+
value: valueLabel,
|
|
3987
|
+
onFocus: () => setIsDropdownExpanded(true),
|
|
3988
|
+
onBlur: () => setIsDropdownExpanded(false),
|
|
3989
|
+
"aria-describedby": props['aria-describedby']
|
|
3875
3990
|
}), displayState.displayCross && jsxRuntime.jsx("span", {
|
|
3876
3991
|
class: "fjs-select-cross",
|
|
3877
3992
|
onMouseDown: e => {
|
|
@@ -3921,14 +4036,16 @@ function Select(props) {
|
|
|
3921
4036
|
const {
|
|
3922
4037
|
formId
|
|
3923
4038
|
} = hooks.useContext(FormContext$1);
|
|
4039
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
3924
4040
|
const selectProps = hooks.useMemo(() => ({
|
|
3925
4041
|
id,
|
|
3926
4042
|
disabled,
|
|
3927
4043
|
errors,
|
|
3928
4044
|
field,
|
|
3929
4045
|
value,
|
|
3930
|
-
onChange
|
|
3931
|
-
|
|
4046
|
+
onChange,
|
|
4047
|
+
'aria-describedby': errorMessageId
|
|
4048
|
+
}), [disabled, errors, field, id, value, onChange, errorMessageId]);
|
|
3932
4049
|
return jsxRuntime.jsxs("div", {
|
|
3933
4050
|
class: formFieldClasses(type$4, {
|
|
3934
4051
|
errors,
|
|
@@ -3941,7 +4058,7 @@ function Select(props) {
|
|
|
3941
4058
|
}
|
|
3942
4059
|
},
|
|
3943
4060
|
children: [jsxRuntime.jsx(Label, {
|
|
3944
|
-
id: prefixId(id
|
|
4061
|
+
id: prefixId(`${id}-search`, formId),
|
|
3945
4062
|
label: label,
|
|
3946
4063
|
required: required
|
|
3947
4064
|
}), searchable ? jsxRuntime.jsx(SearchableSelect, {
|
|
@@ -3951,31 +4068,34 @@ function Select(props) {
|
|
|
3951
4068
|
}), jsxRuntime.jsx(Description, {
|
|
3952
4069
|
description: description
|
|
3953
4070
|
}), jsxRuntime.jsx(Errors, {
|
|
3954
|
-
errors: errors
|
|
4071
|
+
errors: errors,
|
|
4072
|
+
id: errorMessageId
|
|
3955
4073
|
})]
|
|
3956
4074
|
});
|
|
3957
4075
|
}
|
|
3958
|
-
Select.
|
|
3959
|
-
|
|
3960
|
-
|
|
3961
|
-
|
|
3962
|
-
|
|
3963
|
-
|
|
3964
|
-
|
|
3965
|
-
|
|
3966
|
-
}
|
|
4076
|
+
Select.config = {
|
|
4077
|
+
type: type$4,
|
|
4078
|
+
keyed: true,
|
|
4079
|
+
label: 'Select',
|
|
4080
|
+
group: 'selection',
|
|
4081
|
+
emptyValue: null,
|
|
4082
|
+
sanitizeValue: sanitizeSingleSelectValue,
|
|
4083
|
+
create: (options = {}) => {
|
|
4084
|
+
const defaults = {};
|
|
4085
|
+
|
|
4086
|
+
// provide default values if valuesKey isn't set
|
|
4087
|
+
if (!options.valuesKey) {
|
|
4088
|
+
defaults.values = [{
|
|
4089
|
+
label: 'Value',
|
|
4090
|
+
value: 'value'
|
|
4091
|
+
}];
|
|
4092
|
+
}
|
|
4093
|
+
return {
|
|
4094
|
+
...defaults,
|
|
4095
|
+
...options
|
|
4096
|
+
};
|
|
3967
4097
|
}
|
|
3968
|
-
return {
|
|
3969
|
-
...defaults,
|
|
3970
|
-
...options
|
|
3971
|
-
};
|
|
3972
4098
|
};
|
|
3973
|
-
Select.type = type$4;
|
|
3974
|
-
Select.label = 'Select';
|
|
3975
|
-
Select.keyed = true;
|
|
3976
|
-
Select.emptyValue = null;
|
|
3977
|
-
Select.sanitizeValue = sanitizeSingleSelectValue;
|
|
3978
|
-
Select.group = 'selection';
|
|
3979
4099
|
|
|
3980
4100
|
const type$3 = 'taglist';
|
|
3981
4101
|
function Taglist(props) {
|
|
@@ -3997,6 +4117,7 @@ function Taglist(props) {
|
|
|
3997
4117
|
const {
|
|
3998
4118
|
formId
|
|
3999
4119
|
} = hooks.useContext(FormContext$1);
|
|
4120
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
4000
4121
|
const [filter, setFilter] = hooks.useState('');
|
|
4001
4122
|
const [filteredOptions, setFilteredOptions] = hooks.useState([]);
|
|
4002
4123
|
const [isDropdownExpanded, setIsDropdownExpanded] = hooks.useState(false);
|
|
@@ -4132,15 +4253,16 @@ function Taglist(props) {
|
|
|
4132
4253
|
onChange: onFilterChange,
|
|
4133
4254
|
type: "text",
|
|
4134
4255
|
value: filter,
|
|
4135
|
-
placeholder: disabled ?
|
|
4256
|
+
placeholder: disabled ? undefined : 'Search',
|
|
4136
4257
|
autoComplete: "off",
|
|
4137
|
-
onKeyDown:
|
|
4258
|
+
onKeyDown: onInputKeyDown,
|
|
4138
4259
|
onMouseDown: () => setIsEscapeClose(false),
|
|
4139
4260
|
onFocus: () => setIsDropdownExpanded(true),
|
|
4140
4261
|
onBlur: () => {
|
|
4141
4262
|
setIsDropdownExpanded(false);
|
|
4142
4263
|
setFilter('');
|
|
4143
|
-
}
|
|
4264
|
+
},
|
|
4265
|
+
"aria-describedby": errorMessageId
|
|
4144
4266
|
})]
|
|
4145
4267
|
}), jsxRuntime.jsx("div", {
|
|
4146
4268
|
class: "fjs-taglist-anchor",
|
|
@@ -4154,34 +4276,41 @@ function Taglist(props) {
|
|
|
4154
4276
|
}), jsxRuntime.jsx(Description, {
|
|
4155
4277
|
description: description
|
|
4156
4278
|
}), jsxRuntime.jsx(Errors, {
|
|
4157
|
-
errors: errors
|
|
4279
|
+
errors: errors,
|
|
4280
|
+
id: errorMessageId
|
|
4158
4281
|
})]
|
|
4159
4282
|
});
|
|
4160
4283
|
}
|
|
4161
|
-
Taglist.
|
|
4162
|
-
|
|
4163
|
-
|
|
4164
|
-
|
|
4165
|
-
|
|
4166
|
-
|
|
4167
|
-
|
|
4168
|
-
|
|
4169
|
-
}
|
|
4284
|
+
Taglist.config = {
|
|
4285
|
+
type: type$3,
|
|
4286
|
+
keyed: true,
|
|
4287
|
+
label: 'Tag list',
|
|
4288
|
+
group: 'selection',
|
|
4289
|
+
emptyValue: [],
|
|
4290
|
+
sanitizeValue: sanitizeMultiSelectValue,
|
|
4291
|
+
create: (options = {}) => {
|
|
4292
|
+
const defaults = {};
|
|
4293
|
+
|
|
4294
|
+
// provide default values if valuesKey isn't set
|
|
4295
|
+
if (!options.valuesKey) {
|
|
4296
|
+
defaults.values = [{
|
|
4297
|
+
label: 'Value',
|
|
4298
|
+
value: 'value'
|
|
4299
|
+
}];
|
|
4300
|
+
}
|
|
4301
|
+
return {
|
|
4302
|
+
...defaults,
|
|
4303
|
+
...options
|
|
4304
|
+
};
|
|
4170
4305
|
}
|
|
4171
|
-
return {
|
|
4172
|
-
...defaults,
|
|
4173
|
-
...options
|
|
4174
|
-
};
|
|
4175
4306
|
};
|
|
4176
|
-
Taglist.type = type$3;
|
|
4177
|
-
Taglist.label = 'Tag list';
|
|
4178
|
-
Taglist.keyed = true;
|
|
4179
|
-
Taglist.emptyValue = [];
|
|
4180
|
-
Taglist.sanitizeValue = sanitizeMultiSelectValue;
|
|
4181
|
-
Taglist.group = 'selection';
|
|
4182
4307
|
|
|
4183
4308
|
const type$2 = 'text';
|
|
4184
4309
|
function Text(props) {
|
|
4310
|
+
const form = useService('form');
|
|
4311
|
+
const {
|
|
4312
|
+
textLinkTarget
|
|
4313
|
+
} = form._getState().properties;
|
|
4185
4314
|
const {
|
|
4186
4315
|
field,
|
|
4187
4316
|
disableLinks
|
|
@@ -4203,9 +4332,20 @@ function Text(props) {
|
|
|
4203
4332
|
const html = markdownRenderer.render(markdown);
|
|
4204
4333
|
return sanitizeHTML(html);
|
|
4205
4334
|
}, [markdownRenderer, markdown]);
|
|
4206
|
-
const
|
|
4207
|
-
|
|
4208
|
-
|
|
4335
|
+
const OverridenTargetLink = hooks.useMemo(() => BuildOverridenTargetLink(textLinkTarget), [textLinkTarget]);
|
|
4336
|
+
const componentOverrides = hooks.useMemo(() => {
|
|
4337
|
+
if (disableLinks) {
|
|
4338
|
+
return {
|
|
4339
|
+
'a': DisabledLink
|
|
4340
|
+
};
|
|
4341
|
+
}
|
|
4342
|
+
if (textLinkTarget) {
|
|
4343
|
+
return {
|
|
4344
|
+
'a': OverridenTargetLink
|
|
4345
|
+
};
|
|
4346
|
+
}
|
|
4347
|
+
return {};
|
|
4348
|
+
}, [disableLinks, OverridenTargetLink, textLinkTarget]);
|
|
4209
4349
|
return jsxRuntime.jsx("div", {
|
|
4210
4350
|
class: formFieldClasses(type$2),
|
|
4211
4351
|
children: jsxRuntime.jsx(Markup, {
|
|
@@ -4215,21 +4355,35 @@ function Text(props) {
|
|
|
4215
4355
|
})
|
|
4216
4356
|
});
|
|
4217
4357
|
}
|
|
4218
|
-
Text.
|
|
4219
|
-
|
|
4220
|
-
|
|
4221
|
-
|
|
4222
|
-
|
|
4223
|
-
|
|
4224
|
-
|
|
4225
|
-
|
|
4358
|
+
Text.config = {
|
|
4359
|
+
type: type$2,
|
|
4360
|
+
keyed: false,
|
|
4361
|
+
label: 'Text view',
|
|
4362
|
+
group: 'presentation',
|
|
4363
|
+
create: (options = {}) => ({
|
|
4364
|
+
text: '# Text',
|
|
4365
|
+
...options
|
|
4366
|
+
})
|
|
4367
|
+
};
|
|
4368
|
+
function BuildOverridenTargetLink(target) {
|
|
4369
|
+
return function ({
|
|
4370
|
+
children,
|
|
4371
|
+
...rest
|
|
4372
|
+
}) {
|
|
4373
|
+
return jsxRuntime.jsx("a", {
|
|
4374
|
+
...rest,
|
|
4375
|
+
target: target,
|
|
4376
|
+
children: children
|
|
4377
|
+
});
|
|
4378
|
+
};
|
|
4379
|
+
}
|
|
4226
4380
|
function DisabledLink({
|
|
4227
|
-
|
|
4228
|
-
|
|
4381
|
+
children,
|
|
4382
|
+
...rest
|
|
4229
4383
|
}) {
|
|
4230
4384
|
return jsxRuntime.jsx("a", {
|
|
4385
|
+
...rest,
|
|
4231
4386
|
class: "fjs-disabled-link",
|
|
4232
|
-
href: href,
|
|
4233
4387
|
tabIndex: -1,
|
|
4234
4388
|
children: children
|
|
4235
4389
|
});
|
|
@@ -4268,6 +4422,7 @@ function Textfield(props) {
|
|
|
4268
4422
|
const {
|
|
4269
4423
|
formId
|
|
4270
4424
|
} = hooks.useContext(FormContext$1);
|
|
4425
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
4271
4426
|
return jsxRuntime.jsxs("div", {
|
|
4272
4427
|
class: formFieldClasses(type$1, {
|
|
4273
4428
|
errors,
|
|
@@ -4287,26 +4442,40 @@ function Textfield(props) {
|
|
|
4287
4442
|
id: prefixId(id, formId),
|
|
4288
4443
|
onInput: onChange,
|
|
4289
4444
|
type: "text",
|
|
4290
|
-
value: value
|
|
4445
|
+
value: value,
|
|
4446
|
+
"aria-describedby": errorMessageId
|
|
4291
4447
|
})
|
|
4292
4448
|
}), jsxRuntime.jsx(Description, {
|
|
4293
4449
|
description: description
|
|
4294
4450
|
}), jsxRuntime.jsx(Errors, {
|
|
4295
|
-
errors: errors
|
|
4451
|
+
errors: errors,
|
|
4452
|
+
id: errorMessageId
|
|
4296
4453
|
})]
|
|
4297
4454
|
});
|
|
4298
4455
|
}
|
|
4299
|
-
Textfield.
|
|
4300
|
-
|
|
4301
|
-
|
|
4302
|
-
|
|
4303
|
-
|
|
4304
|
-
|
|
4305
|
-
|
|
4306
|
-
|
|
4307
|
-
|
|
4308
|
-
|
|
4309
|
-
|
|
4456
|
+
Textfield.config = {
|
|
4457
|
+
type: type$1,
|
|
4458
|
+
keyed: true,
|
|
4459
|
+
label: 'Text field',
|
|
4460
|
+
group: 'basic-input',
|
|
4461
|
+
emptyValue: '',
|
|
4462
|
+
sanitizeValue: ({
|
|
4463
|
+
value
|
|
4464
|
+
}) => {
|
|
4465
|
+
if (minDash.isArray(value) || minDash.isObject(value)) {
|
|
4466
|
+
return '';
|
|
4467
|
+
}
|
|
4468
|
+
|
|
4469
|
+
// sanitize newlines to spaces
|
|
4470
|
+
if (typeof value === 'string') {
|
|
4471
|
+
return value.replace(/[\r\n\t]/g, ' ');
|
|
4472
|
+
}
|
|
4473
|
+
return String(value);
|
|
4474
|
+
},
|
|
4475
|
+
create: (options = {}) => ({
|
|
4476
|
+
...options
|
|
4477
|
+
})
|
|
4478
|
+
};
|
|
4310
4479
|
|
|
4311
4480
|
const type = 'textarea';
|
|
4312
4481
|
function Textarea(props) {
|
|
@@ -4353,6 +4522,7 @@ function Textarea(props) {
|
|
|
4353
4522
|
const {
|
|
4354
4523
|
formId
|
|
4355
4524
|
} = hooks.useContext(FormContext$1);
|
|
4525
|
+
const errorMessageId = errors.length === 0 ? undefined : `${prefixId(id, formId)}-error-message`;
|
|
4356
4526
|
return jsxRuntime.jsxs("div", {
|
|
4357
4527
|
class: formFieldClasses(type, {
|
|
4358
4528
|
errors,
|
|
@@ -4368,25 +4538,29 @@ function Textarea(props) {
|
|
|
4368
4538
|
id: prefixId(id, formId),
|
|
4369
4539
|
onInput: onInput,
|
|
4370
4540
|
value: value,
|
|
4371
|
-
ref: textareaRef
|
|
4541
|
+
ref: textareaRef,
|
|
4542
|
+
"aria-describedby": errorMessageId
|
|
4372
4543
|
}), jsxRuntime.jsx(Description, {
|
|
4373
4544
|
description: description
|
|
4374
4545
|
}), jsxRuntime.jsx(Errors, {
|
|
4375
|
-
errors: errors
|
|
4546
|
+
errors: errors,
|
|
4547
|
+
id: errorMessageId
|
|
4376
4548
|
})]
|
|
4377
4549
|
});
|
|
4378
4550
|
}
|
|
4379
|
-
Textarea.
|
|
4380
|
-
|
|
4381
|
-
|
|
4382
|
-
|
|
4383
|
-
|
|
4384
|
-
|
|
4385
|
-
|
|
4386
|
-
|
|
4387
|
-
value
|
|
4388
|
-
|
|
4389
|
-
|
|
4551
|
+
Textarea.config = {
|
|
4552
|
+
type,
|
|
4553
|
+
keyed: true,
|
|
4554
|
+
label: 'Text area',
|
|
4555
|
+
group: 'basic-input',
|
|
4556
|
+
emptyValue: '',
|
|
4557
|
+
sanitizeValue: ({
|
|
4558
|
+
value
|
|
4559
|
+
}) => minDash.isArray(value) || minDash.isObject(value) ? '' : String(value),
|
|
4560
|
+
create: (options = {}) => ({
|
|
4561
|
+
...options
|
|
4562
|
+
})
|
|
4563
|
+
};
|
|
4390
4564
|
|
|
4391
4565
|
function _extends$d() { _extends$d = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$d.apply(this, arguments); }
|
|
4392
4566
|
var ButtonIcon = (({
|
|
@@ -4395,10 +4569,11 @@ var ButtonIcon = (({
|
|
|
4395
4569
|
}) => /*#__PURE__*/React.createElement("svg", _extends$d({
|
|
4396
4570
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4397
4571
|
width: "54",
|
|
4398
|
-
height: "54"
|
|
4572
|
+
height: "54",
|
|
4573
|
+
fill: "currentcolor"
|
|
4399
4574
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4400
4575
|
fillRule: "evenodd",
|
|
4401
|
-
d: "M45 17a3 3 0 013 3v14a3 3 0 01-3 3H9a3 3 0 01-3-3V20a3 3 0 013-3h36zm-9 8.889H18v2.
|
|
4576
|
+
d: "M45 17a3 3 0 013 3v14a3 3 0 01-3 3H9a3 3 0 01-3-3V20a3 3 0 013-3h36zm-9 8.889H18v2.222h18v-2.222z"
|
|
4402
4577
|
})));
|
|
4403
4578
|
|
|
4404
4579
|
function _extends$c() { _extends$c = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$c.apply(this, arguments); }
|
|
@@ -4408,7 +4583,8 @@ var CheckboxIcon = (({
|
|
|
4408
4583
|
}) => /*#__PURE__*/React.createElement("svg", _extends$c({
|
|
4409
4584
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4410
4585
|
width: "54",
|
|
4411
|
-
height: "54"
|
|
4586
|
+
height: "54",
|
|
4587
|
+
fill: "currentcolor"
|
|
4412
4588
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4413
4589
|
d: "M34 18H20a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V20a2 2 0 00-2-2zm-9 14l-5-5 1.41-1.41L25 29.17l7.59-7.59L34 23l-9 9z"
|
|
4414
4590
|
})));
|
|
@@ -4419,18 +4595,35 @@ var ChecklistIcon = (({
|
|
|
4419
4595
|
...props
|
|
4420
4596
|
}) => /*#__PURE__*/React.createElement("svg", _extends$b({
|
|
4421
4597
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4598
|
+
xmlnsXlink: "http://www.w3.org/1999/xlink",
|
|
4422
4599
|
width: "54",
|
|
4423
4600
|
height: "54",
|
|
4424
|
-
fill: "
|
|
4425
|
-
}, props), /*#__PURE__*/React.createElement("
|
|
4426
|
-
fillRule: "evenodd"
|
|
4427
|
-
|
|
4428
|
-
|
|
4429
|
-
|
|
4601
|
+
fill: "currentcolor"
|
|
4602
|
+
}, props), /*#__PURE__*/React.createElement("g", {
|
|
4603
|
+
fillRule: "evenodd"
|
|
4604
|
+
}, /*#__PURE__*/React.createElement("use", {
|
|
4605
|
+
xlinkHref: "#a"
|
|
4606
|
+
}), /*#__PURE__*/React.createElement("use", {
|
|
4607
|
+
xlinkHref: "#a",
|
|
4608
|
+
y: "24"
|
|
4609
|
+
}), /*#__PURE__*/React.createElement("use", {
|
|
4610
|
+
xlinkHref: "#a",
|
|
4611
|
+
y: "12"
|
|
4612
|
+
})), /*#__PURE__*/React.createElement("use", {
|
|
4613
|
+
xlinkHref: "#b"
|
|
4614
|
+
}), /*#__PURE__*/React.createElement("use", {
|
|
4615
|
+
xlinkHref: "#b",
|
|
4616
|
+
y: "12"
|
|
4617
|
+
}), /*#__PURE__*/React.createElement("use", {
|
|
4618
|
+
xlinkHref: "#b",
|
|
4619
|
+
y: "24"
|
|
4620
|
+
}), /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("path", {
|
|
4621
|
+
id: "a",
|
|
4622
|
+
d: "M18 12h-6v6h6v-6zm-6-2a2 2 0 00-2 2v6a2 2 0 002 2h6a2 2 0 002-2v-6a2 2 0 00-2-2h-6z"
|
|
4430
4623
|
}), /*#__PURE__*/React.createElement("path", {
|
|
4431
|
-
|
|
4432
|
-
|
|
4433
|
-
})));
|
|
4624
|
+
id: "b",
|
|
4625
|
+
d: "M23 14.5a1 1 0 011-1h19a1 1 0 011 1v1a1 1 0 01-1 1H24a1 1 0 01-1-1v-1z"
|
|
4626
|
+
}))));
|
|
4434
4627
|
|
|
4435
4628
|
function _extends$a() { _extends$a = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$a.apply(this, arguments); }
|
|
4436
4629
|
var DatetimeIcon = (({
|
|
@@ -4440,20 +4633,15 @@ var DatetimeIcon = (({
|
|
|
4440
4633
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4441
4634
|
width: "54",
|
|
4442
4635
|
height: "54",
|
|
4443
|
-
fill: "
|
|
4636
|
+
fill: "currentcolor"
|
|
4444
4637
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4445
|
-
fill: "#000",
|
|
4446
4638
|
fillRule: "evenodd",
|
|
4447
|
-
d: "M37.908 13.418h-5.004v-2.354h-1.766v2.354H21.13v-2.354h-1.766v2.354H14.
|
|
4448
|
-
clipRule: "evenodd"
|
|
4639
|
+
d: "M37.908 13.418h-5.004v-2.354h-1.766v2.354H21.13v-2.354h-1.766v2.354H14.36a2.07 2.07 0 00-2.06 2.06v23.549a2.07 2.07 0 002.06 2.06h6.77v-1.766h-6.358a.707.707 0 01-.706-.706V15.89c0-.39.316-.707.706-.707h4.592v2.355h1.766v-2.355h10.008v2.355h1.766v-2.355h4.592a.71.71 0 01.707.707v6.358h1.765v-6.77c0-1.133-.927-2.06-2.06-2.06z"
|
|
4449
4640
|
}), /*#__PURE__*/React.createElement("path", {
|
|
4450
|
-
fill: "#000",
|
|
4451
4641
|
d: "M35.13 37.603l1.237-1.237-3.468-3.475v-5.926h-1.754v6.654l3.984 3.984z"
|
|
4452
4642
|
}), /*#__PURE__*/React.createElement("path", {
|
|
4453
|
-
fill: "#000",
|
|
4454
4643
|
fillRule: "evenodd",
|
|
4455
|
-
d: "M23.08 36.962a9.678 9.678 0 1017.883-7.408 9.678 9.678 0 00-17.882 7.408zm4.54-10.292a7.924 7.924 0 118.805 13.177A7.924 7.924 0 0127.62 26.67z"
|
|
4456
|
-
clipRule: "evenodd"
|
|
4644
|
+
d: "M23.08 36.962a9.678 9.678 0 1017.883-7.408 9.678 9.678 0 00-17.882 7.408zm4.54-10.292a7.924 7.924 0 118.805 13.177A7.924 7.924 0 0127.62 26.67z"
|
|
4457
4645
|
})));
|
|
4458
4646
|
|
|
4459
4647
|
function _extends$9() { _extends$9 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$9.apply(this, arguments); }
|
|
@@ -4461,18 +4649,15 @@ var TaglistIcon = (({
|
|
|
4461
4649
|
styles = {},
|
|
4462
4650
|
...props
|
|
4463
4651
|
}) => /*#__PURE__*/React.createElement("svg", _extends$9({
|
|
4652
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
4464
4653
|
width: "54",
|
|
4465
4654
|
height: "54",
|
|
4466
|
-
fill: "
|
|
4467
|
-
xmlns: "http://www.w3.org/2000/svg"
|
|
4655
|
+
fill: "currentcolor"
|
|
4468
4656
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4469
4657
|
fillRule: "evenodd",
|
|
4470
|
-
|
|
4471
|
-
d: "M45 16a3 3 0 013 3v16a3 3 0 01-3 3H9a3 3 0 01-3-3V19a3 3 0 013-3h36zm0 2H9a1 1 0 00-1 1v16a1 1 0 001 1h36a1 1 0 001-1V19a1 1 0 00-1-1z",
|
|
4472
|
-
fill: "#000"
|
|
4658
|
+
d: "M45 16a3 3 0 013 3v16a3 3 0 01-3 3H9a3 3 0 01-3-3V19a3 3 0 013-3h36zm0 2H9a1 1 0 00-1 1v16a1 1 0 001 1h36a1 1 0 001-1V19a1 1 0 00-1-1z"
|
|
4473
4659
|
}), /*#__PURE__*/React.createElement("path", {
|
|
4474
|
-
d: "M11 22a1 1 0 011-1h19a1 1 0 011 1v10a1 1 0 01-1 1H12a1 1 0 01-1-1V22z"
|
|
4475
|
-
fill: "#505562"
|
|
4660
|
+
d: "M11 22a1 1 0 011-1h19a1 1 0 011 1v10a1 1 0 01-1 1H12a1 1 0 01-1-1V22z"
|
|
4476
4661
|
})));
|
|
4477
4662
|
|
|
4478
4663
|
function _extends$8() { _extends$8 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$8.apply(this, arguments); }
|
|
@@ -4484,22 +4669,22 @@ var FormIcon = (({
|
|
|
4484
4669
|
width: "54",
|
|
4485
4670
|
height: "54"
|
|
4486
4671
|
}, props), /*#__PURE__*/React.createElement("rect", {
|
|
4487
|
-
x: "15",
|
|
4488
|
-
y: "17",
|
|
4489
4672
|
width: "24",
|
|
4490
4673
|
height: "4",
|
|
4674
|
+
x: "15",
|
|
4675
|
+
y: "17",
|
|
4491
4676
|
rx: "1"
|
|
4492
4677
|
}), /*#__PURE__*/React.createElement("rect", {
|
|
4493
|
-
x: "15",
|
|
4494
|
-
y: "25",
|
|
4495
4678
|
width: "24",
|
|
4496
4679
|
height: "4",
|
|
4680
|
+
x: "15",
|
|
4681
|
+
y: "25",
|
|
4497
4682
|
rx: "1"
|
|
4498
4683
|
}), /*#__PURE__*/React.createElement("rect", {
|
|
4499
|
-
x: "15",
|
|
4500
|
-
y: "33",
|
|
4501
4684
|
width: "13",
|
|
4502
4685
|
height: "4",
|
|
4686
|
+
x: "15",
|
|
4687
|
+
y: "33",
|
|
4503
4688
|
rx: "1"
|
|
4504
4689
|
})));
|
|
4505
4690
|
|
|
@@ -4523,7 +4708,8 @@ var NumberIcon = (({
|
|
|
4523
4708
|
}) => /*#__PURE__*/React.createElement("svg", _extends$6({
|
|
4524
4709
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4525
4710
|
width: "54",
|
|
4526
|
-
height: "54"
|
|
4711
|
+
height: "54",
|
|
4712
|
+
fill: "currentcolor"
|
|
4527
4713
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4528
4714
|
fillRule: "evenodd",
|
|
4529
4715
|
d: "M45 16a3 3 0 013 3v16a3 3 0 01-3 3H9a3 3 0 01-3-3V19a3 3 0 013-3h36zm0 2H9a1 1 0 00-1 1v16a1 1 0 001 1h36a1 1 0 001-1V19a1 1 0 00-1-1zM35 28.444h7l-3.5 4-3.5-4zM35 26h7l-3.5-4-3.5 4z"
|
|
@@ -4536,9 +4722,10 @@ var RadioIcon = (({
|
|
|
4536
4722
|
}) => /*#__PURE__*/React.createElement("svg", _extends$5({
|
|
4537
4723
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4538
4724
|
width: "54",
|
|
4539
|
-
height: "54"
|
|
4725
|
+
height: "54",
|
|
4726
|
+
fill: "currentcolor"
|
|
4540
4727
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4541
|
-
d: "M27 22c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5c-5.52 0-10 4.48-10 10s4.48 10 10 10 10-4.48 10-10-4.48-10-10-10zm0
|
|
4728
|
+
d: "M27 22c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5c-5.52 0-10 4.48-10 10s4.48 10 10 10 10-4.48 10-10-4.48-10-10-10zm0 18a8 8 0 110-16 8 8 0 110 16z"
|
|
4542
4729
|
})));
|
|
4543
4730
|
|
|
4544
4731
|
function _extends$4() { _extends$4 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$4.apply(this, arguments); }
|
|
@@ -4548,7 +4735,8 @@ var SelectIcon = (({
|
|
|
4548
4735
|
}) => /*#__PURE__*/React.createElement("svg", _extends$4({
|
|
4549
4736
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4550
4737
|
width: "54",
|
|
4551
|
-
height: "54"
|
|
4738
|
+
height: "54",
|
|
4739
|
+
fill: "currentcolor"
|
|
4552
4740
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4553
4741
|
fillRule: "evenodd",
|
|
4554
4742
|
d: "M45 16a3 3 0 013 3v16a3 3 0 01-3 3H9a3 3 0 01-3-3V19a3 3 0 013-3h36zm0 2H9a1 1 0 00-1 1v16a1 1 0 001 1h36a1 1 0 001-1V19a1 1 0 00-1-1zm-12 7h9l-4.5 6-4.5-6z"
|
|
@@ -4561,9 +4749,10 @@ var TextIcon = (({
|
|
|
4561
4749
|
}) => /*#__PURE__*/React.createElement("svg", _extends$3({
|
|
4562
4750
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4563
4751
|
width: "54",
|
|
4564
|
-
height: "54"
|
|
4752
|
+
height: "54",
|
|
4753
|
+
fill: "currentcolor"
|
|
4565
4754
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4566
|
-
d: "M20.58 33.77h-3l-1.18-3.08H11l-1.1 3.08H7l5.27-13.54h2.89zm-5-5.36l-1.86-5-1.83 5zM22 20.23h5.41a15.47 15.47 0 012.4.14 3.42 3.42 0 011.41.55 3.47 3.47 0 011 1.14 3 3 0 01.42 1.58 3.26 3.26 0 01-1.91 2.94 3.63 3.63 0 011.91 1.22 3.28 3.28 0 01.66 2 4 4 0 01-.43 1.8 3.63 3.63 0 01-1.09 1.4 3.89 3.89 0 01-1.83.65q-.69.07-3.3.09H22zm2.73 2.25v3.13h3.8a1.79 1.79 0 001.1-.49 1.41 1.41 0 00.41-1 1.49 1.49 0 00-.35-1 1.54 1.54 0 00-1-.48c-.27 0-1.05-.05-2.34-.05zm0 5.39v3.62h2.57a11.52 11.52 0 001.88-.09 1.65 1.65 0 001-.54 1.6 1.6 0 00.38-1.14 1.75 1.75 0 00-.29-1 1.69 1.69 0 00-.86-.62 9.28 9.28 0 00-2.41-.
|
|
4755
|
+
d: "M20.58 33.77h-3l-1.18-3.08H11l-1.1 3.08H7l5.27-13.54h2.89zm-5-5.36l-1.86-5-1.83 5zM22 20.23h5.41a15.47 15.47 0 012.4.14 3.42 3.42 0 011.41.55 3.47 3.47 0 011 1.14 3 3 0 01.42 1.58 3.26 3.26 0 01-1.91 2.94 3.63 3.63 0 011.91 1.22 3.28 3.28 0 01.66 2 4 4 0 01-.43 1.8 3.63 3.63 0 01-1.09 1.4 3.89 3.89 0 01-1.83.65q-.69.07-3.3.09H22zm2.73 2.25v3.13h3.8a1.79 1.79 0 001.1-.49 1.41 1.41 0 00.41-1 1.49 1.49 0 00-.35-1 1.54 1.54 0 00-1-.48c-.27 0-1.05-.05-2.34-.05zm0 5.39v3.62h2.57a11.52 11.52 0 001.88-.09 1.65 1.65 0 001-.54 1.6 1.6 0 00.38-1.14 1.75 1.75 0 00-.29-1 1.69 1.69 0 00-.86-.62 9.28 9.28 0 00-2.41-.23zm19.62.92l2.65.84a5.94 5.94 0 01-2 3.29A5.74 5.74 0 0141.38 34a5.87 5.87 0 01-4.44-1.84 7.09 7.09 0 01-1.73-5A7.43 7.43 0 0137 21.87 6 6 0 0141.54 20a5.64 5.64 0 014 1.47A5.33 5.33 0 0147 24l-2.7.65a2.8 2.8 0 00-2.86-2.27A3.09 3.09 0 0039 23.42a5.31 5.31 0 00-.93 3.5 5.62 5.62 0 00.93 3.65 3 3 0 002.4 1.09 2.72 2.72 0 001.82-.66 4 4 0 001.13-2.21z"
|
|
4567
4756
|
})));
|
|
4568
4757
|
|
|
4569
4758
|
function _extends$2() { _extends$2 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$2.apply(this, arguments); }
|
|
@@ -4573,7 +4762,8 @@ var TextfieldIcon = (({
|
|
|
4573
4762
|
}) => /*#__PURE__*/React.createElement("svg", _extends$2({
|
|
4574
4763
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4575
4764
|
width: "54",
|
|
4576
|
-
height: "54"
|
|
4765
|
+
height: "54",
|
|
4766
|
+
fill: "currentcolor"
|
|
4577
4767
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4578
4768
|
fillRule: "evenodd",
|
|
4579
4769
|
d: "M45 16a3 3 0 013 3v16a3 3 0 01-3 3H9a3 3 0 01-3-3V19a3 3 0 013-3h36zm0 2H9a1 1 0 00-1 1v16a1 1 0 001 1h36a1 1 0 001-1V19a1 1 0 00-1-1zm-32 4v10h-2V22h2z"
|
|
@@ -4586,10 +4776,11 @@ var TextareaIcon = (({
|
|
|
4586
4776
|
}) => /*#__PURE__*/React.createElement("svg", _extends$1({
|
|
4587
4777
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4588
4778
|
width: "54",
|
|
4589
|
-
height: "54"
|
|
4779
|
+
height: "54",
|
|
4780
|
+
fill: "currentcolor"
|
|
4590
4781
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4591
4782
|
fillRule: "evenodd",
|
|
4592
|
-
d: "M45 13a3 3 0 013 3v22a3 3 0 01-3 3H9a3 3 0 01-3-3V16a3 3 0 013-3h36zm0 2H9a1 1 0 00-1 1v22a1 1 0 001 1h36a1 1 0 001-1V16a1 1 0 00-1-1zm-1.136 15.5l.
|
|
4783
|
+
d: "M45 13a3 3 0 013 3v22a3 3 0 01-3 3H9a3 3 0 01-3-3V16a3 3 0 013-3h36zm0 2H9a1 1 0 00-1 1v22a1 1 0 001 1h36a1 1 0 001-1V16a1 1 0 00-1-1zm-1.136 15.5l.849.849-6.364 6.364-.849-.849 6.364-6.364zm.264 3.5l.849.849-2.828 2.828-.849-.849L44.128 34zM13 19v10h-2V19h2z"
|
|
4593
4784
|
})));
|
|
4594
4785
|
|
|
4595
4786
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
@@ -4597,20 +4788,18 @@ var ImageIcon = (({
|
|
|
4597
4788
|
styles = {},
|
|
4598
4789
|
...props
|
|
4599
4790
|
}) => /*#__PURE__*/React.createElement("svg", _extends({
|
|
4791
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
4600
4792
|
width: "54",
|
|
4601
4793
|
height: "54",
|
|
4602
|
-
fill: "
|
|
4603
|
-
xmlns: "http://www.w3.org/2000/svg"
|
|
4794
|
+
fill: "currentcolor"
|
|
4604
4795
|
}, props), /*#__PURE__*/React.createElement("path", {
|
|
4605
4796
|
fillRule: "evenodd",
|
|
4606
|
-
clipRule: "evenodd",
|
|
4607
4797
|
d: "M34.636 21.91A3.818 3.818 0 1127 21.908a3.818 3.818 0 017.636 0zm-2 0A1.818 1.818 0 1129 21.908a1.818 1.818 0 013.636 0z",
|
|
4608
|
-
|
|
4798
|
+
clipRule: "evenodd"
|
|
4609
4799
|
}), /*#__PURE__*/React.createElement("path", {
|
|
4610
4800
|
fillRule: "evenodd",
|
|
4611
|
-
|
|
4612
|
-
|
|
4613
|
-
fill: "#000"
|
|
4801
|
+
d: "M15 13a2 2 0 00-2 2v24a2 2 0 002 2h24a2 2 0 002-2V15a2 2 0 00-2-2H15zm24 2H15v12.45l4.71-4.709a1.91 1.91 0 012.702 0l6.695 6.695 2.656-1.77a1.91 1.91 0 012.411.239L39 32.73V15zM15 39v-8.754a.975.975 0 00.168-.135l5.893-5.893 6.684 6.685a1.911 1.911 0 002.41.238l2.657-1.77 6.02 6.02c.052.051.108.097.168.135V39H15z",
|
|
4802
|
+
clipRule: "evenodd"
|
|
4614
4803
|
})));
|
|
4615
4804
|
|
|
4616
4805
|
const iconsByType = type => {
|
|
@@ -4638,7 +4827,7 @@ class FormFields {
|
|
|
4638
4827
|
constructor() {
|
|
4639
4828
|
this._formFields = {};
|
|
4640
4829
|
formFields.forEach(formField => {
|
|
4641
|
-
this.register(formField.type, formField);
|
|
4830
|
+
this.register(formField.config.type, formField);
|
|
4642
4831
|
});
|
|
4643
4832
|
}
|
|
4644
4833
|
register(type, formField) {
|