PageSourceSearch

https://asce7tsunami.online/app/js/components/Criteria/Criteria.js?0.1.40

js asce7tsunami.online collected 2026-10-04 13:25:34 UTC 14,947 bytes, 361 lines download raw bytes

1define(['exports', 'react', 'actions/CriteriaActions', 'actions/MapActions', 'stores/CriteriaStore', 'stores/MapStore', 'js/config/config', 'utils/Utilities', 'components/Criteria/LocationSelection'], function (exports, _react, _actionsCriteriaActions, _actionsMapActions, _storesCriteriaStore, _storesMapStore, _jsConfigConfig, _utilsUtilities, _componentsCriteriaLocationSelection) {
2  'use strict';
3
4  Object.defineProperty(exports, '__esModule', {
5    value: true
6  });
7
8  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
9
10  var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
11
12  var _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; desc = parent = undefined; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };
13
14  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
15
16  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
17
18  function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
19
20  var _React = _interopRequireDefault(_react);
21
22  var _config = _interopRequireDefault(_jsConfigConfig);
23
24  var RiskLevelSelectionItems = (function (_React$Component) {
25    _inherits(RiskLevelSelectionItems, _React$Component);
26
27    function RiskLevelSelectionItems() {
28      _classCallCheck(this, RiskLevelSelectionItems);
29
30      _get(Object.getPrototypeOf(RiskLevelSelectionItems.prototype), 'constructor', this).apply(this, arguments);
31    }
32
33    _createClass(RiskLevelSelectionItems, [{
34      key: 'render',
35      value: function render() {
36        return _React['default'].createElement(
37          'option',
38          { value: this.props.value },
39          this.props.rangeItem
40        );
41      }
42    }]);
43
44    return RiskLevelSelectionItems;
45  })(_React['default'].Component);
46
47  var RiskLevelSelection = (function (_React$Component2) {
48    _inherits(RiskLevelSelection, _React$Component2);
49
50    function RiskLevelSelection() {
51      _classCallCheck(this, RiskLevelSelection);
52
53      _get(Object.getPrototypeOf(RiskLevelSelection.prototype), 'constructor', this).call(this);
54      this.state = {
55        indents: []
56      };
57    }
58
59    _createClass(RiskLevelSelection, [{
60      key: 'componentDidMount',
61      value: function componentDidMount() {
62        var indents = [];
63        for (var i = 1; i <= _config['default'].riskLevelRange; i++) {
64          indents.push(_React['default'].createElement(RiskLevelSelectionItems, { key: i, value: i, rangeItem: (0, _utilsUtilities.romanize)(i) }));
65        }
66        this.setState({ indents: indents });
67      }
68    }, {
69      key: 'handleSelectChange',
70      value: function handleSelectChange(evt) {
71        _actionsCriteriaActions.criteriaActions.riskLevelSelection(evt.target.value);
72      }
73    }, {
74      key: 'render',
75      value: function render() {
76        var riskLevelSelectedValue = $('#risk-level-selector :selected').text();
77
78        return _React['default'].createElement(
79          'div',
80          { className: 'criteria-container__section risk-level-container col fill--50p__wider' },
81          _React['default'].createElement(
82            'div',
83            { className: '' },
84            _React['default'].createElement(
85              'div',
86              { className: 'criteria-title-item' },
87              _React['default'].createElement('img', { className: 'title-icon', src: 'app/images/sm_icon_risk_level.svg', alt: '' }),
88              _React['default'].createElement(
89                'span',
90                null,
91                'Tsunami Risk Category'
92              ),
93              _React['default'].createElement('img', { className: 'info-icon', src: 'app/images/icon_info.svg', alt: '', title: 'Select your structure\'s Tsunami Risk Category as defined in ASCE 7-16 Sections 1.5, 6.1, 6.2 and as modified for specific use related per Section 6.4.' }),
94              _React['default'].createElement(
95                'div',
96                { className: 'risk-level-selector-container' },
97                _React['default'].createElement(
98                  'p',
99                  { className: 'risk-level-selected-placeholder' },
100                  riskLevelSelectedValue
101                ),
102                _React['default'].createElement(
103                  'select',
104                  { value: this.props.riskLevel, id: 'risk-level-selector', className: 'risk-level-selector browser-default', onChange: this.handleSelectChange },
105                  _React['default'].createElement(
106                    'option',
107                    { value: 'default', disabled: true, defaultValue: true },
108                    'Risk Category'
109                  ),
110                  this.state.indents
111                )
112              )
113            )
114          )
115        );
116      }
117    }]);
118
119    return RiskLevelSelection;
120  })(_React['default'].Component);
121
122  var StandardsSelectionItems = (function (_React$Component3) {
123    _inherits(StandardsSelectionItems, _React$Component3);
124
125    function StandardsSelectionItems() {
126      _classCallCheck(this, StandardsSelectionItems);
127
128      _get(Object.getPrototypeOf(StandardsSelectionItems.prototype), 'constructor', this).apply(this, arguments);
129    }
130
131    _createClass(StandardsSelectionItems, [{
132      key: 'render',
133      value: function render() {
134        return _React['default'].createElement(
135          'option',
136          { value: this.props.value },
137          this.props.item
138        );
139      }
140    }]);
141
142    return StandardsSelectionItems;
143  })(_React['default'].Component);
144
145  var Standards = (function (_React$Component4) {
146    _inherits(Standards, _React$Component4);
147
148    function Standards() {
149      _classCallCheck(this, Standards);
150
151      _get(Object.getPrototypeOf(Standards.prototype), 'constructor', this).call(this);
152      this.state = {
153        indents: []
154      };
155    }
156
157    _createClass(Standards, [{
158      key: 'componentDidMount',
159      value: function componentDidMount() {
160        var indents = [];
161        ['7-16', '7-22'].forEach(function (standard) {
162          indents.push(_React['default'].createElement(StandardsSelectionItems, { key: standard, value: standard, item: 'ASCE ' + standard }));
163        });
164        this.setState({ indents: indents });
165      }
166    }, {
167      key: 'standardsVersionClick',
168      value: function standardsVersionClick(event) {
169        _actionsCriteriaActions.criteriaActions.updateStandardVersion(event.target.value);
170      }
171    }, {
172      key: 'render',
173      value: function render() {
174        var containerClass = 'standard-selector-container';
175
176        return _React['default'].createElement(
177          'div',
178          {
179            className: 'criteria-container__section standard-container col s6'
180          },
181          _React['default'].createElement(
182            'div',
183            { className: 'input-field' },
184            _React['default'].createElement(
185              'div',
186              { className: 'criteria-title-item' },
187              _React['default'].createElement('img', {
188                className: 'title-icon',
189                src: 'app/images/sm_icon_standard_version.svg',
190                alt: ''
191              }),
192              _React['default'].createElement(
193                'span',
194                null,
195                _config['default'].strings.standardsVersionLabel
196              ),
197              _React['default'].createElement('img', {
198                className: 'info-icon',
199                src: 'app/images/icon_info.svg',
200                alt: '',
201                title: _config['default'].strings.standardsVersionMoreInfo
202              }),
203              _React['default'].createElement(
204                'div',
205                { className: containerClass },
206                _React['default'].createElement(
207                  'p',
208                  { className: 'standard-selected-placeholder' },
209                  'ASCE ' + this.props.standard
210                ),
211                _React['default'].createElement(
212                  'select',
213                  {
214                    value: this.props.standard,
215                    id: 'standards-selector',
216                    className: 'standards-selector browser-default',
217                    onChange: this.standardsVersionClick
218                  },
219                  _React['default'].createElement(
220                    'option',
221                    { value: 'default', disabled: true },
222                    'Standard Version'
223                  ),
224                  this.state.indents
225                )
226              )
227            )
228          )
229        );
230      }
231    }]);
232
233    return Standards;
234  })(_React['default'].Component);
235
236  var Measurements = (function (_React$Component5) {
237    _inherits(Measurements, _React$Component5);
238
239    function Measurements() {
240      _classCallCheck(this, Measurements);
241
242      _get(Object.getPrototypeOf(Measurements.prototype), 'constructor', this).apply(this, arguments);
243    }
244
245    _createClass(Measurements, [{
246      key: 'measurementsClick',
247      value: function measurementsClick(event) {
248        _actionsCriteriaActions.criteriaActions.measurementsSelection(event.target.id);
249        _actionsMapActions.mapActions.toggleSummary(false);
250      }
251    }, {
252      key: 'shouldComponentUpdate',
253      value: function shouldComponentUpdate(nextProps) {
254        if (nextProps.measurement != this.props.measurement) {
255          return true;
256        } else {
257          return false;
258        }
259      }
260    }, {
261      key: 'render',
262      value: function render() {
263        return _React['default'].createElement(
264          'div',
265          { className: 'criteria-container__section measurements-container' },
266          _React['default'].createElement(
267            'div',
268            { className: 'criteria-title-item' },
269            _React['default'].createElement('img', { className: 'title-icon', src: 'app/images/sm_icon_measurements.svg', alt: '' }),
270            _React['default'].createElement(
271              'span',
272              null,
273              _config['default'].strings.measurementsLabel
274            )
275          ),
276          _React['default'].createElement(
277            'p',
278            { className: 'inline-block fill--50p__wide' },
279            _React['default'].createElement('input', { checked: this.props.measurement == 'imperial', onChange: this.measurementsClick, className: 'with-gap', name: 'group2', type: 'radio', id: 'imperial' }),
280            _React['default'].createElement(
281              'label',
282              { htmlFor: 'imperial' },
283              'Customary'
284            )
285          ),
286          _React['default'].createElement(
287            'p',
288            { className: 'inline-block fill--50p__wide' },
289            _React['default'].createElement('input', { checked: this.props.measurement == 'si', onChange: this.measurementsClick, className: 'with-gap', name: 'group2', type: 'radio', id: 'si' }),
290            _React['default'].createElement(
291              'label',
292              { htmlFor: 'si' },
293              'SI'
294            )
295          )
296        );
297      }
298    }]);
299
300    return Measurements;
301  })(_React['default'].Component);
302
303  var Criteria = (function (_React$Component6) {
304    _inherits(Criteria, _React$Component6);
305
306    function Criteria(props) {
307      _classCallCheck(this, Criteria);
308
309      _get(Object.getPrototypeOf(Criteria.prototype), 'constructor', this).call(this, props);
310      _storesCriteriaStore.criteriaStore.listen(this.onChange.bind(this));
311      this.state = _storesCriteriaStore.criteriaStore.getState();
312    }
313
314    _createClass(Criteria, [{
315      key: 'onChange',
316      value: function onChange(state) {
317        this.setState(state);
318      }
319    }, {
320      key: 'render',
321      value: function render() {
322        var riskVisible = this.state.streetAddress !== '' || this.state.latitude !== 'Latitude' ? '' : 'hidden';
323        return _React['default'].createElement(
324          'div',
325          { className: 'flex flex-column' },
326          _React['default'].createElement(_componentsCriteriaLocationSelection.LocationSelection, _extends({ key: 'location' }, this.state)),
327          _React['default'].createElement(
328            'div',
329            null,
330            _React['default'].createElement(
331              'h3',
332              { className: 'location-selection-container__title' },
333              _React['default'].createElement(
334                'span',
335                null,
336                _config['default'].strings.criteriaSelectionLabel
337              )
338            ),
339            _React['default'].createElement(
340              'div',
341              { className: 'standards-container' },
342              _React['default'].createElement(Standards, { standard: this.state.standardsVersion })
343            ),
344            _React['default'].createElement(
345              'div',
346              { className: 'risk-category-containter' },
347              _React['default'].createElement(RiskLevelSelection, { riskLevel: this.state.riskLevel }),
348              _React['default'].createElement(Measurements, { measurement: this.state.measurement })
349            )
350          )
351        );
352      }
353    }]);
354
355    return Criteria;
356  })(_React['default'].Component);
357
358  exports.Criteria = Criteria;
359});
360/*<img src='app/images/circle_2.svg' alt=''/>*/
361//# sourceMappingURL=Criteria.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.