@mjhls/mjh-framework 1.0.448 → 1.0.449
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/README.md +1 -1
- package/dist/cjs/AD.js +9 -10
- package/dist/cjs/AD300x250.js +6 -7
- package/dist/cjs/AD300x250x600.js +6 -7
- package/dist/cjs/AD728x90.js +8 -9
- package/dist/cjs/ADFloatingFooter.js +11 -12
- package/dist/cjs/ADFooter.js +8 -9
- package/dist/cjs/ADGutter.js +11 -12
- package/dist/cjs/{ADInfeed-7b80e936.js → ADInfeed-5c1d1425.js} +9 -11
- package/dist/cjs/ADSponsoredResources.js +10 -11
- package/dist/cjs/ADWelcome.js +15 -16
- package/dist/cjs/{ADlgInfeed-23bfb514.js → ADlgInfeed-ce35bd57.js} +6 -7
- package/dist/cjs/AccordionPanel.js +21 -23
- package/dist/cjs/AdSlot.js +13 -15
- package/dist/cjs/AdSlotsProvider.js +5 -6
- package/dist/cjs/AlphabeticList.js +15 -16
- package/dist/cjs/ArticleQueue.js +105 -108
- package/dist/cjs/Auth.js +84 -88
- package/dist/cjs/{AuthorComponent-5bb8f868.js → AuthorComponent-cb8b8128.js} +12 -13
- package/dist/cjs/{BlockContent-80608595.js → BlockContent-77f81ffc.js} +24 -26
- package/dist/cjs/Breadcrumbs.js +21 -23
- package/dist/cjs/CMEDeck.js +61 -61
- package/dist/cjs/Column1.js +11 -14
- package/dist/cjs/Column2.js +19 -22
- package/dist/cjs/Column3.js +31 -34
- package/dist/cjs/ConferenceArticleCard.js +18 -19
- package/dist/cjs/ConferenceBanner-4a16fddc.js +23 -0
- package/dist/cjs/DeckContent.js +72 -76
- package/dist/cjs/DeckQueue.js +68 -72
- package/dist/cjs/{Dfp-19f10ad4.js → Dfp-fcdeabc4.js} +20 -22
- package/dist/cjs/EventsDeck.js +72 -79
- package/dist/cjs/Feature.js +23 -25
- package/dist/cjs/{Figure-ce37247b.js → Figure-eeac313a.js} +20 -21
- package/dist/cjs/ForbesHero.js +33 -34
- package/dist/cjs/GridContent.js +141 -145
- package/dist/cjs/GridHero.js +34 -35
- package/dist/cjs/GroupDeck.js +33 -34
- package/dist/cjs/HamMagazine.js +103 -108
- package/dist/cjs/Header.js +11 -13
- package/dist/cjs/Hero.js +10 -11
- package/dist/cjs/HighlightenVideo.js +16 -17
- package/dist/cjs/HorizontalHero.js +24 -25
- package/dist/cjs/{InscreenSensor-04a70c60.js → InscreenSensor-bcdec6b0.js} +7 -8
- package/dist/cjs/IssueContentDeck.js +59 -64
- package/dist/cjs/IssueDeck.js +59 -64
- package/dist/cjs/IssueLanding.js +16 -17
- package/dist/cjs/LeftNav.js +16 -18
- package/dist/cjs/MasterDeck.js +43 -44
- package/dist/cjs/NavDvm.js +63 -68
- package/dist/cjs/{NavFooter-3dcd99a8.js → NavFooter-76c913e3.js} +14 -15
- package/dist/cjs/NavMagazine.js +106 -111
- package/dist/cjs/NavNative.js +65 -70
- package/dist/cjs/NavNormal.js +36 -41
- package/dist/cjs/OncliveHero.js +17 -18
- package/dist/cjs/OncliveLargeHero.js +58 -59
- package/dist/cjs/PageFilter.js +8 -9
- package/dist/cjs/PdfDownload.js +8 -9
- package/dist/cjs/PopUpModal.js +13 -15
- package/dist/cjs/PublicationDeck.js +57 -62
- package/dist/cjs/PublicationLanding.js +44 -48
- package/dist/cjs/QueueDeckExpanded.js +104 -104
- package/dist/cjs/RelatedContent.js +18 -19
- package/dist/cjs/RelatedTopicsDropdown.js +19 -22
- package/dist/cjs/Search.js +12 -16
- package/dist/cjs/SideFooter.js +17 -18
- package/dist/cjs/{SocialNavFooter-d9ab4d17.js → SocialNavFooter-9a07520f.js} +17 -18
- package/dist/cjs/SocialShare.js +29 -31
- package/dist/cjs/TaxonomyCard.js +54 -59
- package/dist/cjs/TemplateNormal.js +31 -32
- package/dist/cjs/ThumbnailCard.js +17 -19
- package/dist/cjs/Ustream.js +18 -19
- package/dist/cjs/VerticalHero.js +16 -17
- package/dist/cjs/VideoSeriesFilter.js +10 -10
- package/dist/cjs/VideoSeriesListing.js +31 -32
- package/dist/cjs/View.js +148 -154
- package/dist/cjs/YahooHero.js +29 -30
- package/dist/cjs/YoutubeGroup.js +41 -42
- package/dist/cjs/{brightcove-react-player-loader.es-4ba0d3d5.js → brightcove-react-player-loader.es-156bd4d6.js} +5 -6
- package/dist/cjs/getQuery.js +2 -2
- package/dist/cjs/getSerializers.js +209 -214
- package/dist/cjs/{getTargeting-3ced038f.js → getTargeting-37612527.js} +2 -2
- package/dist/cjs/getTargeting.js +1 -1
- package/dist/cjs/iconBase-637d3f1e.js +3 -0
- package/dist/cjs/{index-8a3fb0bc.js → index-fa0fb52c.js} +10 -13
- package/dist/cjs/{index-b2448ff6.js → index-fa3cec70.js} +8 -10
- package/dist/cjs/{index.es-44c8e726.js → index.es-9110add6.js} +7 -8
- package/dist/cjs/index.js +23 -23
- package/dist/cjs/{inherits-4a2f1cc3.js → inherits-93684212.js} +1 -1
- package/dist/cjs/{main-d76cde9c.js → main-88348b15.js} +16 -17
- package/dist/cjs/{moment-66a6a284.js → moment-575fe24c.js} +1 -1
- package/dist/cjs/{react-social-icons-07939b41.js → react-social-icons-cd0d9d3b.js} +11 -13
- package/dist/cjs/{typeof-583cdc4b.js → typeof-1869832c.js} +1 -1
- package/dist/cjs/urlFor.js +2 -2
- package/dist/cjs/{visibility-sensor-a40ae0cd.js → visibility-sensor-0c45a583.js} +6 -8
- package/dist/esm/AD.js +7 -7
- package/dist/esm/AD300x250.js +4 -4
- package/dist/esm/AD300x250x600.js +4 -4
- package/dist/esm/AD728x90.js +6 -6
- package/dist/esm/ADFloatingFooter.js +9 -9
- package/dist/esm/ADFooter.js +6 -6
- package/dist/esm/ADGutter.js +9 -9
- package/dist/esm/{ADInfeed-1d67a779.js → ADInfeed-24924eab.js} +5 -5
- package/dist/esm/ADSponsoredResources.js +8 -8
- package/dist/esm/ADWelcome.js +13 -13
- package/dist/esm/{ADlgInfeed-d5161b6e.js → ADlgInfeed-019d6cd9.js} +4 -4
- package/dist/esm/AccordionPanel.js +16 -16
- package/dist/esm/AdSlot.js +5 -5
- package/dist/esm/AdSlotsProvider.js +3 -3
- package/dist/esm/AlphabeticList.js +13 -13
- package/dist/esm/ArticleQueue.js +92 -92
- package/dist/esm/Auth.js +71 -71
- package/dist/esm/{AuthorComponent-f67cb027.js → AuthorComponent-158226c9.js} +10 -10
- package/dist/esm/{BlockContent-4af2feb9.js → BlockContent-e9b4ddcf.js} +3 -3
- package/dist/esm/Breadcrumbs.js +11 -11
- package/dist/esm/CMEDeck.js +58 -58
- package/dist/esm/Column1.js +5 -5
- package/dist/esm/Column2.js +12 -12
- package/dist/esm/Column3.js +23 -23
- package/dist/esm/ConferenceArticleCard.js +13 -13
- package/dist/esm/{ConferenceBanner-9162d0ca.js → ConferenceBanner-8792ebd2.js} +4 -4
- package/dist/esm/DeckContent.js +52 -52
- package/dist/esm/DeckQueue.js +45 -45
- package/dist/esm/{Dfp-7addbfb1.js → Dfp-58cfc45a.js} +10 -10
- package/dist/esm/EventsDeck.js +44 -44
- package/dist/esm/Feature.js +15 -15
- package/dist/esm/{Figure-408929f3.js → Figure-bc2b95d7.js} +16 -16
- package/dist/esm/ForbesHero.js +27 -27
- package/dist/esm/GridContent.js +102 -102
- package/dist/esm/GridHero.js +28 -28
- package/dist/esm/GroupDeck.js +29 -29
- package/dist/esm/HamMagazine.js +74 -74
- package/dist/esm/Header.js +7 -7
- package/dist/esm/Hero.js +6 -6
- package/dist/esm/HighlightenVideo.js +14 -14
- package/dist/esm/HorizontalHero.js +19 -19
- package/dist/esm/{InscreenSensor-b7f931bf.js → InscreenSensor-67905ed5.js} +5 -5
- package/dist/esm/IssueContentDeck.js +35 -35
- package/dist/esm/IssueDeck.js +33 -33
- package/dist/esm/IssueLanding.js +14 -14
- package/dist/esm/LeftNav.js +12 -12
- package/dist/esm/MasterDeck.js +37 -37
- package/dist/esm/NavDvm.js +43 -43
- package/dist/esm/{NavFooter-c29526b7.js → NavFooter-e27bd93b.js} +12 -12
- package/dist/esm/NavMagazine.js +79 -79
- package/dist/esm/NavNative.js +47 -47
- package/dist/esm/NavNormal.js +20 -20
- package/dist/esm/OncliveHero.js +13 -13
- package/dist/esm/OncliveLargeHero.js +51 -51
- package/dist/esm/PageFilter.js +6 -6
- package/dist/esm/PdfDownload.js +5 -5
- package/dist/esm/PopUpModal.js +8 -8
- package/dist/esm/PublicationDeck.js +33 -33
- package/dist/esm/PublicationLanding.js +25 -25
- package/dist/esm/QueueDeckExpanded.js +90 -90
- package/dist/esm/RelatedContent.js +14 -14
- package/dist/esm/RelatedTopicsDropdown.js +11 -11
- package/dist/esm/Search.js +5 -5
- package/dist/esm/SideFooter.js +15 -15
- package/dist/esm/{SocialNavFooter-1a531144.js → SocialNavFooter-4fb16720.js} +15 -15
- package/dist/esm/SocialShare.js +25 -25
- package/dist/esm/TaxonomyCard.js +35 -35
- package/dist/esm/TemplateNormal.js +25 -25
- package/dist/esm/ThumbnailCard.js +9 -9
- package/dist/esm/Ustream.js +14 -14
- package/dist/esm/VerticalHero.js +12 -12
- package/dist/esm/VideoSeriesFilter.js +7 -7
- package/dist/esm/VideoSeriesListing.js +26 -26
- package/dist/esm/View.js +122 -122
- package/dist/esm/YahooHero.js +24 -24
- package/dist/esm/YoutubeGroup.js +32 -32
- package/dist/esm/{brightcove-react-player-loader.es-e1c6b0f2.js → brightcove-react-player-loader.es-83f53e4e.js} +3 -3
- package/dist/esm/getQuery.js +2 -2
- package/dist/esm/getSerializers.js +170 -170
- package/dist/esm/{index-fb49124c.js → index-3f4dd6f2.js} +3 -3
- package/dist/esm/{index-c5fd0af5.js → index-5f9f807a.js} +4 -4
- package/dist/esm/{index.es-27d0bae9.js → index.es-29c1cef5.js} +5 -5
- package/dist/esm/index.js +18 -18
- package/dist/esm/{inherits-2758cc14.js → inherits-b8e4c697.js} +1 -1
- package/dist/esm/{main-8c8784b8.js → main-d7ee6151.js} +16 -16
- package/dist/esm/{moment-12415288.js → moment-e2f9b20c.js} +1 -1
- package/dist/esm/{react-social-icons-3822f1ce.js → react-social-icons-a7d5c5c7.js} +5 -5
- package/dist/esm/{typeof-7e72fee0.js → typeof-5f046efd.js} +1 -1
- package/dist/esm/{visibility-sensor-87d6b78c.js → visibility-sensor-0baa4eea.js} +3 -3
- package/package.json +1 -1
- package/dist/cjs/ConferenceBanner-6c9e718a.js +0 -24
package/dist/cjs/Auth.js
CHANGED
|
@@ -2,16 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
|
6
|
+
|
|
5
7
|
var _commonjsHelpers = require('./_commonjsHelpers-06173234.js');
|
|
6
8
|
require('./_to-object-329a650b.js');
|
|
7
9
|
require('./core.get-iterator-method-41e87ec1.js');
|
|
8
10
|
require('./_library-dd23b178.js');
|
|
9
11
|
require('./_iter-detect-4d0352f8.js');
|
|
10
12
|
require('./_object-pie-68c5bcbc.js');
|
|
11
|
-
var _extends = require('./extends-60837c34.js');
|
|
13
|
+
var _extends$1 = require('./extends-60837c34.js');
|
|
12
14
|
require('./web.dom.iterable-43c3e277.js');
|
|
13
15
|
var React = require('react');
|
|
16
|
+
var React__default = _interopDefault(React);
|
|
14
17
|
var Router = require('next/router');
|
|
18
|
+
var Router__default = _interopDefault(Router);
|
|
15
19
|
var slicedToArray = require('./slicedToArray-8063ee51.js');
|
|
16
20
|
var stringify = require('./stringify-7c5aff47.js');
|
|
17
21
|
var asyncToGenerator = require('./asyncToGenerator-db08763c.js');
|
|
@@ -19,17 +23,9 @@ require('./_set-species-4458e975.js');
|
|
|
19
23
|
require('./promise-074978a7.js');
|
|
20
24
|
var reactBootstrap = require('react-bootstrap');
|
|
21
25
|
var util = require('./util-f2c1b65b.js');
|
|
22
|
-
var useSWR = require('swr');
|
|
23
|
-
var Local = require('passport-local');
|
|
24
|
-
var mysql = require('mysql');
|
|
25
|
-
|
|
26
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
27
|
-
|
|
28
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
29
|
-
var Router__default = /*#__PURE__*/_interopDefaultLegacy(Router);
|
|
30
|
-
var useSWR__default = /*#__PURE__*/_interopDefaultLegacy(useSWR);
|
|
31
|
-
var Local__default = /*#__PURE__*/_interopDefaultLegacy(Local);
|
|
32
|
-
var mysql__default = /*#__PURE__*/_interopDefaultLegacy(mysql);
|
|
26
|
+
var useSWR = _interopDefault(require('swr'));
|
|
27
|
+
var Local = _interopDefault(require('passport-local'));
|
|
28
|
+
var mysql = _interopDefault(require('mysql'));
|
|
33
29
|
|
|
34
30
|
var returnFormField = function returnFormField(_ref) {
|
|
35
31
|
var name = _ref.name,
|
|
@@ -68,21 +64,21 @@ var returnFormField = function returnFormField(_ref) {
|
|
|
68
64
|
}
|
|
69
65
|
|
|
70
66
|
if (type == 'text' || type == 'email' || type == 'password' || type == 'number') {
|
|
71
|
-
return React__default
|
|
67
|
+
return React__default.createElement(
|
|
72
68
|
reactBootstrap.Form.Group,
|
|
73
|
-
_extends._extends({}, opts, { controlId: name }),
|
|
74
|
-
React__default
|
|
69
|
+
_extends$1._extends({}, opts, { controlId: name }),
|
|
70
|
+
React__default.createElement(
|
|
75
71
|
reactBootstrap.Form.Label,
|
|
76
72
|
{ kye: name + '_label' },
|
|
77
73
|
label,
|
|
78
|
-
required && React__default
|
|
74
|
+
required && React__default.createElement(
|
|
79
75
|
'span',
|
|
80
76
|
{ style: { color: 'red' } },
|
|
81
77
|
'*'
|
|
82
78
|
)
|
|
83
79
|
),
|
|
84
|
-
React__default
|
|
85
|
-
React__default
|
|
80
|
+
React__default.createElement(reactBootstrap.Form.Control, { key: name + '_' + type, type: type, readOnly: readonly, name: name, placeholder: '', defaultValue: default_value, required: required }),
|
|
81
|
+
React__default.createElement(
|
|
86
82
|
reactBootstrap.Form.Control.Feedback,
|
|
87
83
|
{ key: name + '_feedback', type: 'invalid' },
|
|
88
84
|
errors[name]
|
|
@@ -90,28 +86,28 @@ var returnFormField = function returnFormField(_ref) {
|
|
|
90
86
|
);
|
|
91
87
|
}
|
|
92
88
|
if (type == 'select') {
|
|
93
|
-
return React__default
|
|
89
|
+
return React__default.createElement(
|
|
94
90
|
reactBootstrap.Form.Group,
|
|
95
|
-
_extends._extends({}, opts, { key: name, controlId: name }),
|
|
96
|
-
React__default
|
|
91
|
+
_extends$1._extends({}, opts, { key: name, controlId: name }),
|
|
92
|
+
React__default.createElement(
|
|
97
93
|
reactBootstrap.Form.Label,
|
|
98
94
|
{ key: name + '_' + label },
|
|
99
95
|
label,
|
|
100
|
-
required && React__default
|
|
96
|
+
required && React__default.createElement(
|
|
101
97
|
'span',
|
|
102
98
|
{ key: name + '_required_span', style: { color: 'red' } },
|
|
103
99
|
'*'
|
|
104
100
|
)
|
|
105
101
|
),
|
|
106
|
-
React__default
|
|
102
|
+
React__default.createElement(
|
|
107
103
|
reactBootstrap.Form.Control,
|
|
108
104
|
{ key: name + '_select', as: 'select', name: name, required: required, defaultValue: default_value },
|
|
109
|
-
React__default
|
|
105
|
+
React__default.createElement('option', { value: '', key: name + '_options_empty' }),
|
|
110
106
|
options.map(function (option, index) {
|
|
111
107
|
var value = option.value ? option.value : option;
|
|
112
108
|
var label = option.label ? option.label : option;
|
|
113
109
|
var key = name + '_options_' + index;
|
|
114
|
-
return React__default
|
|
110
|
+
return React__default.createElement(
|
|
115
111
|
'option',
|
|
116
112
|
{ key: key, value: value },
|
|
117
113
|
label
|
|
@@ -122,25 +118,25 @@ var returnFormField = function returnFormField(_ref) {
|
|
|
122
118
|
}
|
|
123
119
|
|
|
124
120
|
if (type == 'radio' || type == 'checkbox') {
|
|
125
|
-
return React__default
|
|
121
|
+
return React__default.createElement(
|
|
126
122
|
reactBootstrap.Form.Group,
|
|
127
123
|
opts,
|
|
128
|
-
React__default
|
|
124
|
+
React__default.createElement(
|
|
129
125
|
reactBootstrap.Form.Label,
|
|
130
126
|
null,
|
|
131
127
|
label,
|
|
132
|
-
required && React__default
|
|
128
|
+
required && React__default.createElement(
|
|
133
129
|
'span',
|
|
134
130
|
{ style: { color: 'red' } },
|
|
135
131
|
'*'
|
|
136
132
|
)
|
|
137
133
|
),
|
|
138
134
|
options.map(function (option, index) {
|
|
139
|
-
return React__default
|
|
135
|
+
return React__default.createElement(
|
|
140
136
|
reactBootstrap.Form.Check,
|
|
141
137
|
{ type: type, key: index, required: required },
|
|
142
|
-
React__default
|
|
143
|
-
React__default
|
|
138
|
+
React__default.createElement(reactBootstrap.Form.Check.Input, { type: type, key: type + '_' + index + '_input', defaultChecked: default_value ? default_value === option.value : false, name: name, id: name + '_' + index, value: option.value, required: required }),
|
|
139
|
+
React__default.createElement(reactBootstrap.Form.Check.Label, { style: { cursor: 'pointer' }, 'for': name + '_' + index, key: type + '_' + index + '_label', dangerouslySetInnerHTML: { __html: option.label } })
|
|
144
140
|
);
|
|
145
141
|
})
|
|
146
142
|
);
|
|
@@ -226,7 +222,7 @@ function useUser() {
|
|
|
226
222
|
redirectTo = _ref.redirectTo,
|
|
227
223
|
redirectIfFound = _ref.redirectIfFound;
|
|
228
224
|
|
|
229
|
-
var _useSWR =
|
|
225
|
+
var _useSWR = useSWR('/api/auth/user', dataHandler),
|
|
230
226
|
data = _useSWR.data,
|
|
231
227
|
error = _useSWR.error;
|
|
232
228
|
|
|
@@ -241,7 +237,7 @@ function useUser() {
|
|
|
241
237
|
redirectTo && !redirectIfFound && !hasUser ||
|
|
242
238
|
// If redirectIfFound is also set, redirect if the user was found
|
|
243
239
|
redirectIfFound && hasUser) {
|
|
244
|
-
Router__default
|
|
240
|
+
Router__default.push(redirectTo);
|
|
245
241
|
}
|
|
246
242
|
}, [redirectTo, redirectIfFound, finished, hasUser]);
|
|
247
243
|
|
|
@@ -347,43 +343,43 @@ var LoginForm = function LoginForm(props) {
|
|
|
347
343
|
loading = _useState4[0],
|
|
348
344
|
setLoading = _useState4[1];
|
|
349
345
|
|
|
350
|
-
return React__default
|
|
346
|
+
return React__default.createElement(
|
|
351
347
|
reactBootstrap.Form,
|
|
352
348
|
{ className: 'login', onSubmit: handleSubmit },
|
|
353
|
-
React__default
|
|
349
|
+
React__default.createElement(
|
|
354
350
|
'h1',
|
|
355
351
|
null,
|
|
356
352
|
'Login'
|
|
357
353
|
),
|
|
358
|
-
React__default
|
|
354
|
+
React__default.createElement('hr', null),
|
|
359
355
|
returnFormField({ name: 'email', label: 'Email', type: 'email', required: true }),
|
|
360
356
|
returnFormField({ name: 'password', label: 'Password', type: 'password', required: true }),
|
|
361
|
-
React__default
|
|
362
|
-
React__default
|
|
357
|
+
React__default.createElement('hr', null),
|
|
358
|
+
React__default.createElement(
|
|
363
359
|
reactBootstrap.Form.Row,
|
|
364
360
|
null,
|
|
365
|
-
React__default
|
|
361
|
+
React__default.createElement(
|
|
366
362
|
reactBootstrap.Form.Group,
|
|
367
363
|
{ as: reactBootstrap.Col },
|
|
368
|
-
React__default
|
|
364
|
+
React__default.createElement(
|
|
369
365
|
'a',
|
|
370
366
|
{ href: '/auth/signup' },
|
|
371
367
|
'I don\'t have an account'
|
|
372
368
|
)
|
|
373
369
|
),
|
|
374
|
-
React__default
|
|
370
|
+
React__default.createElement(
|
|
375
371
|
reactBootstrap.Form.Group,
|
|
376
372
|
{ as: reactBootstrap.Col, className: 'text-right' },
|
|
377
|
-
!loading && React__default
|
|
373
|
+
!loading && React__default.createElement(
|
|
378
374
|
reactBootstrap.Button,
|
|
379
375
|
{ type: 'submit' },
|
|
380
376
|
'Login'
|
|
381
377
|
),
|
|
382
|
-
loading && React__default
|
|
378
|
+
loading && React__default.createElement(
|
|
383
379
|
reactBootstrap.Button,
|
|
384
380
|
{ variant: 'primary', disabled: true },
|
|
385
|
-
React__default
|
|
386
|
-
React__default
|
|
381
|
+
React__default.createElement(reactBootstrap.Spinner, { as: 'span', animation: 'border', role: 'status', 'aria-hidden': 'true', size: 'sm' }),
|
|
382
|
+
React__default.createElement(
|
|
387
383
|
'span',
|
|
388
384
|
{ className: 'sr-only' },
|
|
389
385
|
'Loading...'
|
|
@@ -391,12 +387,12 @@ var LoginForm = function LoginForm(props) {
|
|
|
391
387
|
)
|
|
392
388
|
)
|
|
393
389
|
),
|
|
394
|
-
errorMsg && React__default
|
|
390
|
+
errorMsg && React__default.createElement(
|
|
395
391
|
'p',
|
|
396
392
|
{ className: 'error' },
|
|
397
393
|
errorMsg
|
|
398
394
|
),
|
|
399
|
-
React__default
|
|
395
|
+
React__default.createElement(
|
|
400
396
|
'style',
|
|
401
397
|
{ jsx: 'true'.toString() },
|
|
402
398
|
'\n .login {\n margin: 0 auto;\n padding: 1rem;\n border: 1px solid #ccc;\n border-radius: 4px;\n }\n .error {\n color: red;\n margin: 1rem 0 0;\n }\n '
|
|
@@ -652,29 +648,29 @@ var SignupForm = function SignupForm(props) {
|
|
|
652
648
|
loading = _useState14[0],
|
|
653
649
|
setLoading = _useState14[1];
|
|
654
650
|
|
|
655
|
-
return React__default
|
|
651
|
+
return React__default.createElement(
|
|
656
652
|
reactBootstrap.Form,
|
|
657
653
|
{ className: 'login', id: 'signupForm', onSubmit: handleSubmit },
|
|
658
|
-
React__default
|
|
654
|
+
React__default.createElement(
|
|
659
655
|
'h1',
|
|
660
656
|
null,
|
|
661
657
|
'Sign Up'
|
|
662
658
|
),
|
|
663
|
-
React__default
|
|
659
|
+
React__default.createElement('hr', null),
|
|
664
660
|
returnFormField({ name: 'email', label: 'Email', type: 'email', required: true }),
|
|
665
|
-
React__default
|
|
661
|
+
React__default.createElement(
|
|
666
662
|
reactBootstrap.Form.Row,
|
|
667
663
|
null,
|
|
668
664
|
returnFormField({ name: 'password', label: 'Password', type: 'password', groupType: reactBootstrap.Col, required: true }),
|
|
669
665
|
returnFormField({ name: 'rpassword', label: 'Retype Password', type: 'password', groupType: reactBootstrap.Col, required: true })
|
|
670
666
|
),
|
|
671
|
-
React__default
|
|
667
|
+
React__default.createElement(
|
|
672
668
|
reactBootstrap.Form.Row,
|
|
673
669
|
null,
|
|
674
670
|
returnFormField({ name: 'first_name', label: 'First Name', type: 'text', groupType: reactBootstrap.Col, required: true }),
|
|
675
671
|
returnFormField({ name: 'last_name', label: 'Last Name', type: 'text', groupType: reactBootstrap.Col, required: true })
|
|
676
672
|
),
|
|
677
|
-
React__default
|
|
673
|
+
React__default.createElement(
|
|
678
674
|
reactBootstrap.Form.Row,
|
|
679
675
|
null,
|
|
680
676
|
returnFormField({
|
|
@@ -688,7 +684,7 @@ var SignupForm = function SignupForm(props) {
|
|
|
688
684
|
}),
|
|
689
685
|
countryUS && returnFormField({ name: 'state', label: 'State', type: 'select', required: true, groupType: reactBootstrap.Col, options: states })
|
|
690
686
|
),
|
|
691
|
-
React__default
|
|
687
|
+
React__default.createElement(
|
|
692
688
|
reactBootstrap.Form.Row,
|
|
693
689
|
null,
|
|
694
690
|
countryUS && returnFormField({ name: 'zip', label: 'Working Zip Code', type: 'text', required: true, groupType: reactBootstrap.Col }),
|
|
@@ -735,38 +731,38 @@ var SignupForm = function SignupForm(props) {
|
|
|
735
731
|
required: true,
|
|
736
732
|
options: [{ label: 'By registering you agree to our <a href="/terms" style="color:blue">Terms and Conditions</a> and <a href="/privacy" style="color:blue">Privacy Policy</a> and understand that you will be receiving email communications', value: 'Y' }]
|
|
737
733
|
}),
|
|
738
|
-
React__default
|
|
739
|
-
React__default
|
|
734
|
+
React__default.createElement('hr', null),
|
|
735
|
+
React__default.createElement(
|
|
740
736
|
reactBootstrap.Form.Row,
|
|
741
737
|
null,
|
|
742
|
-
React__default
|
|
738
|
+
React__default.createElement(
|
|
743
739
|
reactBootstrap.Form.Group,
|
|
744
740
|
{ as: reactBootstrap.Col },
|
|
745
|
-
React__default
|
|
741
|
+
React__default.createElement(
|
|
746
742
|
'a',
|
|
747
743
|
{ href: '/auth/login' },
|
|
748
744
|
'I already have an account'
|
|
749
745
|
)
|
|
750
746
|
),
|
|
751
|
-
React__default
|
|
747
|
+
React__default.createElement(
|
|
752
748
|
reactBootstrap.Form.Group,
|
|
753
749
|
{ as: reactBootstrap.Col, className: 'text-right' },
|
|
754
|
-
!loading && React__default
|
|
750
|
+
!loading && React__default.createElement(
|
|
755
751
|
reactBootstrap.Button,
|
|
756
752
|
{ type: 'submit' },
|
|
757
753
|
'Sign Up'
|
|
758
754
|
),
|
|
759
|
-
loading && React__default
|
|
755
|
+
loading && React__default.createElement(
|
|
760
756
|
reactBootstrap.Button,
|
|
761
757
|
{ variant: 'primary', disabled: true },
|
|
762
|
-
React__default
|
|
758
|
+
React__default.createElement(reactBootstrap.Spinner, {
|
|
763
759
|
as: 'span',
|
|
764
760
|
animation: 'border',
|
|
765
761
|
role: 'status',
|
|
766
762
|
'aria-hidden': 'true',
|
|
767
763
|
size: 'sm'
|
|
768
764
|
}),
|
|
769
|
-
React__default
|
|
765
|
+
React__default.createElement(
|
|
770
766
|
'span',
|
|
771
767
|
{ className: 'sr-only' },
|
|
772
768
|
'Loading...'
|
|
@@ -774,12 +770,12 @@ var SignupForm = function SignupForm(props) {
|
|
|
774
770
|
)
|
|
775
771
|
)
|
|
776
772
|
),
|
|
777
|
-
errorMsg && React__default
|
|
773
|
+
errorMsg && React__default.createElement(
|
|
778
774
|
'p',
|
|
779
775
|
{ className: 'error' },
|
|
780
776
|
errorMsg
|
|
781
777
|
),
|
|
782
|
-
React__default
|
|
778
|
+
React__default.createElement(
|
|
783
779
|
'style',
|
|
784
780
|
{ jsx: 'true'.toString() },
|
|
785
781
|
' \n .login {\n margin: 0 auto;\n padding: 1rem;\n border: 1px solid #ccc;\n border-radius: 4px;\n }\n .error {\n color: red;\n margin: 1rem 0 0;\n }\n '
|
|
@@ -1069,32 +1065,32 @@ var SignupForm$1 = function SignupForm(props) {
|
|
|
1069
1065
|
loading = _useState18[0],
|
|
1070
1066
|
setLoading = _useState18[1];
|
|
1071
1067
|
|
|
1072
|
-
return React__default
|
|
1068
|
+
return React__default.createElement(
|
|
1073
1069
|
reactBootstrap.Form,
|
|
1074
1070
|
{ className: 'login', id: 'signupForm', onSubmit: handleSubmit },
|
|
1075
|
-
React__default
|
|
1071
|
+
React__default.createElement(
|
|
1076
1072
|
'h1',
|
|
1077
1073
|
null,
|
|
1078
1074
|
'Profile'
|
|
1079
1075
|
),
|
|
1080
|
-
React__default
|
|
1081
|
-
userData ? React__default
|
|
1082
|
-
React__default
|
|
1076
|
+
React__default.createElement('hr', null),
|
|
1077
|
+
userData ? React__default.createElement(
|
|
1078
|
+
React__default.Fragment,
|
|
1083
1079
|
null,
|
|
1084
1080
|
returnFormField({ name: 'email', label: 'Email', type: 'email', required: true, readonly: true, default_value: userData.email }),
|
|
1085
|
-
React__default
|
|
1081
|
+
React__default.createElement(
|
|
1086
1082
|
reactBootstrap.Form.Row,
|
|
1087
1083
|
null,
|
|
1088
1084
|
returnFormField({ name: 'password', label: 'Password', type: 'password', groupType: reactBootstrap.Col, required: false }),
|
|
1089
1085
|
returnFormField({ name: 'rpassword', label: 'Retype Password', type: 'password', groupType: reactBootstrap.Col, required: false })
|
|
1090
1086
|
),
|
|
1091
|
-
React__default
|
|
1087
|
+
React__default.createElement(
|
|
1092
1088
|
reactBootstrap.Form.Row,
|
|
1093
1089
|
null,
|
|
1094
1090
|
returnFormField({ name: 'first_name', label: 'First Name', type: 'text', groupType: reactBootstrap.Col, required: true, default_value: userData.shared.first_name }),
|
|
1095
1091
|
returnFormField({ name: 'last_name', label: 'Last Name', type: 'text', groupType: reactBootstrap.Col, required: true, default_value: userData.shared.last_name })
|
|
1096
1092
|
),
|
|
1097
|
-
React__default
|
|
1093
|
+
React__default.createElement(
|
|
1098
1094
|
reactBootstrap.Form.Row,
|
|
1099
1095
|
null,
|
|
1100
1096
|
returnFormField({
|
|
@@ -1109,7 +1105,7 @@ var SignupForm$1 = function SignupForm(props) {
|
|
|
1109
1105
|
}),
|
|
1110
1106
|
countryUS && returnFormField({ name: 'state', label: 'State', type: 'select', required: true, groupType: reactBootstrap.Col, options: states, default_value: userData.shared.state })
|
|
1111
1107
|
),
|
|
1112
|
-
React__default
|
|
1108
|
+
React__default.createElement(
|
|
1113
1109
|
reactBootstrap.Form.Row,
|
|
1114
1110
|
null,
|
|
1115
1111
|
countryUS && returnFormField({ name: 'zip', label: 'Working Zip Code', type: 'text', required: true, groupType: reactBootstrap.Col, default_value: userData.shared.zip }),
|
|
@@ -1159,29 +1155,29 @@ var SignupForm$1 = function SignupForm(props) {
|
|
|
1159
1155
|
required: true,
|
|
1160
1156
|
options: [{ label: 'By registering you agree to our <a href="/terms">Terms and Conditions</a> and <a href="/privacy">Privacy Policy</a> and understand that you will be receiving email communications', value: 'Y' }]
|
|
1161
1157
|
}),
|
|
1162
|
-
React__default
|
|
1163
|
-
React__default
|
|
1158
|
+
React__default.createElement('hr', null),
|
|
1159
|
+
React__default.createElement(
|
|
1164
1160
|
reactBootstrap.Form.Row,
|
|
1165
1161
|
null,
|
|
1166
|
-
React__default
|
|
1162
|
+
React__default.createElement(
|
|
1167
1163
|
reactBootstrap.Form.Group,
|
|
1168
1164
|
{ as: reactBootstrap.Col },
|
|
1169
|
-
!loading && React__default
|
|
1165
|
+
!loading && React__default.createElement(
|
|
1170
1166
|
reactBootstrap.Button,
|
|
1171
1167
|
{ type: 'submit' },
|
|
1172
1168
|
'Update'
|
|
1173
1169
|
),
|
|
1174
|
-
loading && React__default
|
|
1170
|
+
loading && React__default.createElement(
|
|
1175
1171
|
reactBootstrap.Button,
|
|
1176
1172
|
{ variant: 'primary', disabled: true },
|
|
1177
|
-
React__default
|
|
1173
|
+
React__default.createElement(reactBootstrap.Spinner, {
|
|
1178
1174
|
as: 'span',
|
|
1179
1175
|
animation: 'border',
|
|
1180
1176
|
role: 'status',
|
|
1181
1177
|
'aria-hidden': 'true',
|
|
1182
1178
|
size: 'sm'
|
|
1183
1179
|
}),
|
|
1184
|
-
React__default
|
|
1180
|
+
React__default.createElement(
|
|
1185
1181
|
'span',
|
|
1186
1182
|
{ className: 'sr-only' },
|
|
1187
1183
|
'Loading...'
|
|
@@ -1189,24 +1185,24 @@ var SignupForm$1 = function SignupForm(props) {
|
|
|
1189
1185
|
)
|
|
1190
1186
|
)
|
|
1191
1187
|
)
|
|
1192
|
-
) : React__default
|
|
1188
|
+
) : React__default.createElement(reactBootstrap.Spinner, {
|
|
1193
1189
|
as: 'span',
|
|
1194
1190
|
animation: 'border',
|
|
1195
1191
|
role: 'status',
|
|
1196
1192
|
'aria-hidden': 'true',
|
|
1197
1193
|
size: 'sm'
|
|
1198
1194
|
}),
|
|
1199
|
-
errorMsg && React__default
|
|
1195
|
+
errorMsg && React__default.createElement(
|
|
1200
1196
|
'p',
|
|
1201
1197
|
{ className: 'error' },
|
|
1202
1198
|
errorMsg
|
|
1203
1199
|
),
|
|
1204
|
-
successMsg && React__default
|
|
1200
|
+
successMsg && React__default.createElement(
|
|
1205
1201
|
'p',
|
|
1206
1202
|
{ className: 'success' },
|
|
1207
1203
|
successMsg
|
|
1208
1204
|
),
|
|
1209
|
-
React__default
|
|
1205
|
+
React__default.createElement(
|
|
1210
1206
|
'style',
|
|
1211
1207
|
{ jsx: 'true'.toString() },
|
|
1212
1208
|
' \n .login {\n margin: 0 auto;\n padding: 1rem;\n border: 1px solid #ccc;\n border-radius: 4px;\n }\n .error {\n color: red;\n margin: 1rem 0 0;\n }\n .success {\n color: green;\n margin: 1rem 0 0;\n }\n '
|
|
@@ -2771,7 +2767,7 @@ function connect() {
|
|
|
2771
2767
|
};
|
|
2772
2768
|
}
|
|
2773
2769
|
|
|
2774
|
-
var connection =
|
|
2770
|
+
var connection = mysql.createConnection(config);
|
|
2775
2771
|
return {
|
|
2776
2772
|
query: function query(sql, args) {
|
|
2777
2773
|
return util.util.promisify(connection.query).call(connection, sql, args);
|
|
@@ -2965,7 +2961,7 @@ var md5 = _commonjsHelpers.createCommonjsModule(function (module) {
|
|
|
2965
2961
|
message = utf8.stringToBytes(message);
|
|
2966
2962
|
else if (isBuffer(message))
|
|
2967
2963
|
message = Array.prototype.slice.call(message, 0);
|
|
2968
|
-
else if (!Array.isArray(message)
|
|
2964
|
+
else if (!Array.isArray(message))
|
|
2969
2965
|
message = message.toString();
|
|
2970
2966
|
// else, assume byte array already
|
|
2971
2967
|
|
|
@@ -3732,7 +3728,7 @@ var user = /*#__PURE__*/Object.freeze({
|
|
|
3732
3728
|
findUser: findUser$1
|
|
3733
3729
|
});
|
|
3734
3730
|
|
|
3735
|
-
var localStrategy = new
|
|
3731
|
+
var localStrategy = new Local.Strategy({
|
|
3736
3732
|
usernameField: 'email',
|
|
3737
3733
|
passwordField: 'password'
|
|
3738
3734
|
}, function (email, password, done) {
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
|
4
|
+
|
|
3
5
|
var React = require('react');
|
|
6
|
+
var React__default = _interopDefault(React);
|
|
4
7
|
var slicedToArray = require('./slicedToArray-8063ee51.js');
|
|
5
8
|
|
|
6
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
7
|
-
|
|
8
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
9
|
-
|
|
10
9
|
var AuthorComponent = function AuthorComponent(_ref) {
|
|
11
10
|
var authors = _ref.authors,
|
|
12
11
|
index = _ref.index;
|
|
@@ -19,15 +18,15 @@ var AuthorComponent = function AuthorComponent(_ref) {
|
|
|
19
18
|
|
|
20
19
|
|
|
21
20
|
if (displayName && url && url.current) {
|
|
22
|
-
return React__default
|
|
21
|
+
return React__default.createElement(
|
|
23
22
|
'span',
|
|
24
23
|
{ key: _id },
|
|
25
|
-
index === 0 && React__default
|
|
24
|
+
index === 0 && React__default.createElement(
|
|
26
25
|
'span',
|
|
27
26
|
{ className: 'pr-1' },
|
|
28
27
|
'By'
|
|
29
28
|
),
|
|
30
|
-
React__default
|
|
29
|
+
React__default.createElement(
|
|
31
30
|
'a',
|
|
32
31
|
{ href: '/authors/' + url.current, className: 'text-muted' },
|
|
33
32
|
displayName
|
|
@@ -35,15 +34,15 @@ var AuthorComponent = function AuthorComponent(_ref) {
|
|
|
35
34
|
length !== index + 1 && ', '
|
|
36
35
|
);
|
|
37
36
|
} else if (displayName) {
|
|
38
|
-
return React__default
|
|
37
|
+
return React__default.createElement(
|
|
39
38
|
'span',
|
|
40
39
|
{ key: _id },
|
|
41
|
-
index === 0 && React__default
|
|
40
|
+
index === 0 && React__default.createElement(
|
|
42
41
|
'span',
|
|
43
42
|
{ className: 'pr-1' },
|
|
44
43
|
'By'
|
|
45
44
|
),
|
|
46
|
-
React__default
|
|
45
|
+
React__default.createElement(
|
|
47
46
|
'span',
|
|
48
47
|
{ className: 'text-muted' },
|
|
49
48
|
displayName,
|
|
@@ -76,16 +75,16 @@ var AuthorComponent = function AuthorComponent(_ref) {
|
|
|
76
75
|
var overlayRef = React.useRef(null);
|
|
77
76
|
var authorRef = React.useRef(null);
|
|
78
77
|
|
|
79
|
-
return React__default
|
|
78
|
+
return React__default.createElement(
|
|
80
79
|
'div',
|
|
81
80
|
{ id: 'author-sec' + index, ref: authorRef },
|
|
82
|
-
hideContent && React__default
|
|
81
|
+
hideContent && React__default.createElement('div', { onClick: function onClick() {
|
|
83
82
|
return onOverlayClick();
|
|
84
83
|
}, ref: overlayRef, id: 'overlay-content' + index }),
|
|
85
84
|
authors.map(function (authorDetail, index) {
|
|
86
85
|
return renderAuthor(authorDetail, index, authors.length);
|
|
87
86
|
}),
|
|
88
|
-
React__default
|
|
87
|
+
React__default.createElement(
|
|
89
88
|
'style',
|
|
90
89
|
{ jsx: true },
|
|
91
90
|
'\n #author-sec' + index + ' {\n line-height: 25px;\n position: relative;\n height: auto;\n // max-height: 50px;\n }\n .hide-content {\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n #overlay-content' + index + ' {\n position: absolute;\n cursor: pointer;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n z-index: 1000;\n }\n '
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
var PropTypes = require('prop-types');
|
|
5
|
-
var index = require('./index-be0c82be.js');
|
|
6
|
-
|
|
7
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
3
|
+
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
|
8
4
|
|
|
9
|
-
var
|
|
10
|
-
var
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var React__default = _interopDefault(React);
|
|
7
|
+
var PropTypes = _interopDefault(require('prop-types'));
|
|
8
|
+
var index$1 = require('./index-be0c82be.js');
|
|
11
9
|
|
|
12
10
|
/*
|
|
13
11
|
object-assign
|
|
@@ -146,7 +144,7 @@ var buildUrl = function buildUrl(props) {
|
|
|
146
144
|
throw new Error('Invalid image reference in block, no `_ref` found on `asset`');
|
|
147
145
|
}
|
|
148
146
|
|
|
149
|
-
return index.node(objectAssign({
|
|
147
|
+
return index$1.node(objectAssign({
|
|
150
148
|
projectId: projectId,
|
|
151
149
|
dataset: dataset
|
|
152
150
|
}, options.imageOptions || {})).image(node).toString();
|
|
@@ -836,7 +834,7 @@ var internals$1 = internals;
|
|
|
836
834
|
|
|
837
835
|
var getSerializers = internals$1.getSerializers;
|
|
838
836
|
|
|
839
|
-
var renderNode = React__default
|
|
837
|
+
var renderNode = React__default.createElement;
|
|
840
838
|
|
|
841
839
|
var _getSerializers = getSerializers(renderNode),
|
|
842
840
|
defaultSerializers = _getSerializers.defaultSerializers,
|
|
@@ -856,7 +854,7 @@ var getImageUrl$1 = internals$1.getImageUrl,
|
|
|
856
854
|
blocksToNodes$1 = internals$1.blocksToNodes,
|
|
857
855
|
mergeSerializers$1 = internals$1.mergeSerializers;
|
|
858
856
|
|
|
859
|
-
var renderNode$1 = React__default
|
|
857
|
+
var renderNode$1 = React__default.createElement;
|
|
860
858
|
|
|
861
859
|
var SanityBlockContent = function SanityBlockContent(props) {
|
|
862
860
|
var customSerializers = mergeSerializers$1(SanityBlockContent.defaultSerializers, props.serializers);
|
|
@@ -876,32 +874,32 @@ SanityBlockContent.defaultSerializers = serializers$1;
|
|
|
876
874
|
SanityBlockContent.getImageUrl = getImageUrl$1;
|
|
877
875
|
|
|
878
876
|
SanityBlockContent.propTypes = {
|
|
879
|
-
className:
|
|
880
|
-
renderContainerOnSingleChild:
|
|
877
|
+
className: PropTypes.string,
|
|
878
|
+
renderContainerOnSingleChild: PropTypes.bool,
|
|
881
879
|
|
|
882
880
|
// When rendering images, we need project id and dataset, unless images are materialized
|
|
883
|
-
projectId:
|
|
884
|
-
dataset:
|
|
885
|
-
imageOptions:
|
|
881
|
+
projectId: PropTypes.string,
|
|
882
|
+
dataset: PropTypes.string,
|
|
883
|
+
imageOptions: PropTypes.object,
|
|
886
884
|
|
|
887
|
-
serializers:
|
|
885
|
+
serializers: PropTypes.shape({
|
|
888
886
|
// Common overrides
|
|
889
|
-
types:
|
|
890
|
-
marks:
|
|
887
|
+
types: PropTypes.object,
|
|
888
|
+
marks: PropTypes.object,
|
|
891
889
|
|
|
892
890
|
// Less common overrides
|
|
893
|
-
list:
|
|
894
|
-
listItem:
|
|
891
|
+
list: PropTypes.func,
|
|
892
|
+
listItem: PropTypes.func,
|
|
895
893
|
|
|
896
894
|
// Low-level serializers
|
|
897
|
-
block:
|
|
898
|
-
span:
|
|
895
|
+
block: PropTypes.func,
|
|
896
|
+
span: PropTypes.func
|
|
899
897
|
}),
|
|
900
898
|
|
|
901
|
-
blocks:
|
|
902
|
-
_type:
|
|
903
|
-
})),
|
|
904
|
-
_type:
|
|
899
|
+
blocks: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.shape({
|
|
900
|
+
_type: PropTypes.string.isRequired
|
|
901
|
+
})), PropTypes.shape({
|
|
902
|
+
_type: PropTypes.string.isRequired
|
|
905
903
|
})]).isRequired
|
|
906
904
|
};
|
|
907
905
|
|