@k-int/stripes-kint-components 5.27.0 → 5.28.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/CHANGELOG.md +10 -0
- package/es/index.js +9 -68
- package/es/lib/FieldLabel/FieldLabel.js +34 -0
- package/es/lib/FieldLabel/index.js +13 -0
- package/es/lib/RefdataButtons/RefdataButtons.js +5 -2
- package/es/lib/{EditableRefdataCategoryList → Settings/EditableRefdataCategoryList}/EditableRefdataCategoryList.js +6 -6
- package/es/lib/{EditableRefdataList → Settings/EditableRefdataList}/EditableRefdataList.js +4 -4
- package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsListFieldArray/EditableSettingsListFieldArray.test.js +1 -1
- package/es/lib/Settings/EditableSettingsList/SettingField/EditSettingValue/EditSettingValue.js +60 -0
- package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/EditSettingValue/EditSettingValue.test.js +10 -10
- package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/RenderSettingValue/RenderSettingValue.js +1 -1
- package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/RenderSettingValue/RenderSettingValue.test.js +2 -2
- package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/SettingField.js +3 -3
- package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/SettingField.test.js +2 -2
- package/es/lib/{RefdataCategoriesSettings → Settings/RefdataCategoriesSettings}/RefdataCategoriesSettings.js +2 -2
- package/es/lib/{SettingPage → Settings/SettingPage}/SettingPage.js +1 -1
- package/es/lib/{SettingPage → Settings/SettingPage}/SettingPagePane/SettingPagePane.js +2 -2
- package/es/lib/{SettingsFormContainer → Settings/SettingsFormContainer}/SettingsFormContainer.js +1 -1
- package/es/lib/Settings/StaticSettingsField/StaticSettingsField.js +89 -0
- package/es/lib/Settings/StaticSettingsField/index.js +13 -0
- package/es/lib/Settings/constants/index.js +16 -0
- package/es/lib/Settings/constants/queryKeys.js +12 -0
- package/es/lib/{settingsHooks → Settings/hooks}/index.js +17 -0
- package/es/lib/Settings/hooks/staticSettingsPages/index.js +27 -0
- package/es/lib/Settings/hooks/staticSettingsPages/useSettingCallout/index.js +13 -0
- package/es/lib/Settings/hooks/staticSettingsPages/useSettingCallout/useSettingCallout.js +59 -0
- package/es/lib/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/index.js +13 -0
- package/es/lib/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/useSettingsSectionInitalValues.js +33 -0
- package/es/lib/Settings/hooks/staticSettingsPages/useStaticSettingsSection.js +121 -0
- package/es/lib/{settingsHooks → Settings/hooks}/useAppSettings/useAppSettings.js +1 -1
- package/es/lib/{settingsHooks → Settings/hooks}/useSettingSection/useSettingSection.js +4 -3
- package/es/lib/{settingsHooks → Settings/hooks}/useSettings/useSettings.js +2 -2
- package/es/lib/Settings/index.js +107 -0
- package/package.json +1 -1
- package/src/index.js +5 -21
- package/src/lib/FieldLabel/FieldLabel.js +26 -0
- package/src/lib/FieldLabel/README.md +26 -0
- package/src/lib/FieldLabel/index.js +1 -0
- package/src/lib/RefdataButtons/RefdataButtons.js +5 -1
- package/src/lib/{EditableRefdataCategoryList → Settings/EditableRefdataCategoryList}/EditableRefdataCategoryList.js +6 -6
- package/src/lib/{EditableRefdataList → Settings/EditableRefdataList}/EditableRefdataList.js +4 -4
- package/src/lib/Settings/EditableRefdataList/README.md +26 -0
- package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsListFieldArray/EditableSettingsListFieldArray.test.js +1 -1
- package/src/lib/Settings/EditableSettingsList/SettingField/EditSettingValue/EditSettingValue.js +50 -0
- package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/EditSettingValue/EditSettingValue.test.js +10 -10
- package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/RenderSettingValue/RenderSettingValue.js +1 -1
- package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/RenderSettingValue/RenderSettingValue.test.js +2 -2
- package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/SettingField.js +3 -3
- package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/SettingField.test.js +2 -2
- package/src/lib/{RefdataCategoriesSettings → Settings/RefdataCategoriesSettings}/RefdataCategoriesSettings.js +2 -2
- package/src/lib/{SettingPage → Settings/SettingPage}/SettingPage.js +1 -1
- package/src/lib/{SettingPage → Settings/SettingPage}/SettingPagePane/SettingPagePane.js +2 -2
- package/src/lib/{SettingsFormContainer → Settings/SettingsFormContainer}/SettingsFormContainer.js +1 -1
- package/src/lib/{EditableSettingsList/SettingField/EditSettingValue/EditSettingValue.js → Settings/StaticSettingsField/StaticSettingsField.js} +18 -40
- package/src/lib/Settings/StaticSettingsField/index.js +1 -0
- package/src/lib/Settings/constants/index.js +1 -0
- package/src/lib/Settings/constants/queryKeys.js +5 -0
- package/src/lib/{settingsHooks → Settings/hooks}/index.js +1 -0
- package/src/lib/Settings/hooks/staticSettingsPages/README.md +187 -0
- package/src/lib/Settings/hooks/staticSettingsPages/index.js +3 -0
- package/src/lib/Settings/hooks/staticSettingsPages/useSettingCallout/index.js +1 -0
- package/src/lib/Settings/hooks/staticSettingsPages/useSettingCallout/useSettingCallout.js +52 -0
- package/src/lib/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/index.js +1 -0
- package/src/lib/Settings/hooks/staticSettingsPages/useSettingsSectionInitalValues/useSettingsSectionInitalValues.js +27 -0
- package/src/lib/Settings/hooks/staticSettingsPages/useStaticSettingsSection.js +100 -0
- package/src/lib/{settingsHooks → Settings/hooks}/useAppSettings/README.md +1 -1
- package/src/lib/{settingsHooks → Settings/hooks}/useAppSettings/useAppSettings.js +1 -1
- package/src/lib/{settingsHooks → Settings/hooks}/useSettingSection/useSettingSection.js +5 -3
- package/src/lib/{settingsHooks → Settings/hooks}/useSettings/useSettings.js +2 -2
- package/src/lib/Settings/index.js +28 -0
- package/test/jest/helpers/KintHarness.js +1 -1
- package/es/lib/EditableSettingsList/SettingField/EditSettingValue/EditSettingValue.js +0 -107
- package/src/lib/EditableRefdataList/README.md +0 -26
- /package/es/lib/{EditableRefdataCategoryList → Settings/EditableRefdataCategoryList}/index.js +0 -0
- /package/es/lib/{EditableRefdataList → Settings/EditableRefdataList}/index.js +0 -0
- /package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsList.js +0 -0
- /package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsListFieldArray/EditableSettingsListFieldArray.js +0 -0
- /package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsListFieldArray/index.js +0 -0
- /package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/EditSettingValue/index.js +0 -0
- /package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/RenderSettingValue/index.js +0 -0
- /package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/index.js +0 -0
- /package/es/lib/{EditableSettingsList → Settings/EditableSettingsList}/index.js +0 -0
- /package/es/lib/{RefdataCategoriesSettings → Settings/RefdataCategoriesSettings}/index.js +0 -0
- /package/es/lib/{SettingPage → Settings/SettingPage}/SettingPagePane/index.js +0 -0
- /package/es/lib/{SettingPage → Settings/SettingPage}/index.js +0 -0
- /package/es/lib/{SettingsFormContainer → Settings/SettingsFormContainer}/index.js +0 -0
- /package/es/lib/{contexts → Settings/contexts}/SettingsContext.js +0 -0
- /package/es/lib/{contexts → Settings/contexts}/index.js +0 -0
- /package/es/lib/{settingsHooks → Settings/hooks}/useAppSettings/index.js +0 -0
- /package/es/lib/{settingsHooks → Settings/hooks}/useSettingSection/index.js +0 -0
- /package/es/lib/{settingsHooks → Settings/hooks}/useSettings/index.js +0 -0
- /package/src/lib/{EditableRefdataCategoryList → Settings/EditableRefdataCategoryList}/index.js +0 -0
- /package/src/lib/{EditableRefdataList → Settings/EditableRefdataList}/index.js +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsList.js +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsListFieldArray/EditableSettingsListFieldArray.js +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsListFieldArray/README.md +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/EditableSettingsListFieldArray/index.js +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/README.md +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/EditSettingValue/README.md +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/EditSettingValue/index.js +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/README.md +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/RenderSettingValue/index.js +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/SettingField/index.js +0 -0
- /package/src/lib/{EditableSettingsList → Settings/EditableSettingsList}/index.js +0 -0
- /package/src/lib/{RefdataCategoriesSettings → Settings/RefdataCategoriesSettings}/index.js +0 -0
- /package/src/lib/{SettingPage → Settings/SettingPage}/README.md +0 -0
- /package/src/lib/{SettingPage → Settings/SettingPage}/SettingPagePane/README.md +0 -0
- /package/src/lib/{SettingPage → Settings/SettingPage}/SettingPagePane/index.js +0 -0
- /package/src/lib/{SettingPage → Settings/SettingPage}/index.js +0 -0
- /package/src/lib/{SettingsFormContainer → Settings/SettingsFormContainer}/index.js +0 -0
- /package/src/lib/{contexts → Settings/contexts}/SettingsContext.js +0 -0
- /package/src/lib/{contexts → Settings/contexts}/index.js +0 -0
- /package/src/lib/{settingsHooks → Settings/hooks}/useAppSettings/index.js +0 -0
- /package/src/lib/{settingsHooks → Settings/hooks}/useSettingSection/README.md +0 -0
- /package/src/lib/{settingsHooks → Settings/hooks}/useSettingSection/index.js +0 -0
- /package/src/lib/{settingsHooks → Settings/hooks}/useSettings/README.md +0 -0
- /package/src/lib/{settingsHooks → Settings/hooks}/useSettings/index.js +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.GET_SETTING_SECTION_QUERY_KEY = exports.GET_SETTING_SECTION_MUTATE_KEY = exports.BASE_APP_SETTING_QUERY_KEY = exports.BASE_APP_SETTING_MUTATE_KEY = void 0;
|
|
7
|
+
const BASE_APP_SETTING_QUERY_KEY = exports.BASE_APP_SETTING_QUERY_KEY = ['stripes-kint-components', 'useSetting', 'appSettings'];
|
|
8
|
+
const GET_SETTING_SECTION_QUERY_KEY = (queryParams, sectionName) => [...BASE_APP_SETTING_QUERY_KEY, sectionName, queryParams];
|
|
9
|
+
exports.GET_SETTING_SECTION_QUERY_KEY = GET_SETTING_SECTION_QUERY_KEY;
|
|
10
|
+
const BASE_APP_SETTING_MUTATE_KEY = exports.BASE_APP_SETTING_MUTATE_KEY = ['stripes-kint-components', 'useSetting', 'putSetting'];
|
|
11
|
+
const GET_SETTING_SECTION_MUTATE_KEY = sectionName => [...BASE_APP_SETTING_MUTATE_KEY, sectionName];
|
|
12
|
+
exports.GET_SETTING_SECTION_MUTATE_KEY = GET_SETTING_SECTION_MUTATE_KEY;
|
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
useSettings: true,
|
|
8
|
+
useSettingSection: true,
|
|
9
|
+
useAppSettings: true
|
|
10
|
+
};
|
|
6
11
|
Object.defineProperty(exports, "useAppSettings", {
|
|
7
12
|
enumerable: true,
|
|
8
13
|
get: function () {
|
|
@@ -24,4 +29,16 @@ Object.defineProperty(exports, "useSettings", {
|
|
|
24
29
|
var _useSettings = _interopRequireDefault(require("./useSettings"));
|
|
25
30
|
var _useSettingSection = _interopRequireDefault(require("./useSettingSection"));
|
|
26
31
|
var _useAppSettings = _interopRequireDefault(require("./useAppSettings"));
|
|
32
|
+
var _staticSettingsPages = require("./staticSettingsPages");
|
|
33
|
+
Object.keys(_staticSettingsPages).forEach(function (key) {
|
|
34
|
+
if (key === "default" || key === "__esModule") return;
|
|
35
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
36
|
+
if (key in exports && exports[key] === _staticSettingsPages[key]) return;
|
|
37
|
+
Object.defineProperty(exports, key, {
|
|
38
|
+
enumerable: true,
|
|
39
|
+
get: function () {
|
|
40
|
+
return _staticSettingsPages[key];
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
});
|
|
27
44
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useSettingCallout", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _useSettingCallout.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "useSettingsSectionInitalValues", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _useSettingsSectionInitalValues.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "useStaticSettingsSection", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _useStaticSettingsSection.default;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
var _useSettingsSectionInitalValues = _interopRequireDefault(require("./useSettingsSectionInitalValues"));
|
|
25
|
+
var _useSettingCallout = _interopRequireDefault(require("./useSettingCallout"));
|
|
26
|
+
var _useStaticSettingsSection = _interopRequireDefault(require("./useStaticSettingsSection"));
|
|
27
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "default", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _useSettingCallout.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _useSettingCallout = _interopRequireDefault(require("./useSettingCallout"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _core = require("@folio/stripes/core");
|
|
9
|
+
var _hooks = require("../../../../hooks");
|
|
10
|
+
var _utils = require("../../../../utils");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
// A hook which can take an array of settings objects and return a
|
|
13
|
+
const useSettingCallout = function () {
|
|
14
|
+
let {
|
|
15
|
+
labelOverrides = [],
|
|
16
|
+
intlKey: passedIntlKey,
|
|
17
|
+
intlNS: passedIntlNS
|
|
18
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
19
|
+
const callout = (0, _core.useCallout)();
|
|
20
|
+
const kintIntl = (0, _hooks.useKintIntl)(passedIntlKey, passedIntlNS);
|
|
21
|
+
return (0, _react.useCallback)(_ref => {
|
|
22
|
+
let {
|
|
23
|
+
settings,
|
|
24
|
+
type
|
|
25
|
+
} = _ref;
|
|
26
|
+
callout.sendCallout({
|
|
27
|
+
type,
|
|
28
|
+
timeout: 10000,
|
|
29
|
+
message: /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", {
|
|
30
|
+
children: settings.map(_ref2 => {
|
|
31
|
+
let {
|
|
32
|
+
setting,
|
|
33
|
+
error: _error
|
|
34
|
+
} = _ref2;
|
|
35
|
+
// error will obviously be null for successful updates.
|
|
36
|
+
// We can choose to surface the errors to the user should we wish
|
|
37
|
+
const settingLabel = kintIntl.formatKintMessage({
|
|
38
|
+
id: "settings.".concat(setting.section, ".").concat((0, _utils.toCamelCase)(setting.key)),
|
|
39
|
+
// Camelcasing to keep in line with how we translate the dynamic settings
|
|
40
|
+
overrideValue: labelOverrides[setting.key],
|
|
41
|
+
fallbackMessage: setting.key
|
|
42
|
+
});
|
|
43
|
+
const message = kintIntl.formatKintMessage({
|
|
44
|
+
id: "settings.update.".concat(type),
|
|
45
|
+
overrideValue: labelOverrides[type],
|
|
46
|
+
fallbackMessage: setting.key
|
|
47
|
+
}, {
|
|
48
|
+
settingLabel,
|
|
49
|
+
newValue: setting.value
|
|
50
|
+
});
|
|
51
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
|
|
52
|
+
children: message
|
|
53
|
+
}, setting.id || setting.key);
|
|
54
|
+
})
|
|
55
|
+
})
|
|
56
|
+
});
|
|
57
|
+
}, [callout, kintIntl, labelOverrides]);
|
|
58
|
+
};
|
|
59
|
+
var _default = exports.default = useSettingCallout;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "default", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _useSettingsSectionInitalValues.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _useSettingsSectionInitalValues = _interopRequireDefault(require("./useSettingsSectionInitalValues"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
const useSettingsSectionInitalValues = _ref => {
|
|
9
|
+
let {
|
|
10
|
+
settings: rawSettings // A settingsSection return of EXACTLY the shape defined in useSettingsSection
|
|
11
|
+
} = _ref;
|
|
12
|
+
const initialValues = (0, _react.useMemo)(() => {
|
|
13
|
+
const settingsKeyValue = rawSettings.map(setting => {
|
|
14
|
+
const {
|
|
15
|
+
key,
|
|
16
|
+
value,
|
|
17
|
+
settingType
|
|
18
|
+
} = setting;
|
|
19
|
+
let parsedValue;
|
|
20
|
+
if (settingType === 'Boolean') {
|
|
21
|
+
parsedValue = value === 'true';
|
|
22
|
+
} else if (settingType === 'Integer') {
|
|
23
|
+
parsedValue = Number(value);
|
|
24
|
+
} else {
|
|
25
|
+
parsedValue = value;
|
|
26
|
+
}
|
|
27
|
+
return [key, parsedValue];
|
|
28
|
+
});
|
|
29
|
+
return Object.fromEntries(settingsKeyValue);
|
|
30
|
+
}, [rawSettings]);
|
|
31
|
+
return initialValues;
|
|
32
|
+
};
|
|
33
|
+
var _default = exports.default = useSettingsSectionInitalValues;
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _useSettingSection = _interopRequireDefault(require("../useSettingSection"));
|
|
9
|
+
var _useSettingsSectionInitalValues = _interopRequireDefault(require("./useSettingsSectionInitalValues"));
|
|
10
|
+
var _useSettingCallout = _interopRequireDefault(require("./useSettingCallout"));
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
15
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
16
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
17
|
+
/**
|
|
18
|
+
* A helper hook which collates several hooks useful in the setup and operation of static setting pages, in which
|
|
19
|
+
* an entire section of AppSetting objects needs to be submitted at once
|
|
20
|
+
*/
|
|
21
|
+
const useStaticSettingsSection = _ref => {
|
|
22
|
+
let {
|
|
23
|
+
intlKey: passedIntlKey,
|
|
24
|
+
intlNS: passedIntlNS,
|
|
25
|
+
onSubmitComplete = () => null,
|
|
26
|
+
// Callback which runs after all promises have completed
|
|
27
|
+
onSettingsSuccess = () => null,
|
|
28
|
+
// Specifically logic to handle a list of successful settings calls
|
|
29
|
+
onSettingsFailure = () => null,
|
|
30
|
+
// Specifically logic to handle a list of failed settings calls
|
|
31
|
+
sectionName,
|
|
32
|
+
settingEndpoint,
|
|
33
|
+
getQueryNamespaceGenerator
|
|
34
|
+
} = _ref;
|
|
35
|
+
// Following example in agreements for useAgreementsDisplaySettings
|
|
36
|
+
const settingsSection = (0, _useSettingSection.default)({
|
|
37
|
+
sectionName,
|
|
38
|
+
settingEndpoint,
|
|
39
|
+
getQueryNamespaceGenerator
|
|
40
|
+
});
|
|
41
|
+
const {
|
|
42
|
+
handleSubmit,
|
|
43
|
+
settings: rawSettings
|
|
44
|
+
} = settingsSection;
|
|
45
|
+
|
|
46
|
+
// We should ONLY change initial values when autoResponderValues updates
|
|
47
|
+
// initialValues should take a KIWT AppSetting object and turn it into key/value for the Form
|
|
48
|
+
const initialValues = (0, _useSettingsSectionInitalValues.default)({
|
|
49
|
+
settings: rawSettings
|
|
50
|
+
});
|
|
51
|
+
const sendSettingsCallout = (0, _useSettingCallout.default)({
|
|
52
|
+
intlKey: passedIntlKey,
|
|
53
|
+
intlNS: passedIntlNS
|
|
54
|
+
}); // Translations will need to be set up here for this to work
|
|
55
|
+
|
|
56
|
+
const onSubmit = (0, _react.useCallback)(values => {
|
|
57
|
+
const updates = [];
|
|
58
|
+
rawSettings.forEach(setting => {
|
|
59
|
+
const originalValue = initialValues[setting.key];
|
|
60
|
+
const formValue = values[setting.key];
|
|
61
|
+
if (formValue !== originalValue) {
|
|
62
|
+
updates.push(_objectSpread(_objectSpread({}, setting), {}, {
|
|
63
|
+
value: formValue.toString()
|
|
64
|
+
}));
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
if (updates.length > 0) {
|
|
68
|
+
const successful = [];
|
|
69
|
+
const failed = [];
|
|
70
|
+
|
|
71
|
+
// type MUST be 'success' or 'error'
|
|
72
|
+
|
|
73
|
+
// We catch any failed requests and stick them in an array for us to deal with later
|
|
74
|
+
const updatePromises = updates.map(update => handleSubmit(update).then(() => {
|
|
75
|
+
// Ensure same shape for these objects in failure AND success
|
|
76
|
+
successful.push({
|
|
77
|
+
setting: update
|
|
78
|
+
});
|
|
79
|
+
}).catch(error => {
|
|
80
|
+
failed.push({
|
|
81
|
+
setting: update,
|
|
82
|
+
error
|
|
83
|
+
});
|
|
84
|
+
}));
|
|
85
|
+
return Promise.all(updatePromises).then(() => {
|
|
86
|
+
if (successful.length > 0) {
|
|
87
|
+
sendSettingsCallout({
|
|
88
|
+
type: 'success',
|
|
89
|
+
settings: successful
|
|
90
|
+
});
|
|
91
|
+
onSettingsSuccess({
|
|
92
|
+
settings: successful
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
if (failed.length > 0) {
|
|
96
|
+
sendSettingsCallout({
|
|
97
|
+
type: 'error',
|
|
98
|
+
settings: failed
|
|
99
|
+
});
|
|
100
|
+
onSettingsFailure({
|
|
101
|
+
settings: failed
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
onSubmitComplete();
|
|
105
|
+
return true;
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
// In case we somehow called this with no updates
|
|
109
|
+
// (Shouldn't be possible because of the disabled save button),
|
|
110
|
+
// return an empty promise
|
|
111
|
+
return Promise.resolve(true);
|
|
112
|
+
}, [rawSettings, initialValues, handleSubmit, onSubmitComplete, sendSettingsCallout, onSettingsSuccess, onSettingsFailure]);
|
|
113
|
+
return {
|
|
114
|
+
rawSettings,
|
|
115
|
+
initialValues,
|
|
116
|
+
onSubmit,
|
|
117
|
+
sendSettingsCallout,
|
|
118
|
+
settingsSection
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
var _default = exports.default = useStaticSettingsSection;
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _reactQuery = require("react-query");
|
|
8
8
|
var _core = require("@folio/stripes/core");
|
|
9
|
-
var _utils = require("
|
|
9
|
+
var _utils = require("../../../utils");
|
|
10
10
|
const useAppSettings = _ref => {
|
|
11
11
|
var _ref2, _ref3, _queryObject$data2;
|
|
12
12
|
let {
|
|
@@ -6,7 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _reactQuery = require("react-query");
|
|
8
8
|
var _core = require("@folio/stripes/core");
|
|
9
|
-
var _utils = require("
|
|
9
|
+
var _utils = require("../../../utils");
|
|
10
|
+
var _constants = require("../../constants");
|
|
10
11
|
const _excluded = ["data"],
|
|
11
12
|
_excluded2 = ["mutateAsync"];
|
|
12
13
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
@@ -19,9 +20,9 @@ const useSettingSection = _ref => {
|
|
|
19
20
|
let {
|
|
20
21
|
queryParams
|
|
21
22
|
} = _ref2;
|
|
22
|
-
return
|
|
23
|
+
return (0, _constants.GET_SETTING_SECTION_QUERY_KEY)(queryParams, sectionName);
|
|
23
24
|
},
|
|
24
|
-
getMutateNamespaceGenerator = () =>
|
|
25
|
+
getMutateNamespaceGenerator = () => (0, _constants.GET_SETTING_SECTION_MUTATE_KEY)(sectionName)
|
|
25
26
|
} = _ref;
|
|
26
27
|
const ky = (0, _core.useOkapiKy)();
|
|
27
28
|
const queryParams = (0, _utils.generateKiwtQueryParams)({
|
|
@@ -11,8 +11,8 @@ var _core = require("@folio/stripes/core");
|
|
|
11
11
|
var _smartComponents = require("@folio/stripes/smart-components");
|
|
12
12
|
var _SettingPage = require("../../SettingPage");
|
|
13
13
|
var _contexts = require("../../contexts");
|
|
14
|
-
var _utils = require("
|
|
15
|
-
var _hooks = require("
|
|
14
|
+
var _utils = require("../../../utils");
|
|
15
|
+
var _hooks = require("../../../hooks");
|
|
16
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
17
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
18
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
SettingsFormContainer: true,
|
|
8
|
+
SettingPage: true,
|
|
9
|
+
SettingPagePane: true,
|
|
10
|
+
RefdataCategoriesSettings: true,
|
|
11
|
+
EditableRefdataList: true,
|
|
12
|
+
EditableRefdataCategoryList: true,
|
|
13
|
+
StaticSettingsField: true,
|
|
14
|
+
SettingsContext: true
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "EditableRefdataCategoryList", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () {
|
|
19
|
+
return _EditableRefdataCategoryList.default;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(exports, "EditableRefdataList", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: function () {
|
|
25
|
+
return _EditableRefdataList.default;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(exports, "RefdataCategoriesSettings", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function () {
|
|
31
|
+
return _RefdataCategoriesSettings.default;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(exports, "SettingPage", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
get: function () {
|
|
37
|
+
return _SettingPage.SettingPage;
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
Object.defineProperty(exports, "SettingPagePane", {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
get: function () {
|
|
43
|
+
return _SettingPage.SettingPagePane;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
Object.defineProperty(exports, "SettingsContext", {
|
|
47
|
+
enumerable: true,
|
|
48
|
+
get: function () {
|
|
49
|
+
return _contexts.SettingsContext;
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(exports, "SettingsFormContainer", {
|
|
53
|
+
enumerable: true,
|
|
54
|
+
get: function () {
|
|
55
|
+
return _SettingsFormContainer.default;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
Object.defineProperty(exports, "StaticSettingsField", {
|
|
59
|
+
enumerable: true,
|
|
60
|
+
get: function () {
|
|
61
|
+
return _StaticSettingsField.default;
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
var _SettingsFormContainer = _interopRequireDefault(require("./SettingsFormContainer"));
|
|
65
|
+
var _hooks = require("./hooks");
|
|
66
|
+
Object.keys(_hooks).forEach(function (key) {
|
|
67
|
+
if (key === "default" || key === "__esModule") return;
|
|
68
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
69
|
+
if (key in exports && exports[key] === _hooks[key]) return;
|
|
70
|
+
Object.defineProperty(exports, key, {
|
|
71
|
+
enumerable: true,
|
|
72
|
+
get: function () {
|
|
73
|
+
return _hooks[key];
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
var _SettingPage = require("./SettingPage");
|
|
78
|
+
var _EditableSettingsList = require("./EditableSettingsList");
|
|
79
|
+
Object.keys(_EditableSettingsList).forEach(function (key) {
|
|
80
|
+
if (key === "default" || key === "__esModule") return;
|
|
81
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
82
|
+
if (key in exports && exports[key] === _EditableSettingsList[key]) return;
|
|
83
|
+
Object.defineProperty(exports, key, {
|
|
84
|
+
enumerable: true,
|
|
85
|
+
get: function () {
|
|
86
|
+
return _EditableSettingsList[key];
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
var _RefdataCategoriesSettings = _interopRequireDefault(require("./RefdataCategoriesSettings"));
|
|
91
|
+
var _EditableRefdataList = _interopRequireDefault(require("./EditableRefdataList"));
|
|
92
|
+
var _EditableRefdataCategoryList = _interopRequireDefault(require("./EditableRefdataCategoryList"));
|
|
93
|
+
var _StaticSettingsField = _interopRequireDefault(require("./StaticSettingsField"));
|
|
94
|
+
var _contexts = require("./contexts");
|
|
95
|
+
var _constants = require("./constants");
|
|
96
|
+
Object.keys(_constants).forEach(function (key) {
|
|
97
|
+
if (key === "default" || key === "__esModule") return;
|
|
98
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
99
|
+
if (key in exports && exports[key] === _constants[key]) return;
|
|
100
|
+
Object.defineProperty(exports, key, {
|
|
101
|
+
enumerable: true,
|
|
102
|
+
get: function () {
|
|
103
|
+
return _constants[key];
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
package/package.json
CHANGED
package/src/index.js
CHANGED
|
@@ -7,25 +7,11 @@ export * from './lib/utils';
|
|
|
7
7
|
// Validators
|
|
8
8
|
export * from './lib/validators';
|
|
9
9
|
|
|
10
|
-
//
|
|
11
|
-
export
|
|
12
|
-
SettingsContext,
|
|
13
|
-
} from './lib/contexts';
|
|
14
|
-
|
|
15
|
-
// Setting Page Components
|
|
16
|
-
export {
|
|
17
|
-
SettingPage,
|
|
18
|
-
SettingPagePane,
|
|
19
|
-
} from './lib/SettingPage';
|
|
20
|
-
export * from './lib/EditableSettingsList';
|
|
21
|
-
|
|
22
|
-
// Settings hooks
|
|
23
|
-
export * from './lib/settingsHooks';
|
|
10
|
+
// Settings stuff
|
|
11
|
+
export * from './lib/Settings';
|
|
24
12
|
|
|
25
13
|
// ActionList & RefdataEditor components
|
|
26
14
|
export { default as ActionList } from './lib/ActionList';
|
|
27
|
-
export { default as EditableRefdataList } from './lib/EditableRefdataList';
|
|
28
|
-
export { default as EditableRefdataCategoryList } from './lib/EditableRefdataCategoryList';
|
|
29
15
|
|
|
30
16
|
// Typedown
|
|
31
17
|
export {
|
|
@@ -97,9 +83,6 @@ export {
|
|
|
97
83
|
useParseActiveFilterStrings
|
|
98
84
|
} from './lib/CustomProperties';
|
|
99
85
|
|
|
100
|
-
// Refdata categories
|
|
101
|
-
export { default as RefdataCategoriesSettings } from './lib/RefdataCategoriesSettings';
|
|
102
|
-
|
|
103
86
|
export * as customPropertyConstants from './lib/constants/customProperties';
|
|
104
87
|
|
|
105
88
|
export * as endpoints from './lib/constants/endpoints';
|
|
@@ -113,10 +96,11 @@ export { default as FormattedKintMessage } from './lib/FormattedKintMessage';
|
|
|
113
96
|
|
|
114
97
|
export { default as ResponsiveButtonGroup } from './lib/ResponsiveButtonGroup';
|
|
115
98
|
|
|
116
|
-
export { default as SettingsFormContainer } from './lib/SettingsFormContainer';
|
|
117
|
-
|
|
118
99
|
export { default as ComboButton } from './lib/ComboButton';
|
|
119
100
|
|
|
120
101
|
export { default as NumberField } from './lib/NumberField';
|
|
121
102
|
|
|
122
103
|
export * from './lib/Tags';
|
|
104
|
+
|
|
105
|
+
export { default as FieldLabel } from './lib/FieldLabel';
|
|
106
|
+
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IconButton, Label, Tooltip } from '@folio/stripes/components';
|
|
2
|
+
|
|
3
|
+
const FieldLabel = ({
|
|
4
|
+
helpText,
|
|
5
|
+
label,
|
|
6
|
+
tooltipId
|
|
7
|
+
}) => (
|
|
8
|
+
<Label>
|
|
9
|
+
{label}
|
|
10
|
+
{helpText ?
|
|
11
|
+
<Tooltip id={tooltipId} text={helpText}>
|
|
12
|
+
{({ ref, ariaIds }) => (
|
|
13
|
+
<IconButton
|
|
14
|
+
ref={ref}
|
|
15
|
+
aria-describedby={ariaIds.sub}
|
|
16
|
+
aria-labelledby={ariaIds.text}
|
|
17
|
+
icon="info"
|
|
18
|
+
/>
|
|
19
|
+
)}
|
|
20
|
+
</Tooltip> :
|
|
21
|
+
null
|
|
22
|
+
}
|
|
23
|
+
</Label>
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
export default FieldLabel;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# FieldLabel
|
|
2
|
+
A helper component to render Field Labels with/without help text as required
|
|
3
|
+
|
|
4
|
+
Where help text is included, a tooltipId must be passed
|
|
5
|
+
|
|
6
|
+
## Basic Usage
|
|
7
|
+
```javascript
|
|
8
|
+
import { Field } from 'react-final-form'
|
|
9
|
+
import { FieldLabel } from '@k-int/stripes-kint-components';
|
|
10
|
+
import { TextField } from '@folio/stripes/components'
|
|
11
|
+
const MyComponent = () => {
|
|
12
|
+
return (
|
|
13
|
+
<Field
|
|
14
|
+
component={TextField}
|
|
15
|
+
label={
|
|
16
|
+
<FieldLabel
|
|
17
|
+
label="My label"
|
|
18
|
+
helpText="My help text"
|
|
19
|
+
tooltipId='my-field-label-tooltip'
|
|
20
|
+
/>
|
|
21
|
+
}
|
|
22
|
+
name="my-field"
|
|
23
|
+
/>
|
|
24
|
+
)
|
|
25
|
+
}
|
|
26
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './FieldLabel';
|
|
@@ -76,7 +76,10 @@ const RefdataButtons = (props) => {
|
|
|
76
76
|
};
|
|
77
77
|
|
|
78
78
|
return (
|
|
79
|
-
|
|
79
|
+
<>
|
|
80
|
+
{props.label}
|
|
81
|
+
{returnRows(props.dataOptions)}
|
|
82
|
+
</>
|
|
80
83
|
);
|
|
81
84
|
};
|
|
82
85
|
|
|
@@ -90,6 +93,7 @@ RefdataButtons.propTypes = {
|
|
|
90
93
|
value: PropTypes.string.isRequired,
|
|
91
94
|
onChange: PropTypes.func.isRequired,
|
|
92
95
|
}).isRequired,
|
|
96
|
+
label: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
|
|
93
97
|
};
|
|
94
98
|
|
|
95
99
|
export default RefdataButtons;
|
|
@@ -4,13 +4,13 @@ import PropTypes from 'prop-types';
|
|
|
4
4
|
import { Button, ConfirmationModal } from '@folio/stripes/components';
|
|
5
5
|
import { CalloutContext } from '@folio/stripes/core';
|
|
6
6
|
|
|
7
|
-
import { useKintIntl, useMutateRefdataCategory, useRefdata } from '
|
|
7
|
+
import { useKintIntl, useMutateRefdataCategory, useRefdata } from '../../hooks';
|
|
8
8
|
|
|
9
|
-
import SearchField from '
|
|
10
|
-
import ActionList from '
|
|
11
|
-
import { required } from '
|
|
12
|
-
import { parseErrorResponse } from '
|
|
13
|
-
import css from '
|
|
9
|
+
import SearchField from '../../SearchField';
|
|
10
|
+
import ActionList from '../../ActionList';
|
|
11
|
+
import { required } from '../../validators';
|
|
12
|
+
import { parseErrorResponse } from '../../utils';
|
|
13
|
+
import css from '../../../../styles/CustomProperties.css';
|
|
14
14
|
|
|
15
15
|
const propTypes = {
|
|
16
16
|
afterQueryCalls: PropTypes.object,
|
|
@@ -4,11 +4,11 @@ import PropTypes from 'prop-types';
|
|
|
4
4
|
import { ConfirmationModal } from '@folio/stripes/components';
|
|
5
5
|
import { CalloutContext } from '@folio/stripes/core';
|
|
6
6
|
|
|
7
|
-
import { useKintIntl, useMutateRefdataValue, useRefdata } from '
|
|
7
|
+
import { useKintIntl, useMutateRefdataValue, useRefdata } from '../../hooks';
|
|
8
8
|
|
|
9
|
-
import ActionList from '
|
|
10
|
-
import { required } from '
|
|
11
|
-
import { parseErrorResponse, selectorSafe } from '
|
|
9
|
+
import ActionList from '../../ActionList';
|
|
10
|
+
import { required } from '../../validators';
|
|
11
|
+
import { parseErrorResponse, selectorSafe } from '../../utils';
|
|
12
12
|
|
|
13
13
|
const propTypes = {
|
|
14
14
|
afterQueryCalls: PropTypes.object,
|