@commercetools-frontend-extensions/import-resources-modal 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/LICENSE +29 -0
  2. package/README.md +20 -0
  3. package/dist/commercetools-frontend-extensions-import-resources-modal.cjs.d.ts +3 -0
  4. package/dist/commercetools-frontend-extensions-import-resources-modal.cjs.dev.js +157 -0
  5. package/dist/commercetools-frontend-extensions-import-resources-modal.cjs.js +7 -0
  6. package/dist/commercetools-frontend-extensions-import-resources-modal.cjs.prod.js +157 -0
  7. package/dist/commercetools-frontend-extensions-import-resources-modal.esm.js +140 -0
  8. package/dist/de-a34c5dd4.cjs.dev.js +6 -0
  9. package/dist/de-cd6c45d3.esm.js +4 -0
  10. package/dist/de-d954fe3d.cjs.prod.js +6 -0
  11. package/dist/declarations/src/@types/import-resources-modal-props.d.ts +7 -0
  12. package/dist/declarations/src/@types/index.d.ts +2 -0
  13. package/dist/declarations/src/@types/resource-type.d.ts +1 -0
  14. package/dist/declarations/src/import-resources-modal.d.ts +6 -0
  15. package/dist/declarations/src/index.d.ts +2 -0
  16. package/dist/en-3a9aa2d4.esm.js +4 -0
  17. package/dist/en-6b3694f6.cjs.dev.js +6 -0
  18. package/dist/en-c7757448.cjs.prod.js +6 -0
  19. package/dist/es-042343bd.cjs.prod.js +6 -0
  20. package/dist/es-8b3ecab1.cjs.dev.js +6 -0
  21. package/dist/es-e544023d.esm.js +4 -0
  22. package/dist/fr-FR-9d9081ee.esm.js +4 -0
  23. package/dist/fr-FR-e7126fcc.cjs.dev.js +6 -0
  24. package/dist/fr-FR-fce1ca96.cjs.prod.js +6 -0
  25. package/dist/ja-37632763.cjs.prod.js +6 -0
  26. package/dist/ja-73c088a7.esm.js +4 -0
  27. package/dist/ja-9bd5f452.cjs.dev.js +6 -0
  28. package/dist/pt-BR-b37d730b.esm.js +4 -0
  29. package/dist/pt-BR-ea6b3251.cjs.dev.js +6 -0
  30. package/dist/pt-BR-ec2a1a11.cjs.prod.js +6 -0
  31. package/dist/zh-CN-4780d88e.esm.js +4 -0
  32. package/dist/zh-CN-52baa549.cjs.prod.js +6 -0
  33. package/dist/zh-CN-d4bc6d26.cjs.dev.js +6 -0
  34. package/package.json +78 -0
