openstack-uicore-foundation 5.0.2 → 5.0.3-beta.2

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 (223) hide show
  1. package/.claude/settings.local.json +12 -0
  2. package/lib/components/ajaxloader.js.map +1 -1
  3. package/lib/components/attendance-tracker.js +1 -1
  4. package/lib/components/attendance-tracker.js.map +1 -1
  5. package/lib/components/bulk-actions-selector.js.map +1 -1
  6. package/lib/components/circle-button.js.map +1 -1
  7. package/lib/components/clock.js +1 -1
  8. package/lib/components/clock.js.map +1 -1
  9. package/lib/components/exclusive-wrapper.js.map +1 -1
  10. package/lib/components/extra-questions-mui.js.map +1 -1
  11. package/lib/components/extra-questions.js +1 -1
  12. package/lib/components/extra-questions.js.map +1 -1
  13. package/lib/components/form-validation.js.map +1 -1
  14. package/lib/components/forms/rsvp-form.js.map +1 -1
  15. package/lib/components/forms/simple-form.js +1 -1
  16. package/lib/components/forms/simple-form.js.map +1 -1
  17. package/lib/components/free-text-search.js +1 -1
  18. package/lib/components/free-text-search.js.map +1 -1
  19. package/lib/components/google-map.js +1 -1
  20. package/lib/components/google-map.js.map +1 -1
  21. package/lib/components/index.js +1 -1
  22. package/lib/components/index.js.map +1 -1
  23. package/lib/components/inputs/access-levels-input.js +1 -1
  24. package/lib/components/inputs/access-levels-input.js.map +1 -1
  25. package/lib/components/inputs/action-dropdown.js.map +1 -1
  26. package/lib/components/inputs/attendee-input.js +1 -1
  27. package/lib/components/inputs/attendee-input.js.map +1 -1
  28. package/lib/components/inputs/checkbox-list.js.map +1 -1
  29. package/lib/components/inputs/company-input-v2.js +1 -1
  30. package/lib/components/inputs/company-input-v2.js.map +1 -1
  31. package/lib/components/inputs/company-input.js +1 -1
  32. package/lib/components/inputs/company-input.js.map +1 -1
  33. package/lib/components/inputs/country-dropdown.js +1 -1
  34. package/lib/components/inputs/country-dropdown.js.map +1 -1
  35. package/lib/components/inputs/country-input.js +1 -1
  36. package/lib/components/inputs/country-input.js.map +1 -1
  37. package/lib/components/inputs/datetimepicker.js.map +1 -1
  38. package/lib/components/inputs/dropdown.js.map +1 -1
  39. package/lib/components/inputs/editor-input-v2.js.map +1 -1
  40. package/lib/components/inputs/editor-input-v3.js.map +1 -1
  41. package/lib/components/inputs/editor-input.js.map +1 -1
  42. package/lib/components/inputs/event-input.js +1 -1
  43. package/lib/components/inputs/event-input.js.map +1 -1
  44. package/lib/components/inputs/free-multi-text-input.js.map +1 -1
  45. package/lib/components/inputs/group-input.js +1 -1
  46. package/lib/components/inputs/group-input.js.map +1 -1
  47. package/lib/components/inputs/grouped-dropdown.js.map +1 -1
  48. package/lib/components/inputs/language-input.js +1 -1
  49. package/lib/components/inputs/language-input.js.map +1 -1
  50. package/lib/components/inputs/member-input.js +1 -1
  51. package/lib/components/inputs/member-input.js.map +1 -1
  52. package/lib/components/inputs/operator-input.js.map +1 -1
  53. package/lib/components/inputs/organization-input.js +1 -1
  54. package/lib/components/inputs/organization-input.js.map +1 -1
  55. package/lib/components/inputs/promocode-input.js +1 -1
  56. package/lib/components/inputs/promocode-input.js.map +1 -1
  57. package/lib/components/inputs/radio-list.js.map +1 -1
  58. package/lib/components/inputs/registration-company-input.js +1 -1
  59. package/lib/components/inputs/registration-company-input.js.map +1 -1
  60. package/lib/components/inputs/speaker-input.js +1 -1
  61. package/lib/components/inputs/speaker-input.js.map +1 -1
  62. package/lib/components/inputs/sponsor-input.js +1 -1
  63. package/lib/components/inputs/sponsor-input.js.map +1 -1
  64. package/lib/components/inputs/stepped-select.js.map +1 -1
  65. package/lib/components/inputs/summit-days-select.js.map +1 -1
  66. package/lib/components/inputs/summit-input.js +1 -1
  67. package/lib/components/inputs/summit-input.js.map +1 -1
  68. package/lib/components/inputs/summit-venues-select.js.map +1 -1
  69. package/lib/components/inputs/tag-input.js +1 -1
  70. package/lib/components/inputs/tag-input.js.map +1 -1
  71. package/lib/components/inputs/text-input.js.map +1 -1
  72. package/lib/components/inputs/textarea-input.js.map +1 -1
  73. package/lib/components/inputs/ticket-types-input.js +1 -1
  74. package/lib/components/inputs/ticket-types-input.js.map +1 -1
  75. package/lib/components/inputs/upload-input-v2.js +1 -1
  76. package/lib/components/inputs/upload-input-v2.js.map +1 -1
  77. package/lib/components/inputs/upload-input-v3.js +1 -1
  78. package/lib/components/inputs/upload-input-v3.js.map +1 -1
  79. package/lib/components/inputs/upload-input.js.map +1 -1
  80. package/lib/components/mui/alert-button.js +2 -0
  81. package/lib/components/mui/alert-button.js.map +1 -0
  82. package/lib/components/mui/alert-modal.js +2 -0
  83. package/lib/components/mui/alert-modal.js.map +1 -0
  84. package/lib/components/mui/auth-button.js +2 -0
  85. package/lib/components/mui/auth-button.js.map +1 -0
  86. package/lib/components/mui/cart-button.js +2 -0
  87. package/lib/components/mui/cart-button.js.map +1 -0
  88. package/lib/components/mui/checkbox-list.js.map +1 -1
  89. package/lib/components/mui/chip-list.js.map +1 -1
  90. package/lib/components/mui/chip-notify.js +1 -1
  91. package/lib/components/mui/chip-notify.js.map +1 -1
  92. package/lib/components/mui/chip-select-input.js.map +1 -1
  93. package/lib/components/mui/confirm-delete-dialog.js +2 -0
  94. package/lib/components/mui/confirm-delete-dialog.js.map +1 -0
  95. package/lib/components/mui/confirm-dialog.js.map +1 -1
  96. package/lib/components/mui/custom-alert.js.map +1 -1
  97. package/lib/components/mui/dashboard-card.js +2 -0
  98. package/lib/components/mui/dashboard-card.js.map +1 -0
  99. package/lib/components/mui/dnd-list.js.map +1 -1
  100. package/lib/components/mui/download-btn.js +2 -0
  101. package/lib/components/mui/download-btn.js.map +1 -0
  102. package/lib/components/mui/dropdown-checkbox.js.map +1 -1
  103. package/lib/components/mui/editable-table.js.map +1 -1
  104. package/lib/components/mui/form-item-table.js +1 -1
  105. package/lib/components/mui/form-item-table.js.map +1 -1
  106. package/lib/components/mui/formik-inputs/additional-input-list.js.map +1 -1
  107. package/lib/components/mui/formik-inputs/additional-input.js.map +1 -1
  108. package/lib/components/mui/formik-inputs/async-select.js.map +1 -1
  109. package/lib/components/mui/formik-inputs/checkbox-group.js.map +1 -1
  110. package/lib/components/mui/formik-inputs/checkbox.js.map +1 -1
  111. package/lib/components/mui/formik-inputs/company-input.js +1 -1
  112. package/lib/components/mui/formik-inputs/company-input.js.map +1 -1
  113. package/lib/components/mui/formik-inputs/datepicker.js.map +1 -1
  114. package/lib/components/mui/formik-inputs/discount-field.js.map +1 -1
  115. package/lib/components/mui/formik-inputs/dropdown-checkbox.js.map +1 -1
  116. package/lib/components/mui/formik-inputs/dropdown-radio.js.map +1 -1
  117. package/lib/components/mui/formik-inputs/file-size-field.js.map +1 -1
  118. package/lib/components/mui/formik-inputs/item-price-tiers.js +1 -1
  119. package/lib/components/mui/formik-inputs/item-price-tiers.js.map +1 -1
  120. package/lib/components/mui/formik-inputs/price-field.js.map +1 -1
  121. package/lib/components/mui/formik-inputs/quantity-field.js.map +1 -1
  122. package/lib/components/mui/formik-inputs/radio-group.js.map +1 -1
  123. package/lib/components/mui/formik-inputs/select-group.js.map +1 -1
  124. package/lib/components/mui/formik-inputs/select.js.map +1 -1
  125. package/lib/components/mui/formik-inputs/sponsor-input.js +1 -1
  126. package/lib/components/mui/formik-inputs/sponsor-input.js.map +1 -1
  127. package/lib/components/mui/formik-inputs/sponsorship-input.js +1 -1
  128. package/lib/components/mui/formik-inputs/sponsorship-input.js.map +1 -1
  129. package/lib/components/mui/formik-inputs/sponsorship-summit-select.js +1 -1
  130. package/lib/components/mui/formik-inputs/sponsorship-summit-select.js.map +1 -1
  131. package/lib/components/mui/formik-inputs/summit-addon-select.js +1 -1
  132. package/lib/components/mui/formik-inputs/summit-addon-select.js.map +1 -1
  133. package/lib/components/mui/formik-inputs/switch.js.map +1 -1
  134. package/lib/components/mui/formik-inputs/textfield.js.map +1 -1
  135. package/lib/components/mui/formik-inputs/timepicker.js.map +1 -1
  136. package/lib/components/mui/formik-inputs/upload.js +1 -1
  137. package/lib/components/mui/formik-inputs/upload.js.map +1 -1
  138. package/lib/components/mui/infinite-table.js.map +1 -1
  139. package/lib/components/mui/item-settings-modal.js +1 -1
  140. package/lib/components/mui/item-settings-modal.js.map +1 -1
  141. package/lib/components/mui/loading-overlay.js +2 -0
  142. package/lib/components/mui/loading-overlay.js.map +1 -0
  143. package/lib/components/mui/menu-button.js.map +1 -1
  144. package/lib/components/mui/nav-bar.js +2 -0
  145. package/lib/components/mui/nav-bar.js.map +1 -0
  146. package/lib/components/mui/notes-modal.js +1 -1
  147. package/lib/components/mui/notes-modal.js.map +1 -1
  148. package/lib/components/mui/order-summary.js +2 -0
  149. package/lib/components/mui/order-summary.js.map +1 -0
  150. package/lib/components/mui/search-input.js +1 -1
  151. package/lib/components/mui/search-input.js.map +1 -1
  152. package/lib/components/mui/show-confirm-dialog.js.map +1 -1
  153. package/lib/components/mui/snackbar-notification.js +1 -1
  154. package/lib/components/mui/snackbar-notification.js.map +1 -1
  155. package/lib/components/mui/sortable-table.js.map +1 -1
  156. package/lib/components/mui/sponsor-addon-select.js +1 -1
  157. package/lib/components/mui/sponsor-addon-select.js.map +1 -1
  158. package/lib/components/mui/status-chip.js +2 -0
  159. package/lib/components/mui/status-chip.js.map +1 -0
  160. package/lib/components/mui/stripe-payment.js +2 -0
  161. package/lib/components/mui/stripe-payment.js.map +1 -0
  162. package/lib/components/mui/summit-addon-select.js +1 -1
  163. package/lib/components/mui/summit-addon-select.js.map +1 -1
  164. package/lib/components/mui/summits-dropdown.js +1 -1
  165. package/lib/components/mui/summits-dropdown.js.map +1 -1
  166. package/lib/components/mui/table.js +1 -1
  167. package/lib/components/mui/table.js.map +1 -1
  168. package/lib/components/mui/upload-btn.js +2 -0
  169. package/lib/components/mui/upload-btn.js.map +1 -0
  170. package/lib/components/mui/upload-dialog.js +2 -0
  171. package/lib/components/mui/upload-dialog.js.map +1 -0
  172. package/lib/components/progressive-img.js.map +1 -1
  173. package/lib/components/raw-html.js.map +1 -1
  174. package/lib/components/schedule-builder-view.js +1 -1
  175. package/lib/components/schedule-builder-view.js.map +1 -1
  176. package/lib/components/sections/panel.js.map +1 -1
  177. package/lib/components/simple-link-list.js.map +1 -1
  178. package/lib/components/sponsored-project-input.js +1 -1
  179. package/lib/components/sponsored-project-input.js.map +1 -1
  180. package/lib/components/summit-dropdown.js.map +1 -1
  181. package/lib/components/table-editable.js +1 -1
  182. package/lib/components/table-editable.js.map +1 -1
  183. package/lib/components/table-selectable.js.map +1 -1
  184. package/lib/components/table-sortable.js.map +1 -1
  185. package/lib/components/table.js.map +1 -1
  186. package/lib/components/video-stream.js.map +1 -1
  187. package/lib/css/components/index.css +1 -1
  188. package/lib/css/components/index.css.map +1 -1
  189. package/lib/css/components/mui/auth-button.css +1 -0
  190. package/lib/css/components/mui/nav-bar.css +1 -0
  191. package/lib/css/components/mui/upload-dialog.css +2 -0
  192. package/lib/css/components/mui/upload-dialog.css.map +1 -0
  193. package/lib/i18n.js +1 -1
  194. package/lib/i18n.js.map +1 -1
  195. package/lib/models/index.js.map +1 -1
  196. package/lib/models/summit-event.js.map +1 -1
  197. package/lib/security/abstract-auth-callback-route-v2.js +1 -1
  198. package/lib/security/abstract-auth-callback-route-v2.js.map +1 -1
  199. package/lib/security/abstract-auth-callback-route.js +1 -1
  200. package/lib/security/abstract-auth-callback-route.js.map +1 -1
  201. package/lib/security/actions.js +1 -1
  202. package/lib/security/actions.js.map +1 -1
  203. package/lib/security/methods.js +1 -1
  204. package/lib/security/methods.js.map +1 -1
  205. package/lib/security/reducers.js +1 -1
  206. package/lib/security/reducers.js.map +1 -1
  207. package/lib/security/session-checker.js +1 -1
  208. package/lib/security/session-checker.js.map +1 -1
  209. package/lib/utils/actions.js +1 -1
  210. package/lib/utils/actions.js.map +1 -1
  211. package/lib/utils/fragment-parser.js.map +1 -1
  212. package/lib/utils/methods.js +1 -1
  213. package/lib/utils/methods.js.map +1 -1
  214. package/lib/utils/money.js.map +1 -1
  215. package/lib/utils/query-actions.js +1 -1
  216. package/lib/utils/query-actions.js.map +1 -1
  217. package/lib/utils/questions-set.js +1 -1
  218. package/lib/utils/questions-set.js.map +1 -1
  219. package/lib/utils/reducers.js +1 -1
  220. package/lib/utils/reducers.js.map +1 -1
  221. package/lib/utils/use-fit-text.js.map +1 -1
  222. package/package.json +9 -1
  223. package/.codegraph/config.json +0 -140