package/LICENSE ADDED
@@ -0,0 +1,29 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) commercetools GmbH
4
+ All rights reserved.
5
+
6
+ Redistribution and use in source and binary forms, with or without
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ 1. Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ 2. Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ 3. Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package/README.md ADDED
@@ -0,0 +1,20 @@
1
+ # @commercetools-frontend-extensions/import-resources-modal
2
+
3
+ Package for importing resources into Merchant Center Applications.
4
+
5
+ > This library takes into account that you are building a Merchant Center Applications which documentation you can find [here](https://docs.commercetools.com/custom-applications/).
6
+ > The components follow the same principles of the [UIKit](https://github.com/commercetools/ui-kit) components.
7
+
8
+ ## Getting started
9
+
10
+ ```bash
11
+ $ npm install --save @commercetools-frontend-extensions/import-resources-modal
12
+
13
+ // or
14
+
15
+ $ yarn add @commercetools-frontend-extensions/import-resources-modal
16
+ ```
17
+
18
+ ## Description
19
+
20
+ Import Resources Modal is an internal component used to import resources from csv files, it's using [Importer Services](https://github.com/commercetools/commercetools-importer) to create async import Job.
@@ -0,0 +1,3 @@
1
+ export * from "./declarations/src/index";
2
+ export { default } from "./declarations/src/index";
3
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVyY2V0b29scy1mcm9udGVuZC1leHRlbnNpb25zLWltcG9ydC1yZXNvdXJjZXMtbW9kYWwuY2pzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuL2RlY2xhcmF0aW9ucy9zcmMvaW5kZXguZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSJ9
@@ -0,0 +1,157 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
6
+ var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
7
+ var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
8
+ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
9
+ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
10
+ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
11
+ var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
12
+ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
13
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
14
+ var reactIntl = require('react-intl');
15
+ var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
16
+ var sentry = require('@commercetools-frontend/sentry');
17
+ var i18n = require('@commercetools-frontend/i18n');
18
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
19
+ var React = require('react');
20
+ var formik = require('formik');
21
+ var omitEmpty = require('omit-empty-es');
22
+ require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
23
+ require('@babel/runtime-corejs3/helpers/createClass');
24
+ require('@babel/runtime-corejs3/helpers/classCallCheck');
25
+ require('@babel/runtime-corejs3/helpers/inherits');
26
+ require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
27
+ require('@babel/runtime-corejs3/helpers/getPrototypeOf');
28
+ require('@babel/runtime-corejs3/helpers/wrapNativeSuper');
29
+ var jsxRuntime = require('@emotion/react/jsx-runtime');
30
+
31
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
32
+
33
+ var _Object$keys__default = /*#__PURE__*/_interopDefault(_Object$keys);
34
+ var _Object$getOwnPropertySymbols__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertySymbols);
35
+ var _filterInstanceProperty__default = /*#__PURE__*/_interopDefault(_filterInstanceProperty);
36
+ var _Object$getOwnPropertyDescriptor__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptor);
37
+ var _forEachInstanceProperty__default = /*#__PURE__*/_interopDefault(_forEachInstanceProperty);
38
+ var _Object$getOwnPropertyDescriptors__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptors);
39
+ var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$defineProperties);
40
+ var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
41
+ var React__default = /*#__PURE__*/_interopDefault(React);
42
+ var omitEmpty__default = /*#__PURE__*/_interopDefault(omitEmpty);
43
+
44
+ const loadMessages = locale => {
45
+ const intlLocale = i18n.mapLocaleToIntlLocale(locale);
46
+ switch (intlLocale) {
47
+ case 'de':
48
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-de" */'./de-a34c5dd4.cjs.dev.js'); });
49
+ case 'es':
50
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-es" */'./es-8b3ecab1.cjs.dev.js'); });
51
+ case 'fr-FR':
52
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-fr-FR" */'./fr-FR-e7126fcc.cjs.dev.js'); });
53
+ case 'zh-CN':
54
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-zh-CN" */'./zh-CN-d4bc6d26.cjs.dev.js'); });
55
+ case 'ja':
56
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-ja" */'./ja-9bd5f452.cjs.dev.js'); });
57
+ case 'pt-BR':
58
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "change-history-i18n-pt-BR" */'./pt-BR-ea6b3251.cjs.dev.js'); });
59
+ default:
60
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-en" */'./en-6b3694f6.cjs.dev.js'); });
61
+ }
62
+ };
63
+
64
+ // eslint-disable-next-line import/prefer-default-export
65
+ const loadI18n = async locale => {
66
+ try {
67
+ const messages = await loadMessages(locale);
68
+ return messages.default || messages;
69
+ } catch (error) {
70
+ // eslint-disable-next-line no-console
71
+ console.warn("Something went wrong while loading the import-resources-modal messages for ".concat(locale), error);
72
+ sentry.reportErrorToSentry(new Error("Something went wrong while loading the import-resources-modal messages for ".concat(locale)), {
73
+ extra: error
74
+ });
75
+ return {};
76
+ }
77
+ };
78
+
79
+ const useAsyncIntlMessages = (locale, loader) => {
80
+ const _useState = React.useState({
81
+ isLoading: true,
82
+ messages: undefined,
83
+ error: undefined
84
+ }),
85
+ _useState2 = _slicedToArray(_useState, 2),
86
+ state = _useState2[0],
87
+ setState = _useState2[1];
88
+ React.useEffect(() => {
89
+ let _isUnmounting = false;
90
+ async function load() {
91
+ try {
92
+ if (!_isUnmounting) {
93
+ const messages = await loader(locale);
94
+ setState({
95
+ isLoading: false,
96
+ messages
97
+ });
98
+ }
99
+ } catch (error) {
100
+ setState({
101
+ isLoading: false,
102
+ error
103
+ });
104
+ }
105
+ }
106
+ if (locale) load();
107
+ return () => {
108
+ _isUnmounting = true;
109
+ };
110
+ }, [locale, loader]);
111
+ return state;
112
+ };
113
+
114
+ function validate() {
115
+ const errors = {};
116
+ return omitEmpty__default["default"](errors);
117
+ }
118
+
119
+ const ImportResourcesContext = /*#__PURE__*/React__default["default"].createContext();
120
+ const ImportResourcesProvider = props => {
121
+ const onSubmit = async values => {
122
+ };
123
+ const formik$1 = formik.useFormik({
124
+ initialValues: {},
125
+ validate,
126
+ onSubmit
127
+ });
128
+ return jsxRuntime.jsx(ImportResourcesContext.Provider, {
129
+ value: {
130
+ formik: formik$1,
131
+ onClose: props.onClose,
132
+ resourceType: props.resourceType
133
+ },
134
+ children: props.children
135
+ });
136
+ };
137
+
138
+ function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
139
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
140
+ const ImportResourcesModal = props => {
141
+ const _useApplicationContex = applicationShellConnectors.useApplicationContext(context => ({
142
+ locale: context.user && context.user.locale
143
+ })),
144
+ locale = _useApplicationContex.locale;
145
+ const messages = useAsyncIntlMessages('en', loadI18n);
146
+ if (!props.isOpen || messages.isLoading) return null;
147
+ return jsxRuntime.jsx(reactIntl.IntlProvider, {
148
+ locale: locale,
149
+ messages: messages.messages,
150
+ children: jsxRuntime.jsx(ImportResourcesProvider, _objectSpread(_objectSpread({}, props), {}, {
151
+ children: "Import resources modal"
152
+ }))
153
+ });
154
+ };
155
+ ImportResourcesModal.displayName = 'ImportResourcesModal';
156
+
157
+ exports["default"] = ImportResourcesModal;
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ if (process.env.NODE_ENV === "production") {
4
+ module.exports = require("./commercetools-frontend-extensions-import-resources-modal.cjs.prod.js");
5
+ } else {
6
+ module.exports = require("./commercetools-frontend-extensions-import-resources-modal.cjs.dev.js");
7
+ }
@@ -0,0 +1,157 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
6
+ var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
7
+ var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
8
+ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
9
+ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
10
+ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
11
+ var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
12
+ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
13
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
14
+ var reactIntl = require('react-intl');
15
+ var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
16
+ var sentry = require('@commercetools-frontend/sentry');
17
+ var i18n = require('@commercetools-frontend/i18n');
18
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
19
+ var React = require('react');
20
+ var formik = require('formik');
21
+ var omitEmpty = require('omit-empty-es');
22
+ require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
23
+ require('@babel/runtime-corejs3/helpers/createClass');
24
+ require('@babel/runtime-corejs3/helpers/classCallCheck');
25
+ require('@babel/runtime-corejs3/helpers/inherits');
26
+ require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
27
+ require('@babel/runtime-corejs3/helpers/getPrototypeOf');
28
+ require('@babel/runtime-corejs3/helpers/wrapNativeSuper');
29
+ var jsxRuntime = require('@emotion/react/jsx-runtime');
30
+
31
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
32
+
33
+ var _Object$keys__default = /*#__PURE__*/_interopDefault(_Object$keys);
34
+ var _Object$getOwnPropertySymbols__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertySymbols);
35
+ var _filterInstanceProperty__default = /*#__PURE__*/_interopDefault(_filterInstanceProperty);
36
+ var _Object$getOwnPropertyDescriptor__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptor);
37
+ var _forEachInstanceProperty__default = /*#__PURE__*/_interopDefault(_forEachInstanceProperty);
38
+ var _Object$getOwnPropertyDescriptors__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptors);
39
+ var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$defineProperties);
40
+ var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
41
+ var React__default = /*#__PURE__*/_interopDefault(React);
42
+ var omitEmpty__default = /*#__PURE__*/_interopDefault(omitEmpty);
43
+
44
+ const loadMessages = locale => {
45
+ const intlLocale = i18n.mapLocaleToIntlLocale(locale);
46
+ switch (intlLocale) {
47
+ case 'de':
48
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-de" */'./de-d954fe3d.cjs.prod.js'); });
49
+ case 'es':
50
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-es" */'./es-042343bd.cjs.prod.js'); });
51
+ case 'fr-FR':
52
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-fr-FR" */'./fr-FR-fce1ca96.cjs.prod.js'); });
53
+ case 'zh-CN':
54
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-zh-CN" */'./zh-CN-52baa549.cjs.prod.js'); });
55
+ case 'ja':
56
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-ja" */'./ja-37632763.cjs.prod.js'); });
57
+ case 'pt-BR':
58
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "change-history-i18n-pt-BR" */'./pt-BR-ec2a1a11.cjs.prod.js'); });
59
+ default:
60
+ return Promise.resolve().then(function () { return require( /* webpackChunkName: "import-resources-modal-i18n-en" */'./en-c7757448.cjs.prod.js'); });
61
+ }
62
+ };
63
+
64
+ // eslint-disable-next-line import/prefer-default-export
65
+ const loadI18n = async locale => {
66
+ try {
67
+ const messages = await loadMessages(locale);
68
+ return messages.default || messages;
69
+ } catch (error) {
70
+ // eslint-disable-next-line no-console
71
+ console.warn("Something went wrong while loading the import-resources-modal messages for ".concat(locale), error);
72
+ sentry.reportErrorToSentry(new Error("Something went wrong while loading the import-resources-modal messages for ".concat(locale)), {
73
+ extra: error
74
+ });
75
+ return {};
76
+ }
77
+ };
78
+
79
+ const useAsyncIntlMessages = (locale, loader) => {
80
+ const _useState = React.useState({
81
+ isLoading: true,
82
+ messages: undefined,
83
+ error: undefined
84
+ }),
85
+ _useState2 = _slicedToArray(_useState, 2),
86
+ state = _useState2[0],
87
+ setState = _useState2[1];
88
+ React.useEffect(() => {
89
+ let _isUnmounting = false;
90
+ async function load() {
91
+ try {
92
+ if (!_isUnmounting) {
93
+ const messages = await loader(locale);
94
+ setState({
95
+ isLoading: false,
96
+ messages
97
+ });
98
+ }
99
+ } catch (error) {
100
+ setState({
101
+ isLoading: false,
102
+ error
103
+ });
104
+ }
105
+ }
106
+ if (locale) load();
107
+ return () => {
108
+ _isUnmounting = true;
109
+ };
110
+ }, [locale, loader]);
111
+ return state;
112
+ };
113
+
114
+ function validate() {
115
+ const errors = {};
116
+ return omitEmpty__default["default"](errors);
117
+ }
118
+
119
+ const ImportResourcesContext = /*#__PURE__*/React__default["default"].createContext();
120
+ const ImportResourcesProvider = props => {
121
+ const onSubmit = async values => {
122
+ };
123
+ const formik$1 = formik.useFormik({
124
+ initialValues: {},
125
+ validate,
126
+ onSubmit
127
+ });
128
+ return jsxRuntime.jsx(ImportResourcesContext.Provider, {
129
+ value: {
130
+ formik: formik$1,
131
+ onClose: props.onClose,
132
+ resourceType: props.resourceType
133
+ },
134
+ children: props.children
135
+ });
136
+ };
137
+
138
+ function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
139
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
140
+ const ImportResourcesModal = props => {
141
+ const _useApplicationContex = applicationShellConnectors.useApplicationContext(context => ({
142
+ locale: context.user && context.user.locale
143
+ })),
144
+ locale = _useApplicationContex.locale;
145
+ const messages = useAsyncIntlMessages('en', loadI18n);
146
+ if (!props.isOpen || messages.isLoading) return null;
147
+ return jsxRuntime.jsx(reactIntl.IntlProvider, {
148
+ locale: locale,
149
+ messages: messages.messages,
150
+ children: jsxRuntime.jsx(ImportResourcesProvider, _objectSpread(_objectSpread({}, props), {}, {
151
+ children: "Import resources modal"
152
+ }))
153
+ });
154
+ };
155
+ ImportResourcesModal.displayName = 'ImportResourcesModal';
156
+
157
+ exports["default"] = ImportResourcesModal;
@@ -0,0 +1,140 @@
1
+ import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
2
+ import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
3
+ import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
4
+ import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor';
5
+ import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/for-each';
6
+ import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors';
7
+ import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
8
+ import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
9
+ import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
10
+ import { IntlProvider } from 'react-intl';
11
+ import { useApplicationContext } from '@commercetools-frontend/application-shell-connectors';
12
+ import { reportErrorToSentry } from '@commercetools-frontend/sentry';
13
+ import { mapLocaleToIntlLocale } from '@commercetools-frontend/i18n';
14
+ import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
15
+ import React, { useState, useEffect } from 'react';
16
+ import { useFormik } from 'formik';
17
+ import omitEmpty from 'omit-empty-es';
18
+ import '@babel/runtime-corejs3/core-js-stable/reflect/construct';
19
+ import '@babel/runtime-corejs3/helpers/createClass';
20
+ import '@babel/runtime-corejs3/helpers/classCallCheck';
21
+ import '@babel/runtime-corejs3/helpers/inherits';
22
+ import '@babel/runtime-corejs3/helpers/possibleConstructorReturn';
23
+ import '@babel/runtime-corejs3/helpers/getPrototypeOf';
24
+ import '@babel/runtime-corejs3/helpers/wrapNativeSuper';
25
+ import { jsx } from '@emotion/react/jsx-runtime';
26
+
27
+ const loadMessages = locale => {
28
+ const intlLocale = mapLocaleToIntlLocale(locale);
29
+ switch (intlLocale) {
30
+ case 'de':
31
+ return import( /* webpackChunkName: "import-resources-modal-i18n-de" */'./de-cd6c45d3.esm.js');
32
+ case 'es':
33
+ return import( /* webpackChunkName: "import-resources-modal-i18n-es" */'./es-e544023d.esm.js');
34
+ case 'fr-FR':
35
+ return import( /* webpackChunkName: "import-resources-modal-i18n-fr-FR" */'./fr-FR-9d9081ee.esm.js');
36
+ case 'zh-CN':
37
+ return import( /* webpackChunkName: "import-resources-modal-i18n-zh-CN" */'./zh-CN-4780d88e.esm.js');
38
+ case 'ja':
39
+ return import( /* webpackChunkName: "import-resources-modal-i18n-ja" */'./ja-73c088a7.esm.js');
40
+ case 'pt-BR':
41
+ return import( /* webpackChunkName: "change-history-i18n-pt-BR" */'./pt-BR-b37d730b.esm.js');
42
+ default:
43
+ return import( /* webpackChunkName: "import-resources-modal-i18n-en" */'./en-3a9aa2d4.esm.js');
44
+ }
45
+ };
46
+
47
+ // eslint-disable-next-line import/prefer-default-export
48
+ const loadI18n = async locale => {
49
+ try {
50
+ const messages = await loadMessages(locale);
51
+ return messages.default || messages;
52
+ } catch (error) {
53
+ // eslint-disable-next-line no-console
54
+ console.warn("Something went wrong while loading the import-resources-modal messages for ".concat(locale), error);
55
+ reportErrorToSentry(new Error("Something went wrong while loading the import-resources-modal messages for ".concat(locale)), {
56
+ extra: error
57
+ });
58
+ return {};
59
+ }
60
+ };
61
+
62
+ const useAsyncIntlMessages = (locale, loader) => {
63
+ const _useState = useState({
64
+ isLoading: true,
65
+ messages: undefined,
66
+ error: undefined
67
+ }),
68
+ _useState2 = _slicedToArray(_useState, 2),
69
+ state = _useState2[0],
70
+ setState = _useState2[1];
71
+ useEffect(() => {
72
+ let _isUnmounting = false;
73
+ async function load() {
74
+ try {
75
+ if (!_isUnmounting) {
76
+ const messages = await loader(locale);
77
+ setState({
78
+ isLoading: false,
79
+ messages
80
+ });
81
+ }
82
+ } catch (error) {
83
+ setState({
84
+ isLoading: false,
85
+ error
86
+ });
87
+ }
88
+ }
89
+ if (locale) load();
90
+ return () => {
91
+ _isUnmounting = true;
92
+ };
93
+ }, [locale, loader]);
94
+ return state;
95
+ };
96
+
97
+ function validate() {
98
+ const errors = {};
99
+ return omitEmpty(errors);
100
+ }
101
+
102
+ const ImportResourcesContext = /*#__PURE__*/React.createContext();
103
+ const ImportResourcesProvider = props => {
104
+ const onSubmit = async values => {
105
+ };
106
+ const formik = useFormik({
107
+ initialValues: {},
108
+ validate,
109
+ onSubmit
110
+ });
111
+ return jsx(ImportResourcesContext.Provider, {
112
+ value: {
113
+ formik,
114
+ onClose: props.onClose,
115
+ resourceType: props.resourceType
116
+ },
117
+ children: props.children
118
+ });
119
+ };
120
+
121
+ function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
122
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
123
+ const ImportResourcesModal = props => {
124
+ const _useApplicationContex = useApplicationContext(context => ({
125
+ locale: context.user && context.user.locale
126
+ })),
127
+ locale = _useApplicationContex.locale;
128
+ const messages = useAsyncIntlMessages('en', loadI18n);
129
+ if (!props.isOpen || messages.isLoading) return null;
130
+ return jsx(IntlProvider, {
131
+ locale: locale,
132
+ messages: messages.messages,
133
+ children: jsx(ImportResourcesProvider, _objectSpread(_objectSpread({}, props), {}, {
134
+ children: "Import resources modal"
135
+ }))
136
+ });
137
+ };
138
+ ImportResourcesModal.displayName = 'ImportResourcesModal';
139
+
140
+ export { ImportResourcesModal as default };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var de = {
4
+ };
5
+
6
+ exports["default"] = de;
@@ -0,0 +1,4 @@
1
+ var de = {
2
+ };
3
+
4
+ export { de as default };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var de = {
4
+ };
5
+
6
+ exports["default"] = de;
@@ -0,0 +1,7 @@
1
+ import type { ResourceType } from "./resource-type.js";
2
+ export interface ImportResourcesModalProps {
3
+ resourceType: ResourceType;
4
+ isOpen: boolean;
5
+ onClose: () => void;
6
+ onStartImportSuccess: () => void;
7
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./resource-type.js";
2
+ export * from "./import-resources-modal-props.js";
@@ -0,0 +1 @@
1
+ export type ResourceType = 'category' | 'product';
@@ -0,0 +1,6 @@
1
+ import { ImportResourcesModalProps } from "./@types/index.js";
2
+ declare const ImportResourcesModal: {
3
+ (props: ImportResourcesModalProps): import("@emotion/react/types/jsx-namespace").EmotionJSX.Element | null;
4
+ displayName: string;
5
+ };
6
+ export default ImportResourcesModal;
@@ -0,0 +1,2 @@
1
+ import ImportResourcesModal from "./import-resources-modal.js";
2
+ export default ImportResourcesModal;
@@ -0,0 +1,4 @@
1
+ var en = {
2
+ };
3
+
4
+ export { en as default };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var en = {
4
+ };
5
+
6
+ exports["default"] = en;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var en = {
4
+ };
5
+
6
+ exports["default"] = en;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var es = {
4
+ };
5
+
6
+ exports["default"] = es;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var es = {
4
+ };
5
+
6
+ exports["default"] = es;
@@ -0,0 +1,4 @@
1
+ var es = {
2
+ };
3
+
4
+ export { es as default };
@@ -0,0 +1,4 @@
1
+ var frFR = {
2
+ };
3
+
4
+ export { frFR as default };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var frFR = {
4
+ };
5
+
6
+ exports["default"] = frFR;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var frFR = {
4
+ };
5
+
6
+ exports["default"] = frFR;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var ja = {
4
+ };
5
+
6
+ exports["default"] = ja;
@@ -0,0 +1,4 @@
1
+ var ja = {
2
+ };
3
+
4
+ export { ja as default };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var ja = {
4
+ };
5
+
6
+ exports["default"] = ja;
@@ -0,0 +1,4 @@
1
+ var ptBR = {
2
+ };
3
+
4
+ export { ptBR as default };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var ptBR = {
4
+ };
5
+
6
+ exports["default"] = ptBR;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var ptBR = {
4
+ };
5
+
6
+ exports["default"] = ptBR;
@@ -0,0 +1,4 @@
1
+ var zhCN = {
2
+ };
3
+
4
+ export { zhCN as default };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var zhCN = {
4
+ };
5
+
6
+ exports["default"] = zhCN;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ var zhCN = {
4
+ };
5
+
6
+ exports["default"] = zhCN;
package/package.json ADDED
@@ -0,0 +1,78 @@
1
+ {
2
+ "name": "@commercetools-frontend-extensions/import-resources-modal",
3
+ "description": "Shared import modal for importing resources",
4
+ "version": "0.0.1",
5
+ "license": "BSD-3-Clause",
6
+ "publishConfig": {
7
+ "access": "public"
8
+ },
9
+ "main": "dist/commercetools-frontend-extensions-import-resources-modal.cjs.js",
10
+ "module": "dist/commercetools-frontend-extensions-import-resources-modal.esm.js",
11
+ "files": [
12
+ "dist",
13
+ "package.json",
14
+ "LICENSE",
15
+ "README.md"
16
+ ],
17
+ "dependencies": {
18
+ "@babel/runtime": "7.24.5",
19
+ "@babel/runtime-corejs3": "7.24.5",
20
+ "@emotion/react": "11.11.4",
21
+ "@emotion/styled": "11.11.5",
22
+ "@formatjs/cli": "6.2.10",
23
+ "formik": "^2.2.9",
24
+ "gql-query-builder": "^3.8.0",
25
+ "jest": "29.7.0",
26
+ "lodash": "4.17.21",
27
+ "moment": "2.30.1",
28
+ "omit-empty-es": "^1.1.3",
29
+ "prop-types": "15.8.1",
30
+ "react": "17.0.2"
31
+ },
32
+ "devDependencies": {
33
+ "@commercetools-frontend/actions-global": "22.26.0",
34
+ "@commercetools-frontend/application-components": "22.26.0",
35
+ "@commercetools-frontend/application-shell": "22.26.0",
36
+ "@commercetools-frontend/application-shell-connectors": "22.26.0",
37
+ "@commercetools-frontend/constants": "22.26.0",
38
+ "@commercetools-frontend/i18n": "22.26.0",
39
+ "@commercetools-frontend/jest-preset-mc-app": "22.26.0",
40
+ "@commercetools-frontend/sdk": "22.26.0",
41
+ "@commercetools-frontend/sentry": "22.26.0",
42
+ "@commercetools-frontend/ui-kit": "19.3.1",
43
+ "@commercetools-uikit/design-system": "19.3.1",
44
+ "@preconstruct/cli": "2.8.4",
45
+ "@types/jest": "29.5.12",
46
+ "@types/testing-library__jest-dom": "^5.14.5",
47
+ "msw": "1.3.3",
48
+ "react-intl": "6.6.6",
49
+ "react-redux": "7.2.9",
50
+ "redux": "4.2.1",
51
+ "rimraf": "5.0.5"
52
+ },
53
+ "peerDependencies": {
54
+ "@commercetools-frontend/actions-global": "22.x",
55
+ "@commercetools-frontend/application-components": "22.x",
56
+ "@commercetools-frontend/application-shell": "22.x",
57
+ "@commercetools-frontend/application-shell-connectors": "22.x",
58
+ "@commercetools-frontend/constants": "22.x",
59
+ "@commercetools-frontend/i18n": "22.x",
60
+ "@commercetools-frontend/jest-preset-mc-app": "22.x",
61
+ "@commercetools-frontend/sdk": "22.x",
62
+ "@commercetools-frontend/sentry": "22.x",
63
+ "@commercetools-frontend/ui-kit": "17.x || 18.x || 19.x",
64
+ "@commercetools-uikit/design-system": "17.x || 18.x || 19.x",
65
+ "react-intl": "6.x",
66
+ "react-redux": "7.x",
67
+ "redux": "4.x"
68
+ },
69
+ "scripts": {
70
+ "build": "rimraf dist && preconstruct build",
71
+ "test": "jest --config jest.test.config.js",
72
+ "test:watch": "jest --config jest.test.config.js --watch",
73
+ "build:bundles": "pnpm build",
74
+ "build:watch": "preconstruct watch",
75
+ "extract-intl": "formatjs extract --format transifex --out-file $(pwd)/src/i18n/data/core.json 'src/**/(*.)?messages.(js|ts)'",
76
+ "typecheck": "tsc --noEmit"
77
+ }
78
+ }