@@ -1 +1 @@
1
- {"version":3,"file":"components/simple-link-list.js","mappings":"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","sources":["webpack://openstack-uicore-foundation/webpack/universalModuleDefinition","webpack://openstack-uicore-foundation/./src/components/raw-html/index.js","webpack://openstack-uicore-foundation/./src/components/table/TableHeading.js","webpack://openstack-uicore-foundation/./src/components/table/TableRow.js","webpack://openstack-uicore-foundation/./src/components/table/ActionsTableCell.js","webpack://openstack-uicore-foundation/./src/components/table/Table.js","webpack://openstack-uicore-foundation/./src/components/table/TableCell.js","webpack://openstack-uicore-foundation/external commonjs \"@babel/runtime/helpers/extends\"","webpack://openstack-uicore-foundation/external commonjs \"@babel/runtime/helpers/objectWithoutProperties\"","webpack://openstack-uicore-foundation/external commonjs \"i18n-react/dist/i18n-react\"","webpack://openstack-uicore-foundation/external commonjs \"prop-types\"","webpack://openstack-uicore-foundation/external commonjs \"react\"","webpack://openstack-uicore-foundation/external commonjs \"react-select/lib/Async\"","webpack://openstack-uicore-foundation/external commonjs \"react-select/lib/AsyncCreatable\"","webpack://openstack-uicore-foundation/external commonjs \"react-tooltip\"","webpack://openstack-uicore-foundation/webpack/bootstrap","webpack://openstack-uicore-foundation/webpack/runtime/compat get default export","webpack://openstack-uicore-foundation/webpack/runtime/define property getters","webpack://openstack-uicore-foundation/webpack/runtime/hasOwnProperty shorthand","webpack://openstack-uicore-foundation/webpack/runtime/make namespace object","webpack://openstack-uicore-foundation/./src/components/simple-link-list/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"openstack-uicore-foundation\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"openstack-uicore-foundation\"] = factory();\n\telse\n\t\troot[\"openstack-uicore-foundation\"] = factory();\n})(this, () => {\nreturn ","import React from 'react';\n\nconst RawHTML = ({children, replaceNewLine = false, className = \"\", ...rest}) =>\n <span className={className}\n dangerouslySetInnerHTML={{ __html: replaceNewLine ? children?.replace(/\\n/g, '<br />') : children}} {...rest}/>\n\nexport default RawHTML;","import React from 'react';\nimport PropTypes from 'prop-types';\n\nclass TableHeading extends React.Component {\n\n\tconstructor (props) {\n\t\tsuper(props);\n\t\tthis.handleSort = this.handleSort.bind(this);\n\t}\n\n\tgetSortClass() {\n\n\t\tif (!this.props.sortable) return null;\n\n\t\tswitch(this.props.sortDir) {\n\t\t\tcase 1:\n\t\t\t\treturn 'sorting_asc';\n\t\t\tcase -1:\n\t\t\t\treturn 'sorting_desc';\n\t\t\tdefault:\n\t\t\t\treturn this.props.sortable ? 'sorting' : null\n\t\t}\n\t}\n\n\thandleSort(e) {\n\t\te.preventDefault();\n\t\tif(!this.props.hasOwnProperty('onSort') || !this.props.sortable) return;\n\n\t\tthis.props.onSort(\n\t\t\tthis.props.columnIndex,\n\t\t\tthis.props.columnKey,\n\t\t\tthis.props.sortDir ? this.props.sortDir*-1 : 1,\n\t\t\tthis.props.sortFunc\n\t\t);\n\t}\n\n\trender () {\n\t\treturn (\n\t\t\t<th onClick={this.handleSort}\n\t\t\t\tclassName={this.getSortClass()}\n\t\t\t\twidth={this.props.width}\n\t\t\t\t>\n\t\t\t\t{this.props.children}\n\t\t\t</th>\n\t\t);\t\n\t}\n\t\n}\n\nTableHeading.propTypes = {\n\tonSort: PropTypes.func,\n\tsortDir: PropTypes.number,\n\tcolumnIndex: PropTypes.number,\n\tcolumnKey: PropTypes.any,\n\tsortable: PropTypes.bool,\n\tsortFunc: PropTypes.func\n};\n\nexport default TableHeading;","import React from 'react';\n\nexport default class TableRow extends React.Component {\n\n constructor(props) {\n super(props);\n\n this.handleEdit = this.handleEdit.bind(this);\n }\n\n shouldDisplayAction(action) {\n let {id} = this.props;\n\n if (!action.hasOwnProperty('display')) {\n return true;\n } else {\n return action.display(id);\n }\n }\n\n handleEdit(id, ev) {\n ev.stopPropagation();\n ev.preventDefault();\n\n this.props.actions.edit.onClick(id);\n }\n\n render() {\n let {even, actions, id, children} = this.props;\n let canEdit = (actions?.edit && this.shouldDisplayAction(actions.edit));\n let rowClass = even ? 'even' : 'odd';\n\n if (canEdit) {\n return (\n <tr role=\"row\" className={rowClass + \" can-edit\"} onClick={this.handleEdit.bind(this, id)}>\n {children}\n </tr>\n );\n } else {\n return (\n <tr role=\"row\" className={rowClass}>\n {children}\n </tr>\n );\n }\n }\n};\n\n","import React from 'react';\n\nexport default class ActionsTableCell extends React.Component {\n\n constructor(props) {\n super(props);\n\n this.handleAction = this.handleAction.bind(this);\n this.shouldDisplayAction = this.shouldDisplayAction.bind(this);\n\n }\n\n shouldDisplayAction(action) {\n let {id} = this.props;\n\n if (!action.hasOwnProperty('display')) {\n return true;\n } else {\n return action.display(id);\n }\n }\n\n handleAction(action, id, ev) {\n ev.stopPropagation();\n ev.preventDefault();\n\n action(id);\n }\n\n render() {\n let {actions, id} = this.props;\n return (\n <td className=\"actions\" key=\"actions\">\n {actions.hasOwnProperty('delete') && this.shouldDisplayAction(actions.delete) &&\n <a href=\"\" data-tip=\"delete\" onClick={this.handleAction.bind(this, actions.delete.onClick, id)} >\n <i className=\"fa fa-trash-o delete-icon\"></i>\n </a>\n }\n {actions.hasOwnProperty('custom') && actions.custom.map(a =>\n this.shouldDisplayAction(a) &&\n <a href=\"\" data-tip={a.tooltip} key={'custom_' + a.name} onClick={this.handleAction.bind(this, a.onClick, id)}>\n {a.icon}\n </a>\n )}\n </td>\n );\n }\n};\n","import React from 'react';\nimport TableHeading from './TableHeading';\nimport TableCell from './TableCell';\nimport TableRow from './TableRow';\nimport ActionsTableCell from './ActionsTableCell';\nimport { Tooltip } from 'react-tooltip';\n\nimport './table.less';\n\nconst defaults = {\n sortFunc: (a,b) => (a < b ? -1 : (a > b ? 1 : 0)),\n sortable: false,\n sortCol: 0,\n sortDir: 1,\n colWidth: ''\n}\n\nconst createRow = (row, columns, actions) => {\n const cells = columns.map((col,i) => {\n const colStyles = col?.styles || {};\n\n if(col.hasOwnProperty(\"render\"))\n return (\n <TableCell key={'cell_'+i} style={colStyles} >\n {col.render(row, row[col.columnKey])}\n </TableCell>\n );\n\n return (\n <TableCell\n key={'cell_'+i}\n title={col.hasOwnProperty(\"title\") ? row[col.columnKey] : null}\n style={colStyles}\n >\n {row[col.columnKey]}\n </TableCell>\n );\n });\n\n if (actions) {\n cells.push(<ActionsTableCell key='actions_cell' id={row['id']} actions={actions} />);\n }\n\n return cells;\n};\n\nconst getSortDir = (columnKey, columnIndex, sortCol, sortDir) => {\n if(columnKey && (columnKey === sortCol)) {\n return sortDir;\n }\n if(sortCol === columnIndex) {\n return sortDir;\n }\n return null\n};\n\nconst Table = (props) => {\n let {options, columns} = props;\n let tableClass = options.hasOwnProperty('className') ? options.className : '';\n tableClass += options.actions?.edit ? ' table-hover' : '';\n\n return (\n <div>\n <table className={\"table table-striped dataTable \" + tableClass}>\n <thead>\n <tr>\n {columns.map((col,i) => {\n\n let sortCol = (typeof options.sortCol != 'undefined') ? options.sortCol : defaults.sortCol;\n let sortDir = (typeof options.sortDir != 'undefined') ? options.sortDir : defaults.sortDir;\n let sortFunc = (typeof options.sortFunc != 'undefined') ? options.sortFunc : defaults.sortFunc;\n let sortable = (typeof col.sortable != 'undefined') ? col.sortable : defaults.sortable;\n let colWidth = (typeof col.width != 'undefined') ? col.width : defaults.colWidth;\n\n return (\n <TableHeading\n onSort={props.onSort}\n sortDir={getSortDir(col.columnKey, i, sortCol, sortDir)}\n sortable={sortable}\n sortFunc={sortFunc}\n columnIndex={i}\n columnKey={col.columnKey}\n width={colWidth}\n key={'heading_'+i}\n >\n {col.value}\n </TableHeading>\n );\n })}\n {options.actions &&\n <TableHeading key='actions_heading' >\n {options.actionsHeader || ' '}\n </TableHeading>\n }\n </tr>\n </thead>\n <tbody>\n {columns.length > 0 && props.data.map((row,i) => {\n if(Array.isArray(row) && row.length !== columns.length) {\n console.warn(`Data at row ${i} is ${row.length}. It should be ${columns.length}.`);\n return <tr key={'row_'+i} />\n }\n\n return (\n <TableRow even={i%2 === 0} key={'row_'+i} id={row['id']} actions={options.actions}>\n {createRow(row, columns, options.actions)}\n </TableRow>\n );\n })}\n </tbody>\n </table>\n <Tooltip delayShow={10} />\n </div>\n );\n};\n\nexport default Table;\n","import React from 'react';\nimport RawHTML from '../raw-html';\n\nconst TableCell = (props) => {\n let {children} = props;\n\tlet value = '';\n\tif(children) {\n\t if (React.isValidElement(children)) {\n\t value = children;\n } else {\n\t value = <RawHTML>{children.toString()}</RawHTML>\n }\n }\n\n\treturn (\n\t\t<td {...props}>\n {value}\n\t\t</td>\n\t);\n};\n\nexport default TableCell;\n","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@babel/runtime/helpers/objectWithoutProperties\");","module.exports = require(\"i18n-react/dist/i18n-react\");","module.exports = require(\"prop-types\");","module.exports = require(\"react\");","module.exports = require(\"react-select/lib/Async\");","module.exports = require(\"react-select/lib/AsyncCreatable\");","module.exports = require(\"react-tooltip\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * Copyright 2018 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n **/\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport './simple-link-list.less';\nimport AsyncSelect from 'react-select/lib/Async';\nimport Table from \"../table/Table\";\nimport T from 'i18n-react/dist/i18n-react';\nimport AsyncCreatableSelect from \"react-select/lib/AsyncCreatable\";\n\n\nclass SimpleLinkList extends React.Component {\n\n constructor(props) {\n super(props);\n\n this.state = {\n value: ''\n };\n\n this.handleChange = this.handleChange.bind(this);\n this.getOptions = this.getOptions.bind(this);\n this.handleLink = this.handleLink.bind(this);\n this.filterOption = this.filterOption.bind(this);\n this.handleNew = this.handleNew.bind(this);\n this.getNewOptionData = this.getNewOptionData.bind(this);\n this.isValidNewOption = this.isValidNewOption.bind(this);\n }\n\n getOptions(input, callback) {\n let {options} = this.props;\n let defaultOptions = options.hasOwnProperty('defaultOptions') ? options.defaultOptions : undefined;\n\n if (!input && !defaultOptions) {\n return Promise.resolve({ options: [] });\n }\n\n this.props.options.actions.search(input, callback);\n }\n\n handleChange(value) {\n this.setState({value});\n }\n\n handleLink(ev) {\n ev.preventDefault();\n this.props.options.actions.add.onClick(this.state.value);\n this.setState({value: ''});\n }\n\n getNewOptionData(inputValue, optionLabel) {\n return {tag: optionLabel, id:inputValue};\n }\n\n isValidNewOption(inputValue, selectValue, selectOptions) {\n let {options} = this.props;\n let labelKey = options.hasOwnProperty('labelKey') ? options.labelKey : 'label';\n let optionFound = selectOptions.find(op => op[labelKey] == inputValue);\n return (!inputValue || optionFound) ? false : true;\n }\n\n handleNew(value) {\n this.props.options.onCreateTag(value, this.handleChange);\n }\n\n filterOption(candidate, inputValue) {\n let {options, values} = this.props;\n let allowDuplicates = this.props.hasOwnProperty('allowDuplicates');\n let labelKey = options.hasOwnProperty('labelKey') ? options.labelKey : 'label';\n\n if (allowDuplicates) return true;\n\n let optionFound = values.find(val => val[labelKey] === candidate.label);\n\n return !optionFound;\n }\n\n\n render() {\n\n let {options, values, columns} = this.props;\n let disabledAdd = (!this.state.value);\n\n let title = options.hasOwnProperty('title') ? options.title : 'Table';\n let valueKey = options.hasOwnProperty('valueKey') ? options.valueKey : 'value';\n let labelKey = options.hasOwnProperty('labelKey') ? options.labelKey : 'label';\n let allowCreate = options.hasOwnProperty('onCreateTag');\n let defaultOptions = options.hasOwnProperty('defaultOptions') ? options.defaultOptions : undefined;\n\n let tableOptions = {\n className: 'dataTable',\n actions: {\n delete: options.actions.delete\n }\n };\n\n if (options.hasOwnProperty('className')) {\n tableOptions.className = options.className;\n }\n\n if (options.actions.hasOwnProperty('edit')) {\n tableOptions.actions.edit = options.actions.edit;\n }\n\n if (options.actions.hasOwnProperty('custom')) {\n tableOptions.actions.custom = options.actions.custom;\n }\n\n if (options.hasOwnProperty('sortCol')) {\n values = values.sort(\n (a, b) => {\n const itemA = isNaN(a[options.sortCol]) ? a[options.sortCol].toLowerCase() : a[options.sortCol];\n const itemB = isNaN(b[options.sortCol]) ? b[options.sortCol].toLowerCase() : b[options.sortCol];\n return (itemA > itemB ? 1 : (itemA < itemB ? -1 : 0))\n }\n );\n }\n\n\n let AsyncComponent = null;\n\n if (allowCreate) {\n AsyncComponent =\n <AsyncCreatableSelect\n className=\"link-select btn-group text-left\"\n value={this.state.value}\n key={JSON.stringify(values)}\n getOptionValue={option => option[valueKey]}\n getOptionLabel={option => option[labelKey]}\n onChange={this.handleChange}\n loadOptions={this.getOptions}\n filterOption={this.filterOption}\n onCreateOption={this.handleNew}\n getNewOptionData={this.getNewOptionData}\n isValidNewOption={this.isValidNewOption}\n />;\n } else {\n AsyncComponent =\n <AsyncSelect\n className=\"link-select btn-group text-left\"\n value={this.state.value}\n key={JSON.stringify(values)}\n getOptionValue={option => option[valueKey]}\n getOptionLabel={option => option[labelKey]}\n onChange={this.handleChange}\n loadOptions={this.getOptions}\n filterOption={this.filterOption}\n defaultOptions={defaultOptions}\n />;\n }\n\n return (\n <div className=\"row simple-link-list\">\n <div className=\"col-md-4 simple-link-list-title\">\n <h4>{title}</h4>\n </div>\n <div className=\"col-md simple-link-list-buttons\">\n {AsyncComponent}\n <button type=\"button\" className=\"btn btn-default add-button\" onClick={this.handleLink} disabled={disabledAdd}>\n {T.translate(\"general.add\")}\n </button>\n </div>\n <div className=\"col-md-12\">\n <Table\n className=\"dataTable\"\n options={tableOptions}\n data={values}\n columns={columns}\n />\n </div>\n </div>\n );\n\n }\n}\n\nSimpleLinkList.propTypes = {\n values: PropTypes.array.isRequired,\n options: PropTypes.shape({\n title: PropTypes.string,\n sortCol: PropTypes.string,\n valueKey: PropTypes.string.isRequired,\n labelKey: PropTypes.string.isRequired,\n className: PropTypes.string,\n actions: PropTypes.shape({\n search: PropTypes.func.isRequired,\n delete: PropTypes.shape({onClick:PropTypes.func.isRequired}),\n add: PropTypes.shape({onClick:PropTypes.func.isRequired}),\n edit: PropTypes.shape({onClick:PropTypes.func.isRequired}),\n custom: PropTypes.array,\n }).isRequired\n }).isRequired,\n columns: PropTypes.array.isRequired\n}\n\nexport default SimpleLinkList;\n"],"names":["root","factory","exports","module","define","amd","this","children","replaceNewLine","className","rest","dangerouslySetInnerHTML","__html","replace","TableHeading","React","constructor","props","super","handleSort","bind","getSortClass","sortable","sortDir","e","preventDefault","hasOwnProperty","onSort","columnIndex","columnKey","sortFunc","render","onClick","width","propTypes","PropTypes","TableRow","handleEdit","shouldDisplayAction","action","id","display","ev","stopPropagation","actions","edit","even","rowClass","role","ActionsTableCell","handleAction","key","delete","href","custom","map","a","tooltip","name","icon","defaults","b","sortCol","colWidth","getSortDir","options","columns","tableClass","col","i","value","actionsHeader","length","data","row","Array","isArray","console","warn","cells","colStyles","styles","TableCell","style","title","push","createRow","Tooltip","delayShow","toString","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","n","getter","__esModule","d","definition","o","Object","defineProperty","enumerable","get","obj","prop","prototype","call","r","Symbol","toStringTag","SimpleLinkList","state","handleChange","getOptions","handleLink","filterOption","handleNew","getNewOptionData","isValidNewOption","input","callback","defaultOptions","Promise","resolve","search","setState","add","inputValue","optionLabel","tag","selectValue","selectOptions","labelKey","optionFound","find","op","onCreateTag","candidate","values","allowDuplicates","val","label","disabledAdd","valueKey","allowCreate","tableOptions","sort","itemA","isNaN","toLowerCase","itemB","AsyncComponent","JSON","stringify","getOptionValue","option","getOptionLabel","onChange","loadOptions","onCreateOption","type","disabled","T","isRequired"],"sourceRoot":""}
1
+ {"version":3,"file":"components/simple-link-list.js","mappings":"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","sources":["webpack://openstack-uicore-foundation/webpack/universalModuleDefinition","webpack://openstack-uicore-foundation/./src/components/raw-html/index.js","webpack://openstack-uicore-foundation/./src/components/table/TableHeading.js","webpack://openstack-uicore-foundation/./src/components/table/TableRow.js","webpack://openstack-uicore-foundation/./src/components/table/ActionsTableCell.js","webpack://openstack-uicore-foundation/./src/components/table/Table.js","webpack://openstack-uicore-foundation/./src/components/table/TableCell.js","webpack://openstack-uicore-foundation/external commonjs \"@babel/runtime/helpers/extends\"","webpack://openstack-uicore-foundation/external commonjs \"@babel/runtime/helpers/objectWithoutProperties\"","webpack://openstack-uicore-foundation/external commonjs \"i18n-react/dist/i18n-react\"","webpack://openstack-uicore-foundation/external commonjs \"prop-types\"","webpack://openstack-uicore-foundation/external commonjs \"react\"","webpack://openstack-uicore-foundation/external commonjs \"react-select/lib/Async\"","webpack://openstack-uicore-foundation/external commonjs \"react-select/lib/AsyncCreatable\"","webpack://openstack-uicore-foundation/external commonjs \"react-tooltip\"","webpack://openstack-uicore-foundation/webpack/bootstrap","webpack://openstack-uicore-foundation/webpack/runtime/compat get default export","webpack://openstack-uicore-foundation/webpack/runtime/define property getters","webpack://openstack-uicore-foundation/webpack/runtime/hasOwnProperty shorthand","webpack://openstack-uicore-foundation/webpack/runtime/make namespace object","webpack://openstack-uicore-foundation/./src/components/simple-link-list/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"openstack-uicore-foundation\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"openstack-uicore-foundation\"] = factory();\n\telse\n\t\troot[\"openstack-uicore-foundation\"] = factory();\n})(this, () => {\nreturn ","import React from 'react';\n\nconst RawHTML = ({children, replaceNewLine = false, className = \"\", ...rest}) =>\n <span className={className}\n dangerouslySetInnerHTML={{ __html: replaceNewLine ? children?.replace(/\\n/g, '<br />') : children}} {...rest}/>\n\nexport default RawHTML;","import React from 'react';\nimport PropTypes from 'prop-types';\n\nclass TableHeading extends React.Component {\n\n\tconstructor (props) {\n\t\tsuper(props);\n\t\tthis.handleSort = this.handleSort.bind(this);\n\t}\n\n\tgetSortClass() {\n\n\t\tif (!this.props.sortable) return null;\n\n\t\tswitch(this.props.sortDir) {\n\t\t\tcase 1:\n\t\t\t\treturn 'sorting_asc';\n\t\t\tcase -1:\n\t\t\t\treturn 'sorting_desc';\n\t\t\tdefault:\n\t\t\t\treturn this.props.sortable ? 'sorting' : null\n\t\t}\n\t}\n\n\thandleSort(e) {\n\t\te.preventDefault();\n\t\tif(!this.props.hasOwnProperty('onSort') || !this.props.sortable) return;\n\n\t\tthis.props.onSort(\n\t\t\tthis.props.columnIndex,\n\t\t\tthis.props.columnKey,\n\t\t\tthis.props.sortDir ? this.props.sortDir*-1 : 1,\n\t\t\tthis.props.sortFunc\n\t\t);\n\t}\n\n\trender () {\n\t\treturn (\n\t\t\t<th onClick={this.handleSort}\n\t\t\t\tclassName={this.getSortClass()}\n\t\t\t\twidth={this.props.width}\n\t\t\t\t>\n\t\t\t\t{this.props.children}\n\t\t\t</th>\n\t\t);\t\n\t}\n\t\n}\n\nTableHeading.propTypes = {\n\tonSort: PropTypes.func,\n\tsortDir: PropTypes.number,\n\tcolumnIndex: PropTypes.number,\n\tcolumnKey: PropTypes.any,\n\tsortable: PropTypes.bool,\n\tsortFunc: PropTypes.func\n};\n\nexport default TableHeading;","import React from 'react';\n\nexport default class TableRow extends React.Component {\n\n constructor(props) {\n super(props);\n\n this.handleEdit = this.handleEdit.bind(this);\n }\n\n shouldDisplayAction(action) {\n let {id} = this.props;\n\n if (!action.hasOwnProperty('display')) {\n return true;\n } else {\n return action.display(id);\n }\n }\n\n handleEdit(id, ev) {\n ev.stopPropagation();\n ev.preventDefault();\n\n this.props.actions.edit.onClick(id);\n }\n\n render() {\n let {even, actions, id, children} = this.props;\n let canEdit = (actions?.edit && this.shouldDisplayAction(actions.edit));\n let rowClass = even ? 'even' : 'odd';\n\n if (canEdit) {\n return (\n <tr role=\"row\" className={rowClass + \" can-edit\"} onClick={this.handleEdit.bind(this, id)}>\n {children}\n </tr>\n );\n } else {\n return (\n <tr role=\"row\" className={rowClass}>\n {children}\n </tr>\n );\n }\n }\n};\n\n","import React from 'react';\n\nexport default class ActionsTableCell extends React.Component {\n\n constructor(props) {\n super(props);\n\n this.handleAction = this.handleAction.bind(this);\n this.shouldDisplayAction = this.shouldDisplayAction.bind(this);\n\n }\n\n shouldDisplayAction(action) {\n let {id} = this.props;\n\n if (!action.hasOwnProperty('display')) {\n return true;\n } else {\n return action.display(id);\n }\n }\n\n handleAction(action, id, ev) {\n ev.stopPropagation();\n ev.preventDefault();\n\n action(id);\n }\n\n render() {\n let {actions, id} = this.props;\n return (\n <td className=\"actions\" key=\"actions\">\n {actions.hasOwnProperty('delete') && this.shouldDisplayAction(actions.delete) &&\n <a href=\"\" data-tip=\"delete\" onClick={this.handleAction.bind(this, actions.delete.onClick, id)} >\n <i className=\"fa fa-trash-o delete-icon\"></i>\n </a>\n }\n {actions.hasOwnProperty('custom') && actions.custom.map(a =>\n this.shouldDisplayAction(a) &&\n <a href=\"\" data-tip={a.tooltip} key={'custom_' + a.name} onClick={this.handleAction.bind(this, a.onClick, id)}>\n {a.icon}\n </a>\n )}\n </td>\n );\n }\n};\n","import React from 'react';\nimport TableHeading from './TableHeading';\nimport TableCell from './TableCell';\nimport TableRow from './TableRow';\nimport ActionsTableCell from './ActionsTableCell';\nimport { Tooltip } from 'react-tooltip';\n\nimport './table.less';\n\nconst defaults = {\n sortFunc: (a,b) => (a < b ? -1 : (a > b ? 1 : 0)),\n sortable: false,\n sortCol: 0,\n sortDir: 1,\n colWidth: ''\n}\n\nconst createRow = (row, columns, actions) => {\n const cells = columns.map((col,i) => {\n const colStyles = col?.styles || {};\n\n if(col.hasOwnProperty(\"render\"))\n return (\n <TableCell key={'cell_'+i} style={colStyles} >\n {col.render(row, row[col.columnKey])}\n </TableCell>\n );\n\n return (\n <TableCell\n key={'cell_'+i}\n title={col.hasOwnProperty(\"title\") ? row[col.columnKey] : null}\n style={colStyles}\n >\n {row[col.columnKey]}\n </TableCell>\n );\n });\n\n if (actions) {\n cells.push(<ActionsTableCell key='actions_cell' id={row['id']} actions={actions} />);\n }\n\n return cells;\n};\n\nconst getSortDir = (columnKey, columnIndex, sortCol, sortDir) => {\n if(columnKey && (columnKey === sortCol)) {\n return sortDir;\n }\n if(sortCol === columnIndex) {\n return sortDir;\n }\n return null\n};\n\nconst Table = (props) => {\n let {options, columns} = props;\n let tableClass = options.hasOwnProperty('className') ? options.className : '';\n tableClass += options.actions?.edit ? ' table-hover' : '';\n\n return (\n <div>\n <table className={\"table table-striped dataTable \" + tableClass}>\n <thead>\n <tr>\n {columns.map((col,i) => {\n\n let sortCol = (typeof options.sortCol != 'undefined') ? options.sortCol : defaults.sortCol;\n let sortDir = (typeof options.sortDir != 'undefined') ? options.sortDir : defaults.sortDir;\n let sortFunc = (typeof options.sortFunc != 'undefined') ? options.sortFunc : defaults.sortFunc;\n let sortable = (typeof col.sortable != 'undefined') ? col.sortable : defaults.sortable;\n let colWidth = (typeof col.width != 'undefined') ? col.width : defaults.colWidth;\n\n return (\n <TableHeading\n onSort={props.onSort}\n sortDir={getSortDir(col.columnKey, i, sortCol, sortDir)}\n sortable={sortable}\n sortFunc={sortFunc}\n columnIndex={i}\n columnKey={col.columnKey}\n width={colWidth}\n key={'heading_'+i}\n >\n {col.value}\n </TableHeading>\n );\n })}\n {options.actions &&\n <TableHeading key='actions_heading' >\n {options.actionsHeader || ' '}\n </TableHeading>\n }\n </tr>\n </thead>\n <tbody>\n {columns.length > 0 && props.data.map((row,i) => {\n if(Array.isArray(row) && row.length !== columns.length) {\n console.warn(`Data at row ${i} is ${row.length}. It should be ${columns.length}.`);\n return <tr key={'row_'+i} />\n }\n\n return (\n <TableRow even={i%2 === 0} key={'row_'+i} id={row['id']} actions={options.actions}>\n {createRow(row, columns, options.actions)}\n </TableRow>\n );\n })}\n </tbody>\n </table>\n <Tooltip delayShow={10} />\n </div>\n );\n};\n\nexport default Table;\n","import React from 'react';\nimport RawHTML from '../raw-html';\n\nconst TableCell = (props) => {\n let {children} = props;\n\tlet value = '';\n\tif(children) {\n\t if (React.isValidElement(children)) {\n\t value = children;\n } else {\n\t value = <RawHTML>{children.toString()}</RawHTML>\n }\n }\n\n\treturn (\n\t\t<td {...props}>\n {value}\n\t\t</td>\n\t);\n};\n\nexport default TableCell;\n","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@babel/runtime/helpers/objectWithoutProperties\");","module.exports = require(\"i18n-react/dist/i18n-react\");","module.exports = require(\"prop-types\");","module.exports = require(\"react\");","module.exports = require(\"react-select/lib/Async\");","module.exports = require(\"react-select/lib/AsyncCreatable\");","module.exports = require(\"react-tooltip\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * Copyright 2018 OpenStack Foundation\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n **/\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport './simple-link-list.less';\nimport AsyncSelect from 'react-select/lib/Async';\nimport Table from \"../table/Table\";\nimport T from 'i18n-react/dist/i18n-react';\nimport AsyncCreatableSelect from \"react-select/lib/AsyncCreatable\";\n\n\nclass SimpleLinkList extends React.Component {\n\n constructor(props) {\n super(props);\n\n this.state = {\n value: ''\n };\n\n this.handleChange = this.handleChange.bind(this);\n this.getOptions = this.getOptions.bind(this);\n this.handleLink = this.handleLink.bind(this);\n this.filterOption = this.filterOption.bind(this);\n this.handleNew = this.handleNew.bind(this);\n this.getNewOptionData = this.getNewOptionData.bind(this);\n this.isValidNewOption = this.isValidNewOption.bind(this);\n }\n\n getOptions(input, callback) {\n let {options} = this.props;\n let defaultOptions = options.hasOwnProperty('defaultOptions') ? options.defaultOptions : undefined;\n\n if (!input && !defaultOptions) {\n return Promise.resolve({ options: [] });\n }\n\n this.props.options.actions.search(input, callback);\n }\n\n handleChange(value) {\n this.setState({value});\n }\n\n handleLink(ev) {\n ev.preventDefault();\n this.props.options.actions.add.onClick(this.state.value);\n this.setState({value: ''});\n }\n\n getNewOptionData(inputValue, optionLabel) {\n return {tag: optionLabel, id:inputValue};\n }\n\n isValidNewOption(inputValue, selectValue, selectOptions) {\n let {options} = this.props;\n let labelKey = options.hasOwnProperty('labelKey') ? options.labelKey : 'label';\n let optionFound = selectOptions.find(op => op[labelKey] == inputValue);\n return (!inputValue || optionFound) ? false : true;\n }\n\n handleNew(value) {\n this.props.options.onCreateTag(value, this.handleChange);\n }\n\n filterOption(candidate, inputValue) {\n let {options, values} = this.props;\n let allowDuplicates = this.props.hasOwnProperty('allowDuplicates');\n let labelKey = options.hasOwnProperty('labelKey') ? options.labelKey : 'label';\n\n if (allowDuplicates) return true;\n\n let optionFound = values.find(val => val[labelKey] === candidate.label);\n\n return !optionFound;\n }\n\n\n render() {\n\n let {options, values, columns} = this.props;\n let disabledAdd = (!this.state.value);\n\n let title = options.hasOwnProperty('title') ? options.title : 'Table';\n let valueKey = options.hasOwnProperty('valueKey') ? options.valueKey : 'value';\n let labelKey = options.hasOwnProperty('labelKey') ? options.labelKey : 'label';\n let allowCreate = options.hasOwnProperty('onCreateTag');\n let defaultOptions = options.hasOwnProperty('defaultOptions') ? options.defaultOptions : undefined;\n\n let tableOptions = {\n className: 'dataTable',\n actions: {\n delete: options.actions.delete\n }\n };\n\n if (options.hasOwnProperty('className')) {\n tableOptions.className = options.className;\n }\n\n if (options.actions.hasOwnProperty('edit')) {\n tableOptions.actions.edit = options.actions.edit;\n }\n\n if (options.actions.hasOwnProperty('custom')) {\n tableOptions.actions.custom = options.actions.custom;\n }\n\n if (options.hasOwnProperty('sortCol')) {\n values = values.sort(\n (a, b) => {\n const itemA = isNaN(a[options.sortCol]) ? a[options.sortCol].toLowerCase() : a[options.sortCol];\n const itemB = isNaN(b[options.sortCol]) ? b[options.sortCol].toLowerCase() : b[options.sortCol];\n return (itemA > itemB ? 1 : (itemA < itemB ? -1 : 0))\n }\n );\n }\n\n\n let AsyncComponent = null;\n\n if (allowCreate) {\n AsyncComponent =\n <AsyncCreatableSelect\n className=\"link-select btn-group text-left\"\n value={this.state.value}\n key={JSON.stringify(values)}\n getOptionValue={option => option[valueKey]}\n getOptionLabel={option => option[labelKey]}\n onChange={this.handleChange}\n loadOptions={this.getOptions}\n filterOption={this.filterOption}\n onCreateOption={this.handleNew}\n getNewOptionData={this.getNewOptionData}\n isValidNewOption={this.isValidNewOption}\n />;\n } else {\n AsyncComponent =\n <AsyncSelect\n className=\"link-select btn-group text-left\"\n value={this.state.value}\n key={JSON.stringify(values)}\n getOptionValue={option => option[valueKey]}\n getOptionLabel={option => option[labelKey]}\n onChange={this.handleChange}\n loadOptions={this.getOptions}\n filterOption={this.filterOption}\n defaultOptions={defaultOptions}\n />;\n }\n\n return (\n <div className=\"row simple-link-list\">\n <div className=\"col-md-4 simple-link-list-title\">\n <h4>{title}</h4>\n </div>\n <div className=\"col-md simple-link-list-buttons\">\n {AsyncComponent}\n <button type=\"button\" className=\"btn btn-default add-button\" onClick={this.handleLink} disabled={disabledAdd}>\n {T.translate(\"general.add\")}\n </button>\n </div>\n <div className=\"col-md-12\">\n <Table\n className=\"dataTable\"\n options={tableOptions}\n data={values}\n columns={columns}\n />\n </div>\n </div>\n );\n\n }\n}\n\nSimpleLinkList.propTypes = {\n values: PropTypes.array.isRequired,\n options: PropTypes.shape({\n title: PropTypes.string,\n sortCol: PropTypes.string,\n valueKey: PropTypes.string.isRequired,\n labelKey: PropTypes.string.isRequired,\n className: PropTypes.string,\n actions: PropTypes.shape({\n search: PropTypes.func.isRequired,\n delete: PropTypes.shape({onClick:PropTypes.func.isRequired}),\n add: PropTypes.shape({onClick:PropTypes.func.isRequired}),\n edit: PropTypes.shape({onClick:PropTypes.func.isRequired}),\n custom: PropTypes.array,\n }).isRequired\n }).isRequired,\n columns: PropTypes.array.isRequired\n}\n\nexport default SimpleLinkList;\n"],"names":["root","factory","exports","module","define","amd","this","_ref","children","replaceNewLine","className","rest","_objectWithoutProperties","_excluded","React","_extends","dangerouslySetInnerHTML","__html","replace","TableHeading","constructor","props","super","handleSort","bind","getSortClass","sortable","sortDir","e","preventDefault","hasOwnProperty","onSort","columnIndex","columnKey","sortFunc","render","onClick","width","propTypes","PropTypes","TableRow","handleEdit","shouldDisplayAction","action","id","display","ev","stopPropagation","actions","edit","even","rowClass","role","ActionsTableCell","handleAction","key","delete","href","custom","map","a","tooltip","name","icon","defaults","b","sortCol","colWidth","getSortDir","_options$actions","options","columns","tableClass","col","i","value","actionsHeader","length","data","row","Array","isArray","console","warn","createRow","cells","colStyles","styles","TableCell","style","title","push","Tooltip","delayShow","RawHTML","toString","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","n","getter","__esModule","d","definition","o","Object","defineProperty","enumerable","get","obj","prop","prototype","call","r","Symbol","toStringTag","SimpleLinkList","state","handleChange","getOptions","handleLink","filterOption","handleNew","getNewOptionData","isValidNewOption","input","callback","defaultOptions","Promise","resolve","search","setState","add","inputValue","optionLabel","tag","selectValue","selectOptions","labelKey","optionFound","find","op","onCreateTag","candidate","values","allowDuplicates","val","label","disabledAdd","valueKey","allowCreate","tableOptions","sort","itemA","isNaN","toLowerCase","itemB","AsyncComponent","AsyncCreatableSelect","JSON","stringify","getOptionValue","option","getOptionLabel","onChange","loadOptions","onCreateOption","AsyncSelect","type","disabled","T","Table","isRequired"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- !function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],r):"object"==typeof exports?exports["openstack-uicore-foundation"]=r():e["openstack-uicore-foundation"]=r()}(this,(()=>(()=>{"use strict";var e={5097:(e,r,a)=>{a(1116),a(6842),a(9087),a(9558),a(2183)},3195:(e,r,a)=>{a.d(r,{AUTH_ERROR_ACCESS_TOKEN_EXPIRED:()=>n,AUTH_ERROR_LOCK_ACQUIRE_ERROR:()=>s,AUTH_ERROR_MISSING_AUTH_INFO:()=>t,AUTH_ERROR_MISSING_REFRESH_TOKEN:()=>o,AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR:()=>i,AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR:()=>d});const t="AUTH_ERROR_MISSING_AUTH_INFO",o="AUTH_ERROR_MISSING_REFRESH_TOKEN",n="AUTH_ERROR_ACCESS_TOKEN_EXPIRED",s="AUTH_ERROR_LOCK_ACQUIRE_ERROR",d="AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR",i="AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR"},2183:(e,r,a)=>{a.d(r,{getAccessToken:()=>m});var t=a(9558),o=a(5812),n=a.n(o);a(806);const s=require("browser-tabs-lock");var d=a.n(s);const i=require("js-cookie");var u=a.n(i),c=(a(8041),a(9891),a(5097),a(8853),a(3195));const Lock=new(d()),GET_TOKEN_SILENTLY_LOCK_KEY="openstackuicore.lock.getTokenSilently",l="code",p="authInfo",y="idToken",_=async(e,r)=>{if(e===l&&O()){if(!r)throw h(),Error(c.AUTH_ERROR_MISSING_REFRESH_TOKEN);let e=await(async(e,r=5,a=1e3)=>{for(let t=0;t<r;t++)try{return await e()}catch(e){if(!e.message||!e.message.startsWith(c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR)||t===r-1)throw e;const o=a*Math.pow(2,t);console.log(`retryWithBackoff retry ${t+1}/${r} in ${o}ms`),await new Promise((e=>setTimeout(e,o)))}})((()=>f(r))),{access_token:a,expires_in:t,refresh_token:o,id_token:n}=e;return void 0===o&&(o=null),g(a,t,o,n),a}throw h(),Error(c.AUTH_ERROR_ACCESS_TOKEN_EXPIRED)},R=async()=>{console.log("openstack-uicore-foundation::Security::methods::_getAccessToken");let e=E();if(!e)throw console.log("openstack-uicore-foundation::Security::methods::_getAccessToken AUTH_ERROR_MISSING_AUTH_INFO"),Error(c.AUTH_ERROR_MISSING_AUTH_INFO);let{accessToken:r,expiresIn:a,accessTokenUpdatedAt:t,refreshToken:o}=e,s=Q();const d=n()().unix();let i=d-t;return a-=60,console.log(`openstack-uicore-foundation::Security::methods::_getAccessToken now ${d} accessTokenUpdatedAt ${t} expiresIn ${a} timeElapsedSecs ${i}`),(i>=a||null==r)&&(console.log("openstack-uicore-foundation::Security::methods::_getAccessToken access token expired, refreshing it ..."),r=await _(s,o)),r},m=async()=>{if("undefined"!=typeof navigator&&navigator.locks)return await navigator.locks.request(GET_TOKEN_SILENTLY_LOCK_KEY,(async e=>(console.log("openstack-uicore-foundation::Security::methods::getAccessToken web lock api",e),await R())));if(!await(0,t.retryPromise)((()=>Lock.acquireLock(GET_TOKEN_SILENTLY_LOCK_KEY,6e3)),10))throw Error(c.AUTH_ERROR_LOCK_ACQUIRE_ERROR);try{return await R()}finally{await Lock.releaseLock(GET_TOKEN_SILENTLY_LOCK_KEY)}},f=async e=>{let r=T(),a=w();const o={grant_type:"refresh_token",client_id:encodeURI(a),refresh_token:e},n=new AbortController,s=setTimeout((()=>n.abort()),1e4);let d,i;try{d=await fetch(`${r}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(o),signal:n.signal})}catch(e){throw console.log("refreshAccessToken network error:",e.message),Error(`${c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR}: ${e.message}`)}finally{clearTimeout(s)}if(!d.ok){if(console.log(`refreshAccessToken server error: ${d.status} - ${d.statusText}`),d.status>=500||408===d.status||429===d.status)throw Error(`${c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR}: ${d.status} - ${d.statusText}`);throw(0,t.setSessionClearingState)(!0),Error(`${c.AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR}: ${d.status} - ${d.statusText}`)}try{i=await d.json()}catch(e){throw Error(`${c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR}: invalid JSON response from IDP`)}let{access_token:u,refresh_token:l,expires_in:p,id_token:y}=i;if(!u)throw(0,t.setSessionClearingState)(!0),Error(`${c.AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR}: missing access_token in refresh response`);return{access_token:u,refresh_token:l,expires_in:p,id_token:y}},g=(e,r,a=null,o=null)=>{let n=E(),s={accessToken:e,expiresIn:r,accessTokenUpdatedAt:Math.floor(Date.now()/1e3)};null==a&&n&&(a=n.refreshToken),null==o&&n&&(o=n.idToken),a&&(s.refreshToken=a),o?(s[y]=o,u().set(y,o,{secure:!0,sameSite:"Lax"})):u().remove(y),(0,t.putOnLocalStorage)(p,JSON.stringify(s))},E=()=>{try{let e=(0,t.getFromLocalStorage)(p,!1);return e?JSON.parse(e):null}catch(e){return null}},h=()=>{"undefined"!=typeof window&&((0,t.removeFromLocalStorage)(p),u().remove(y))},w=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,Q=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",O=()=>"undefined"==typeof window||new Boolean(window.OAUTH2_USE_REFRESH_TOKEN||!0),T=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null},9087:(e,r,a)=>{a.d(r,{escapeFilterValue:()=>p,fetchErrorHandler:()=>c,fetchResponseHandler:()=>l});a(2462),a(1116),a(806);var t=a(8041),o=a.n(t),n=a(9236),s=a.n(n),d=a(6842),i=a.n(d);a(9558),a(5097),a(2183),a(3209);o().escapeQuerySpace=!1;const u=e=>r=>({type:e,payload:r}),c=(u("RESET_LOADING"),u("START_LOADING"),u("STOP_LOADING"),e=>{let r=e.status,a=e.statusText;switch(r){case 403:s().fire("ERROR",i().translate("errors.user_not_authz"),"warning");break;case 401:s().fire("ERROR",i().translate("errors.session_expired"),"error");break;case 412:s().fire("ERROR",a,"warning");case 500:s().fire("ERROR",i().translate("errors.server_error"),"error")}}),l=e=>{if(e.ok)return e.json();throw e},p=e=>e=(e=(e=(e=(e=String(e)).replace(/\\/g,"\\\\")).replace(/,/g,"\\,")).replace(/;/g,"\\;")).replace(/\+/g,"%2B")},3209:(e,r,a)=>{a.d(r,{Vg:()=>n,WU:()=>o,wU:()=>t});const t=500,o=10,n=100},8853:()=>{require("spark-md5"),require("crypto-js/sha256"),require("crypto-js/enc-base64url"),require("crypto-js/enc-hex"),"undefined"!=typeof window&&(window.crypto||window.msCrypto)},9558:(e,r,a)=>{a.d(r,{buildAPIBaseUrl:()=>t,getFromLocalStorage:()=>n,putOnLocalStorage:()=>o,removeFromLocalStorage:()=>s,retryPromise:()=>i,setSessionClearingState:()=>d});a(5812),a(8041);const t=e=>"undefined"!=typeof window?`${window.API_BASE_URL}${e}`:null``,o=(e,r)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,r)},n=(e,r)=>{if("undefined"!=typeof window){let a=window.localStorage.getItem(e);return r&&(console.log(`getFromLocalStorage removing key ${e}`),s(e)),a}return null},s=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},d=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},i=async(e,r=3)=>{for(let a=0;a<r;a++)if(await e())return!0;return!1}},3582:(e,r,a)=>{a.d(r,{querySponsoredProjects:()=>_});var t=a(9087),o=a(2183),n=a(9558),s=a(7825),d=a.n(s),i=(a(5812),a(8041)),u=a.n(i),c=a(3209);u().escapeQuerySpace=!1;const l=async(e,r,a={})=>fetch((0,n.buildAPIBaseUrl)(e.toString()),a).then(t.fetchResponseHandler).then((e=>{"function"==typeof r&&r(e.data)})).catch((e=>(404===e.status&&r([]),e))).catch(t.fetchErrorHandler),p=async(e,r={})=>{let a;try{a=await(0,o.getAccessToken)()}catch(e){return Promise.reject(e)}return e.addQuery("access_token",a),fetch((0,n.buildAPIBaseUrl)(e.toString()),r).then(t.fetchResponseHandler).catch(t.fetchErrorHandler)},y=async(e,r,a={})=>{let t;try{t=await(0,o.getAccessToken)()}catch(e){return"function"==typeof r&&r(e),Promise.reject()}return e.addQuery("access_token",t),l(e,r,a)};d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/members");o.addQuery("expand","tickets,rsvp,schedule_summit_events,all_affiliations"),o.addQuery("order","first_name,last_name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`full_name@@${e},first_name@@${e},last_name@@${e},email@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/attendees`);n.addQuery("order","first_name,last_name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`full_name=@${r},email=@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/summits/all");o.addQuery("expand","tickets,rsvp,schedule_summit_events,all_affiliations"),o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()("/api/v1/"+(e?`summits/${e}/speakers`:"speakers"));n.addQuery("expand","member,registration_request"),n.addQuery("order","first_name,last_name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`full_name@@${r},first_name@@${r},last_name@@${r},email@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=50)=>{let n=u()("/api/v1/"+(e?`summits/${e}/track-tag-groups/all/allowed-tags`:"tags"));e&&n.addQuery("expand","tag,track_tag_group"),n.addQuery("order","tag"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`tag@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=[],n=c.WU)=>{let s=u()(`/api/v1/summits/${e}/tracks`);s.addQuery("order","name"),s.addQuery("page",1),s.addQuery("per_page",n),(null==o?void 0:o.length)>0&&s.addQuery("filter[]",`not_id==${o.join("||")}`),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`name@@${r}`)),y(s,a)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/track-groups`);n.addQuery("order","name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a=!1,o,n=c.WU)=>{let s=u()(`/api/v1/summits/${e}/events`+(a?"/published":""));s.addQuery("order","title"),s.addQuery("page",1),s.addQuery("per_page",n),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`title@@${r}`)),y(s,o)}),c.wU),d().debounce((async(e,r,a,o=null,n=c.WU)=>{let s=u()(`/api/v1/summits/${e}/event-types`);s.addQuery("order","name"),s.addQuery("page",1),s.addQuery("per_page",n),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`name@@${r}`)),o&&(o=(0,t.escapeFilterValue)(o),s.addQuery("filter[]",`class_name==${o}`)),y(s,a)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/groups");o.addQuery("order","title,code"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`title@@${e},code@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/companies");o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/registration-companies`);n.addQuery("order","name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/sponsors`);n.addQuery("expand","company,sponsorship,sponsorship.type"),n.addQuery("order","id"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`company_name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a)=>{const o=u()(`/api/v2/summits/${r}/sponsors`),n=(0,t.escapeFilterValue)(e);o.addQuery("fields","id,company.name,company.id"),o.addQuery("relations","company"),o.addQuery("expand","company"),n&&o.addQuery("filter",`company_name=@${n}`),p(o).then((e=>{const r=[...e.data].map((e=>({id:e.id,name:e.company.name})));a(r)})).catch(t.fetchErrorHandler)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/sponsors`);n.addQuery("expand","company,sponsorship,sponsorship.type"),n.addQuery("fields","id,company.name,sponsorship.type.name"),n.addQuery("relations","none,company.none,sponsorship.type.none"),n.addQuery("filter[]","badge_scans_count>0"),n.addQuery("order","+company_name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`company_name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/access-level-types`);n.addQuery("order","name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/organizations");o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU);d().debounce((async(e,r={},a,o="v1",n=c.WU)=>{let s=u()(`/api/${o}/summits/${e}/ticket-types`);if(s.addQuery("order","name"),s.addQuery("page",1),s.addQuery("per_page",n),r.hasOwnProperty("name")){const e=(0,t.escapeFilterValue)(r.name);e&&""!=e&&s.addQuery("filter[]",`name@@${e}`)}if(r.hasOwnProperty("audience")){const e=(0,t.escapeFilterValue)(r.audience);e&&""!=e&&s.addQuery("filter[]",`audience==${e}`)}y(s,a)}),c.wU);const _=d().debounce((async(e,r,a=c.WU)=>{const o=u()("/api/v1/sponsored-projects");o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU);d().debounce((async(e,r,a,o=c.WU,n=[])=>{let s=u()(`/api/v1/summits/${e}/promo-codes`);s.addQuery("order","code"),s.addQuery("page",1),s.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`code@@${r}`));for(const e of n)s.addQuery("filter[]",e);y(s,a)}),c.wU),d().debounce((async(e,r)=>{const a=u()("/api/v1/sponsorship-types");(e=(0,t.escapeFilterValue)(e))&&a.addQuery("filter",`name=@${e}`),y(a,r)}),c.wU),d().debounce((async(e,r,a)=>{const o=u()(`/api/v1/summits/${r}/sponsorships-types`);e=(0,t.escapeFilterValue)(e),o.addQuery("page",1),o.addQuery("per_page",c.Vg),o.addQuery("expand","type"),o.addQuery("order","+name"),e&&o.addQuery("filter",`name=@${e}`),y(o,a)}),c.wU)},1116:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},6031:e=>{e.exports=require("@babel/runtime/helpers/extends")},2462:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},6842:e=>{e.exports=require("i18n-react/dist/i18n-react")},9891:e=>{e.exports=require("idtoken-verifier")},7825:e=>{e.exports=require("lodash")},5812:e=>{e.exports=require("moment-timezone")},2015:e=>{e.exports=require("react")},2113:e=>{e.exports=require("react-select/lib/Async")},806:e=>{e.exports=require("superagent/lib/client")},9236:e=>{e.exports=require("sweetalert2")},8041:e=>{e.exports=require("urijs")}},r={};function a(t){var o=r[t];if(void 0!==o)return o.exports;var n=r[t]={exports:{}};return e[t](n,n.exports,a),n.exports}(()=>{a.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return a.d(r,{a:r}),r}})(),(()=>{a.d=(e,r)=>{for(var t in r)a.o(r,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}})(),(()=>{a.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r)})(),(()=>{a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var t={};a.r(t),a.d(t,{default:()=>_});var o=a(6031),n=a.n(o),s=a(2462),d=a.n(s),i=a(2015),u=a.n(i),c=a(2113),l=a.n(c),p=a(3582);const y=["value","error","onChange","id","multi"];class _ extends u().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.getSponsoredProjects=this.getSponsoredProjects.bind(this)}handleChange(e){let r={target:{id:this.props.id,value:e,type:"sponsoredprojectinput"}};this.props.onChange(r)}getSponsoredProjects(e,r){if(!e)return Promise.resolve({options:[]});(0,p.querySponsoredProjects)(e,r)}render(){let e=this.props,{value:r,error:a,onChange:t,id:o,multi:s}=e,i=d()(e,y),c=this.props.hasOwnProperty("multi"),p=this.props.hasOwnProperty("clearable"),_=this.props.hasOwnProperty("error")&&""!=a;return u().createElement("div",null,u().createElement(l(),n()({value:r,onChange:this.handleChange,loadOptions:this.getSponsoredProjects,getOptionValue:e=>e.id,getOptionLabel:e=>`${e.name} (${e.id})`,isMulti:c,isClearable:p},i)),_&&u().createElement("p",{className:"error-label"},a))}}return t})()));
1
+ !function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],r):"object"==typeof exports?exports["openstack-uicore-foundation"]=r():e["openstack-uicore-foundation"]=r()}(this,(()=>(()=>{"use strict";var e={5097:(e,r,a)=>{a(1116),a(6842),a(9087),a(9128),a(2183)},3195:(e,r,a)=>{a.d(r,{AUTH_ERROR_ACCESS_TOKEN_EXPIRED:()=>n,AUTH_ERROR_LOCK_ACQUIRE_ERROR:()=>s,AUTH_ERROR_MISSING_AUTH_INFO:()=>t,AUTH_ERROR_MISSING_REFRESH_TOKEN:()=>o,AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR:()=>i,AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR:()=>d});const t="AUTH_ERROR_MISSING_AUTH_INFO",o="AUTH_ERROR_MISSING_REFRESH_TOKEN",n="AUTH_ERROR_ACCESS_TOKEN_EXPIRED",s="AUTH_ERROR_LOCK_ACQUIRE_ERROR",d="AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR",i="AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR"},2183:(e,r,a)=>{a.d(r,{getAccessToken:()=>m});var t=a(9128),o=a(5812),n=a.n(o);a(806);const s=require("browser-tabs-lock");var d=a.n(s);const i=require("js-cookie");var u=a.n(i),c=(a(8041),a(9891),a(5097),a(8853),a(3195));const Lock=new(d()),GET_TOKEN_SILENTLY_LOCK_KEY="openstackuicore.lock.getTokenSilently",l="code",p="authInfo",y="idToken",_=async(e,r)=>{if(e===l&&O()){if(!r)throw h(),Error(c.AUTH_ERROR_MISSING_REFRESH_TOKEN);let e=await(async(e,r=5,a=1e3)=>{for(let t=0;t<r;t++)try{return await e()}catch(e){if(!e.message||!e.message.startsWith(c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR)||t===r-1)throw e;const o=a*Math.pow(2,t);console.log(`retryWithBackoff retry ${t+1}/${r} in ${o}ms`),await new Promise((e=>setTimeout(e,o)))}})((()=>f(r))),{access_token:a,expires_in:t,refresh_token:o,id_token:n}=e;return void 0===o&&(o=null),g(a,t,o,n),a}throw h(),Error(c.AUTH_ERROR_ACCESS_TOKEN_EXPIRED)},R=async()=>{console.log("openstack-uicore-foundation::Security::methods::_getAccessToken");let e=E();if(!e)throw console.log("openstack-uicore-foundation::Security::methods::_getAccessToken AUTH_ERROR_MISSING_AUTH_INFO"),Error(c.AUTH_ERROR_MISSING_AUTH_INFO);let{accessToken:r,expiresIn:a,accessTokenUpdatedAt:t,refreshToken:o}=e,s=Q();const d=n()().unix();let i=d-t;return a-=60,console.log(`openstack-uicore-foundation::Security::methods::_getAccessToken now ${d} accessTokenUpdatedAt ${t} expiresIn ${a} timeElapsedSecs ${i}`),(i>=a||null==r)&&(console.log("openstack-uicore-foundation::Security::methods::_getAccessToken access token expired, refreshing it ..."),r=await _(s,o)),r},m=async()=>{if("undefined"!=typeof navigator&&navigator.locks)return await navigator.locks.request(GET_TOKEN_SILENTLY_LOCK_KEY,(async e=>(console.log("openstack-uicore-foundation::Security::methods::getAccessToken web lock api",e),await R())));if(!await(0,t.retryPromise)((()=>Lock.acquireLock(GET_TOKEN_SILENTLY_LOCK_KEY,6e3)),10))throw Error(c.AUTH_ERROR_LOCK_ACQUIRE_ERROR);try{return await R()}finally{await Lock.releaseLock(GET_TOKEN_SILENTLY_LOCK_KEY)}},f=async e=>{let r=T(),a=w();const o={grant_type:"refresh_token",client_id:encodeURI(a),refresh_token:e},n=new AbortController,s=setTimeout((()=>n.abort()),1e4);let d,i;try{d=await fetch(`${r}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(o),signal:n.signal})}catch(e){throw console.log("refreshAccessToken network error:",e.message),Error(`${c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR}: ${e.message}`)}finally{clearTimeout(s)}if(!d.ok){if(console.log(`refreshAccessToken server error: ${d.status} - ${d.statusText}`),d.status>=500||408===d.status||429===d.status)throw Error(`${c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR}: ${d.status} - ${d.statusText}`);throw(0,t.setSessionClearingState)(!0),Error(`${c.AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR}: ${d.status} - ${d.statusText}`)}try{i=await d.json()}catch(e){throw Error(`${c.AUTH_ERROR_REFRESH_TOKEN_NETWORK_ERROR}: invalid JSON response from IDP`)}let{access_token:u,refresh_token:l,expires_in:p,id_token:y}=i;if(!u)throw(0,t.setSessionClearingState)(!0),Error(`${c.AUTH_ERROR_REFRESH_TOKEN_REQUEST_ERROR}: missing access_token in refresh response`);return{access_token:u,refresh_token:l,expires_in:p,id_token:y}},g=(e,r,a=null,o=null)=>{let n=E(),s={accessToken:e,expiresIn:r,accessTokenUpdatedAt:Math.floor(Date.now()/1e3)};null==a&&n&&(a=n.refreshToken),null==o&&n&&(o=n.idToken),a&&(s.refreshToken=a),o?(s[y]=o,u().set(y,o,{secure:!0,sameSite:"Lax"})):u().remove(y),(0,t.putOnLocalStorage)(p,JSON.stringify(s))},E=()=>{try{let e=(0,t.getFromLocalStorage)(p,!1);return e?JSON.parse(e):null}catch(e){return null}},h=()=>{"undefined"!=typeof window&&((0,t.removeFromLocalStorage)(p),u().remove(y))},w=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,Q=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",O=()=>"undefined"==typeof window||new Boolean(window.OAUTH2_USE_REFRESH_TOKEN||!0),T=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null},9087:(e,r,a)=>{a.d(r,{escapeFilterValue:()=>p,fetchErrorHandler:()=>c,fetchResponseHandler:()=>l});a(2462),a(1116),a(806);var t=a(8041),o=a.n(t),n=a(9236),s=a.n(n),d=a(6842),i=a.n(d);a(9128),a(5097),a(2183),a(3209);o().escapeQuerySpace=!1;const u=e=>r=>({type:e,payload:r}),c=(u("RESET_LOADING"),u("START_LOADING"),u("STOP_LOADING"),e=>{let r=e.status,a=e.statusText;switch(r){case 403:s().fire("ERROR",i().translate("errors.user_not_authz"),"warning");break;case 401:s().fire("ERROR",i().translate("errors.session_expired"),"error");break;case 412:s().fire("ERROR",a,"warning");case 500:s().fire("ERROR",i().translate("errors.server_error"),"error")}}),l=e=>{if(e.ok)return e.json();throw e},p=e=>e=(e=(e=(e=(e=String(e)).replace(/\\/g,"\\\\")).replace(/,/g,"\\,")).replace(/;/g,"\\;")).replace(/\+/g,"%2B")},3209:(e,r,a)=>{a.d(r,{Vg:()=>n,WU:()=>o,wU:()=>t});const t=500,o=10,n=100},8853:()=>{require("spark-md5"),require("crypto-js/sha256"),require("crypto-js/enc-base64url"),require("crypto-js/enc-hex"),"undefined"!=typeof window&&(window.crypto||window.msCrypto)},9128:(e,r,a)=>{a.d(r,{buildAPIBaseUrl:()=>t,getFromLocalStorage:()=>n,putOnLocalStorage:()=>o,removeFromLocalStorage:()=>s,retryPromise:()=>i,setSessionClearingState:()=>d});require("@sentry/react");a(5812),a(8041);const t=e=>"undefined"!=typeof window?`${window.API_BASE_URL}${e}`:null``,o=(e,r)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,r)},n=(e,r)=>{if("undefined"!=typeof window){let a=window.localStorage.getItem(e);return r&&(console.log(`getFromLocalStorage removing key ${e}`),s(e)),a}return null},s=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},d=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},i=async(e,r=3)=>{for(let a=0;a<r;a++)if(await e())return!0;return!1}},3582:(e,r,a)=>{a.d(r,{querySponsoredProjects:()=>_});var t=a(9087),o=a(2183),n=a(9128),s=a(7825),d=a.n(s),i=(a(5812),a(8041)),u=a.n(i),c=a(3209);u().escapeQuerySpace=!1;const l=async(e,r,a={})=>fetch((0,n.buildAPIBaseUrl)(e.toString()),a).then(t.fetchResponseHandler).then((e=>{"function"==typeof r&&r(e.data)})).catch((e=>(404===e.status&&r([]),e))).catch(t.fetchErrorHandler),p=async(e,r={})=>{let a;try{a=await(0,o.getAccessToken)()}catch(e){return Promise.reject(e)}return e.addQuery("access_token",a),fetch((0,n.buildAPIBaseUrl)(e.toString()),r).then(t.fetchResponseHandler).catch(t.fetchErrorHandler)},y=async(e,r,a={})=>{let t;try{t=await(0,o.getAccessToken)()}catch(e){return"function"==typeof r&&r(e),Promise.reject()}return e.addQuery("access_token",t),l(e,r,a)};d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/members");o.addQuery("expand","tickets,rsvp,schedule_summit_events,all_affiliations"),o.addQuery("order","first_name,last_name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`full_name@@${e},first_name@@${e},last_name@@${e},email@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/attendees`);n.addQuery("order","first_name,last_name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`full_name=@${r},email=@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/summits/all");o.addQuery("expand","tickets,rsvp,schedule_summit_events,all_affiliations"),o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()("/api/v1/"+(e?`summits/${e}/speakers`:"speakers"));n.addQuery("expand","member,registration_request"),n.addQuery("order","first_name,last_name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`full_name@@${r},first_name@@${r},last_name@@${r},email@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=50)=>{let n=u()("/api/v1/"+(e?`summits/${e}/track-tag-groups/all/allowed-tags`:"tags"));e&&n.addQuery("expand","tag,track_tag_group"),n.addQuery("order","tag"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`tag@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=[],n=c.WU)=>{let s=u()(`/api/v1/summits/${e}/tracks`);s.addQuery("order","name"),s.addQuery("page",1),s.addQuery("per_page",n),(null==o?void 0:o.length)>0&&s.addQuery("filter[]",`not_id==${o.join("||")}`),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`name@@${r}`)),y(s,a)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/track-groups`);n.addQuery("order","name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a=!1,o,n=c.WU)=>{let s=u()(`/api/v1/summits/${e}/events`+(a?"/published":""));s.addQuery("order","title"),s.addQuery("page",1),s.addQuery("per_page",n),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`title@@${r}`)),y(s,o)}),c.wU),d().debounce((async(e,r,a,o=null,n=c.WU)=>{let s=u()(`/api/v1/summits/${e}/event-types`);s.addQuery("order","name"),s.addQuery("page",1),s.addQuery("per_page",n),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`name@@${r}`)),o&&(o=(0,t.escapeFilterValue)(o),s.addQuery("filter[]",`class_name==${o}`)),y(s,a)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/groups");o.addQuery("order","title,code"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`title@@${e},code@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/companies");o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/registration-companies`);n.addQuery("order","name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/sponsors`);n.addQuery("expand","company,sponsorship,sponsorship.type"),n.addQuery("order","id"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`company_name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a)=>{const o=u()(`/api/v2/summits/${r}/sponsors`),n=(0,t.escapeFilterValue)(e);o.addQuery("fields","id,company.name,company.id"),o.addQuery("relations","company"),o.addQuery("expand","company"),n&&o.addQuery("filter",`company_name=@${n}`),p(o).then((e=>{const r=[...e.data].map((e=>({id:e.id,name:e.company.name})));a(r)})).catch(t.fetchErrorHandler)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/sponsors`);n.addQuery("expand","company,sponsorship,sponsorship.type"),n.addQuery("fields","id,company.name,sponsorship.type.name"),n.addQuery("relations","none,company.none,sponsorship.type.none"),n.addQuery("filter[]","badge_scans_count>0"),n.addQuery("order","+company_name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`company_name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a,o=c.WU)=>{let n=u()(`/api/v1/summits/${e}/access-level-types`);n.addQuery("order","name"),n.addQuery("page",1),n.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),n.addQuery("filter[]",`name@@${r}`)),y(n,a)}),c.wU),d().debounce((async(e,r,a=c.WU)=>{let o=u()("/api/v1/organizations");o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU);d().debounce((async(e,r={},a,o="v1",n=c.WU)=>{let s=u()(`/api/${o}/summits/${e}/ticket-types`);if(s.addQuery("order","name"),s.addQuery("page",1),s.addQuery("per_page",n),r.hasOwnProperty("name")){const e=(0,t.escapeFilterValue)(r.name);e&&""!=e&&s.addQuery("filter[]",`name@@${e}`)}if(r.hasOwnProperty("audience")){const e=(0,t.escapeFilterValue)(r.audience);e&&""!=e&&s.addQuery("filter[]",`audience==${e}`)}y(s,a)}),c.wU);const _=d().debounce((async(e,r,a=c.WU)=>{const o=u()("/api/v1/sponsored-projects");o.addQuery("order","name"),o.addQuery("page",1),o.addQuery("per_page",a),e&&(e=(0,t.escapeFilterValue)(e),o.addQuery("filter[]",`name@@${e}`)),y(o,r)}),c.wU);d().debounce((async(e,r,a,o=c.WU,n=[])=>{let s=u()(`/api/v1/summits/${e}/promo-codes`);s.addQuery("order","code"),s.addQuery("page",1),s.addQuery("per_page",o),r&&(r=(0,t.escapeFilterValue)(r),s.addQuery("filter[]",`code@@${r}`));for(const e of n)s.addQuery("filter[]",e);y(s,a)}),c.wU),d().debounce((async(e,r)=>{const a=u()("/api/v1/sponsorship-types");(e=(0,t.escapeFilterValue)(e))&&a.addQuery("filter",`name=@${e}`),y(a,r)}),c.wU),d().debounce((async(e,r,a)=>{const o=u()(`/api/v1/summits/${r}/sponsorships-types`);e=(0,t.escapeFilterValue)(e),o.addQuery("page",1),o.addQuery("per_page",c.Vg),o.addQuery("expand","type"),o.addQuery("order","+name"),e&&o.addQuery("filter",`name=@${e}`),y(o,a)}),c.wU)},1116:e=>{e.exports=require("@babel/runtime/helpers/defineProperty")},6031:e=>{e.exports=require("@babel/runtime/helpers/extends")},2462:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},6842:e=>{e.exports=require("i18n-react/dist/i18n-react")},9891:e=>{e.exports=require("idtoken-verifier")},7825:e=>{e.exports=require("lodash")},5812:e=>{e.exports=require("moment-timezone")},2015:e=>{e.exports=require("react")},2113:e=>{e.exports=require("react-select/lib/Async")},806:e=>{e.exports=require("superagent/lib/client")},9236:e=>{e.exports=require("sweetalert2")},8041:e=>{e.exports=require("urijs")}},r={};function a(t){var o=r[t];if(void 0!==o)return o.exports;var n=r[t]={exports:{}};return e[t](n,n.exports,a),n.exports}(()=>{a.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return a.d(r,{a:r}),r}})(),(()=>{a.d=(e,r)=>{for(var t in r)a.o(r,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}})(),(()=>{a.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r)})(),(()=>{a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var t={};a.r(t),a.d(t,{default:()=>_});var o=a(6031),n=a.n(o),s=a(2462),d=a.n(s),i=a(2015),u=a.n(i),c=a(2113),l=a.n(c),p=a(3582);const y=["value","error","onChange","id","multi"];class _ extends u().Component{constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.getSponsoredProjects=this.getSponsoredProjects.bind(this)}handleChange(e){let r={target:{id:this.props.id,value:e,type:"sponsoredprojectinput"}};this.props.onChange(r)}getSponsoredProjects(e,r){if(!e)return Promise.resolve({options:[]});(0,p.querySponsoredProjects)(e,r)}render(){let e=this.props,{value:r,error:a,onChange:t,id:o,multi:s}=e,i=d()(e,y),c=this.props.hasOwnProperty("multi"),p=this.props.hasOwnProperty("clearable"),_=this.props.hasOwnProperty("error")&&""!=a;return u().createElement("div",null,u().createElement(l(),n()({value:r,onChange:this.handleChange,loadOptions:this.getSponsoredProjects,getOptionValue:e=>e.id,getOptionLabel:e=>`${e.name} (${e.id})`,isMulti:c,isClearable:p},i)),_&&u().createElement("p",{className:"error-label"},a))}}return t})()));
2
2
  //# sourceMappingURL=sponsored-project-input.js.map