openstack-uicore-foundation 3.0.61 → 3.0.62

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 (76) hide show
  1. package/lib/components/ajaxloader.js +1 -0
  2. package/lib/components/attendance-tracker.js +1 -0
  3. package/lib/components/circle-button.js +1 -0
  4. package/lib/components/clock.js +1 -0
  5. package/lib/components/exclusive-wrapper.js +1 -0
  6. package/lib/components/extra-questions.js +1 -0
  7. package/lib/components/form-validation.js +1 -0
  8. package/lib/components/forms/rsvp-form.js +1 -0
  9. package/lib/components/forms/simple-form.js +1 -0
  10. package/lib/components/free-text-search.js +1 -0
  11. package/lib/components/google-map.js +1 -0
  12. package/lib/components/index.js +1 -0
  13. package/lib/components/inputs/access-levels-input.js +1 -0
  14. package/lib/components/inputs/action-dropdown.js +1 -0
  15. package/lib/components/inputs/checkbox-list.js +1 -0
  16. package/lib/components/inputs/company-input.js +1 -0
  17. package/lib/components/inputs/country-dropdown.js +1 -0
  18. package/lib/components/inputs/country-input.js +1 -0
  19. package/lib/components/inputs/datetimepicker.js +1 -0
  20. package/lib/components/inputs/dropdown.js +1 -0
  21. package/lib/components/inputs/editor-input.js +1 -0
  22. package/lib/components/inputs/event-input.js +1 -0
  23. package/lib/components/inputs/free-multi-text-input.js +1 -0
  24. package/lib/components/inputs/group-input.js +1 -0
  25. package/lib/components/inputs/grouped-dropdown.js +1 -0
  26. package/lib/components/inputs/language-input.js +1 -0
  27. package/lib/components/inputs/member-input.js +1 -0
  28. package/lib/components/inputs/organization-input.js +1 -0
  29. package/lib/components/inputs/radio-list.js +1 -0
  30. package/lib/components/inputs/registration-company-input.js +1 -0
  31. package/lib/components/inputs/speaker-input.js +1 -0
  32. package/lib/components/inputs/sponsor-input.js +1 -0
  33. package/lib/components/inputs/summit-input.js +1 -0
  34. package/lib/components/inputs/tag-input.js +1 -0
  35. package/lib/components/inputs/text-input.js +1 -0
  36. package/lib/components/inputs/textarea-input.js +1 -0
  37. package/lib/components/inputs/ticket-types-input.js +1 -0
  38. package/lib/components/inputs/upload-input-v2.js +1 -0
  39. package/lib/components/inputs/upload-input.js +1 -0
  40. package/lib/components/raw-html.js +1 -0
  41. package/lib/components/sections/panel.js +1 -0
  42. package/lib/components/simple-link-list.js +1 -0
  43. package/lib/components/summit-dropdown.js +1 -0
  44. package/lib/components/table-editable.js +1 -0
  45. package/lib/components/table-selectable.js +1 -0
  46. package/lib/components/table-sortable.js +1 -0
  47. package/lib/components/table.js +1 -0
  48. package/lib/components/video-stream.js +1 -0
  49. package/lib/components.js +1 -1
  50. package/lib/css/components/circle-button.css +1 -0
  51. package/lib/css/components/form-validation.css +1 -0
  52. package/lib/css/components/index.css +3 -0
  53. package/lib/css/components/inputs/action-dropdown.css +1 -0
  54. package/lib/css/components/inputs/datetimepicker.css +3 -0
  55. package/lib/css/components/inputs/grouped-dropdown.css +1 -0
  56. package/lib/css/components/inputs/upload-input-v2.css +1 -0
  57. package/lib/css/components/inputs/upload-input.css +1 -0
  58. package/lib/css/components/simple-link-list.css +1 -0
  59. package/lib/css/components/summit-dropdown.css +1 -0
  60. package/lib/css/components/table-editable.css +1 -0
  61. package/lib/css/components/table-selectable.css +1 -0
  62. package/lib/css/components/table-sortable.css +1 -0
  63. package/lib/css/components/table.css +1 -0
  64. package/lib/i18n.js +1 -0
  65. package/lib/security/abstract-auth-callback-route.js +1 -0
  66. package/lib/security/actions.js +1 -0
  67. package/lib/security/methods.js +1 -0
  68. package/lib/security/reducers.js +1 -0
  69. package/lib/security/session-checker.js +1 -0
  70. package/lib/utils/actions.js +1 -0
  71. package/lib/utils/fragment-parser.js +1 -0
  72. package/lib/utils/methods.js +1 -0
  73. package/lib/utils/query-actions.js +1 -0
  74. package/lib/utils/reducers.js +1 -0
  75. package/lib/utils/use-fit-text.js +1 -0
  76. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ .pTjbvR2PI3JIAfGGYR5C{border-color:transparent;border-radius:20px;bottom:0;color:#fff;font-size:20px;height:30px;padding:0;position:absolute;right:0;text-align:center;width:30px}.pTjbvR2PI3JIAfGGYR5C.BnU6_vcWc8sasL8roBPA{background-color:#e39900}.pTjbvR2PI3JIAfGGYR5C.yREg1belHCLDAYYfAg77{background-color:#7ed321}.pTjbvR2PI3JIAfGGYR5C.mFp_9X3SzjgPNXRSXiFR{background-color:#396bd0}.pTjbvR2PI3JIAfGGYR5C i{margin-top:4px}
@@ -0,0 +1 @@
1
+ .error{background-color:rgba(255,0,0,.1);border-color:#da0000}.error-label{color:#da0000}.error .Select-control{background-color:rgba(255,0,0,.1);border-color:#da0000}
@@ -0,0 +1,3 @@
1
+ /*!
2
+ * https://github.com/YouCanBookMe/react-datetime
3
+ */.rdt{position:relative}.rdtPicker{background:#fff;border:1px solid #e4e3e3;box-shadow:0 1px 3px rgba(0,0,0,.1);display:none;margin-top:1px;padding:4px;position:absolute;width:auto;z-index:9999999!important}.rdtOpen .rdtPicker{display:block}.rdtStatic .rdtPicker{box-shadow:none;position:static}.rdtPicker .rdtTimeToggle{text-align:center}.rdtPicker table{margin:0;width:100%}.rdtPicker td,.rdtPicker th{height:28px;text-align:center}.rdtPicker td{cursor:pointer}.rdtPicker .rdtTimeToggle:hover,.rdtPicker td.rdtDay:hover,.rdtPicker td.rdtHour:hover,.rdtPicker td.rdtMinute:hover,.rdtPicker td.rdtSecond:hover{background:#eee;cursor:pointer}.rdtPicker td.rdtNew,.rdtPicker td.rdtOld{color:#999}.rdtPicker td.rdtToday{position:relative}.rdtPicker td.rdtToday:before{border-bottom:7px solid #428bca;border-left:7px solid transparent;border-top-color:rgba(0,0,0,.2);bottom:4px;content:"";display:inline-block;position:absolute;right:4px}.rdtPicker td.rdtActive,.rdtPicker td.rdtActive:hover{background-color:#428bca;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.rdtPicker td.rdtActive.rdtToday:before{border-bottom-color:#fff}.rdtPicker td.rdtDisabled,.rdtPicker td.rdtDisabled:hover{background:none;color:#999;cursor:not-allowed}.rdtPicker td span.rdtOld{color:#999}.rdtPicker td span.rdtDisabled,.rdtPicker td span.rdtDisabled:hover{background:none;color:#999;cursor:not-allowed}.rdtPicker th{border-bottom:1px solid #f9f9f9}.rdtPicker .dow{border-bottom:none;width:14.2857%}.rdtPicker th.rdtSwitch{width:100px}.rdtPicker th.rdtNext,.rdtPicker th.rdtPrev{font-size:21px;vertical-align:top}.rdtNext span,.rdtPrev span{-webkit-touch-callout:none;display:block;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rdtPicker th.rdtDisabled,.rdtPicker th.rdtDisabled:hover{background:none;color:#999;cursor:not-allowed}.rdtPicker thead tr:first-child th{cursor:pointer}.rdtPicker thead tr:first-child th:hover{background:#eee}.rdtPicker tfoot{border-top:1px solid #f9f9f9}.rdtPicker button{background:none;border:none;cursor:pointer}.rdtPicker button:hover{background-color:#eee}.rdtPicker thead button{height:100%;width:100%}td.rdtMonth,td.rdtYear{cursor:pointer;height:50px;width:25%}td.rdtMonth:hover,td.rdtYear:hover{background:#eee}.rdtCounters{display:inline-block}.rdtCounters>div{float:left}.rdtCounter{height:100px;width:40px}.rdtCounterSeparator{line-height:100px}.rdtCounter .rdtBtn{-webkit-touch-callout:none;cursor:pointer;display:block;height:40%;line-height:40px;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rdtCounter .rdtBtn:hover{background:#eee}.rdtCounter .rdtCount{font-size:1.2em;height:20%}.rdtMilli{padding-left:8px;vertical-align:middle;width:48px}.rdtMilli input{font-size:1.2em;margin-top:37px;width:100%}.option-group{font-style:italic;font-weight:700}.option-child{padding-left:15px}.dropzone{border:2px dashed gray;color:gray;height:150px;padding:20px;text-align:center}.file-box{max-height:50px;max-width:50px;position:relative;text-align:center}.file-box img{width:100%}.file-box .remove{color:red;cursor:pointer;height:20px;position:absolute;right:-10px;top:-5px;width:20px}.filepicker{font-family:sans-serif}div.filepicker{background-color:#e1e1e1;border:2px dashed #c7c7c7;border-radius:5px;height:100%;min-height:100px;padding:5px;text-align:center}div.filepicker.disabled{cursor:not-allowed;padding-top:30px}.filepicker-file-icon{color:#000;display:inline-block;margin:1.5em 0 2.5em;padding-left:45px;position:relative}.filepicker-file-icon:before{border:2px solid #7f7f7f;border-radius:2px;content:"";height:34px;left:0;position:absolute;top:-7px;width:29px}.filepicker-file-icon:after{background-color:#000;color:#fff;content:"file";content:attr(data-filetype);font-size:11px;left:-4px;letter-spacing:1px;line-height:1.3;padding:0 2px;position:absolute;text-align:right;text-transform:uppercase;top:9px}.filepicker-file-icon .fileCorner{border-color:#fff transparent transparent #920035;border-style:solid;border-width:11px 0 0 11px;height:0;left:22px;position:absolute;top:-7px;width:0}.simple-link-list{margin-top:40px}.simple-link-list .link-select{width:200px}.simple-link-list .link-select .Select-control{border-radius:4px 0 0 4px;height:100%}.simple-link-list .link-select .Select-control .Select-input{height:32px}.simple-link-list .add-button{border-color:#afafaf;height:38px}.simple-link-list:not(.panel .simple-link-list){border:1px solid #ccc;border-radius:3px;margin:5px;padding:10px}.panel .simple-link-list .simple-link-list-title{display:none}.summit-dropdown .summit-select{width:150px}.summit-dropdown .summit-select>div{border-bottom-right-radius:unset;border-top-right-radius:unset}.summit-dropdown .btn{border-left-color:#e7e7e7;height:38px}.summit-dropdown.big .summit-select input{height:32px}.summit-dropdown.big .btn{height:46px}table.sortableTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.sortableTable td,table.sortableTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.sortableTable td.sortableTables_empty,table.sortableTable th.sortableTables_empty{text-align:center}table.sortableTable.nowrap td,table.sortableTable.nowrap th{white-space:nowrap}table.sortableTable thead>tr>td.sorting,table.sortableTable thead>tr>td.sorting_asc,table.sortableTable thead>tr>td.sorting_desc,table.sortableTable thead>tr>th.sorting,table.sortableTable thead>tr>th.sorting_asc,table.sortableTable thead>tr>th.sorting_desc{padding-right:30px}table.sortableTable thead>tr>td:active,table.sortableTable thead>tr>th:active{outline:none}table.sortableTable thead .sorting,table.sortableTable thead .sorting_asc,table.sortableTable thead .sorting_asc_disabled,table.sortableTable thead .sorting_desc,table.sortableTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.sortableTable thead .sorting:after,table.sortableTable thead .sorting_asc:after,table.sortableTable thead .sorting_asc_disabled:after,table.sortableTable thead .sorting_desc:after,table.sortableTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.sortableTable thead .sorting:after{content:"\e150";opacity:.2}table.sortableTable thead .sorting_asc:after{content:"\e155"}table.sortableTable thead .sorting_desc:after{content:"\e156"}table.sortableTable thead .sorting_asc_disabled:after,table.sortableTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.sortableTable{border-collapse:separate!important}table.table-bordered.sortableTable td,table.table-bordered.sortableTable th{border-left-width:0}table.table-bordered.sortableTable td:last-child,table.table-bordered.sortableTable th:last-child{border-right-width:0}table.table-bordered.sortableTable tbody td,table.table-bordered.sortableTable tbody th{border-bottom-width:0}table.sortableTable>tbody>tr.child{padding:.5em 1em}table.sortableTable>tbody>tr.child:hover{background:transparent!important}table.sortableTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.sortableTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.sortableTable>tbody>tr.child ul li:first-child{padding-top:0}table.sortableTable>tbody>tr.child ul li:last-child{border-bottom:none}table.sortableTable>tbody>tr.can-edit{cursor:pointer}table.sortableTable .actions{width:70px}table.sortableTable .actions a{margin-left:10px}table.sortableTable .actions a .delete-icon:hover{color:#da0000!important}table.sortableTable .actions a .fa:hover{color:#024c85}.sortable-table-box{margin-top:20px}table.editableTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.editableTable td,table.editableTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.editableTable td.editableTables_empty,table.editableTable th.editableTables_empty{text-align:center}table.editableTable.nowrap td,table.editableTable.nowrap th{white-space:nowrap}table.editableTable thead>tr>td.sorting,table.editableTable thead>tr>td.sorting_asc,table.editableTable thead>tr>td.sorting_desc,table.editableTable thead>tr>th.sorting,table.editableTable thead>tr>th.sorting_asc,table.editableTable thead>tr>th.sorting_desc{padding-right:30px}table.editableTable thead>tr>td:active,table.editableTable thead>tr>th:active{outline:none}table.editableTable thead .sorting,table.editableTable thead .sorting_asc,table.editableTable thead .sorting_asc_disabled,table.editableTable thead .sorting_desc,table.editableTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.editableTable thead .sorting:after,table.editableTable thead .sorting_asc:after,table.editableTable thead .sorting_asc_disabled:after,table.editableTable thead .sorting_desc:after,table.editableTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.editableTable thead .sorting:after{content:"\e150";opacity:.2}table.editableTable thead .sorting_asc:after{content:"\e155"}table.editableTable thead .sorting_desc:after{content:"\e156"}table.editableTable thead .sorting_asc_disabled:after,table.editableTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.editableTable{border-collapse:separate!important}table.table-bordered.editableTable td,table.table-bordered.editableTable th{border-left-width:0}table.table-bordered.editableTable td:last-child,table.table-bordered.editableTable th:last-child{border-right-width:0}table.table-bordered.editableTable tbody td,table.table-bordered.editableTable tbody th{border-bottom-width:0}table.editableTable>tbody>tr.child{padding:.5em 1em}table.editableTable>tbody>tr.child:hover{background:transparent!important}table.editableTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.editableTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.editableTable>tbody>tr.child ul li:first-child{padding-top:0}table.editableTable>tbody>tr.child ul li:last-child{border-bottom:none}table.editableTable>tbody>tr.can-edit{cursor:pointer}table.editableTable .actions{width:70px}table.editableTable .actions a{margin-left:10px}table.editableTable .actions a .delete-icon:hover{color:#da0000!important}table.editableTable .actions a .fa:hover{color:#024c85}table.dataTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap td,table.dataTable.nowrap th{white-space:nowrap}table.dataTable thead>tr>td.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc{padding-right:30px}table.dataTable thead>tr>td:active,table.dataTable thead>tr>th:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.dataTable thead .sorting:after{content:"\e150";opacity:.2}table.dataTable thead .sorting_asc:after{content:"\e155"}table.dataTable thead .sorting_desc:after{content:"\e156"}table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.dataTable{border-collapse:separate!important}table.table-bordered.dataTable td,table.table-bordered.dataTable th{border-left-width:0}table.table-bordered.dataTable td:last-child,table.table-bordered.dataTable th:last-child{border-right-width:0}table.table-bordered.dataTable tbody td,table.table-bordered.dataTable tbody th{border-bottom-width:0}table.dataTable>tbody>tr.child{padding:.5em 1em}table.dataTable>tbody>tr.child:hover{background:transparent!important}table.dataTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.dataTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.dataTable>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable>tbody>tr.child ul li:last-child{border-bottom:none}table.dataTable>tbody>tr.can-edit{cursor:pointer}table.dataTable .actions{width:70px}table.dataTable .actions a{margin-left:10px}table.dataTable .actions a .delete-icon:hover{color:#da0000!important}table.dataTable .actions a .fa:hover{color:#024c85}.action-dropdown .action-select{width:250px}.action-dropdown .action-select .Select-control{border-radius:4px 0 0 4px;height:100%}.action-dropdown .action-select .Select-control .Select-input{height:32px}.action-dropdown.small :global .Select-control{height:30px}.action-dropdown.small :global .Select-placeholder{line-height:20px}.action-dropdown.small :global .Select-value{line-height:26px!important}.action-dropdown.small :global .Select-value-label{line-height:26px}.action-dropdown.small :global .Select-input{height:26px}.action-dropdown.normal .btn{height:38px}.pTjbvR2PI3JIAfGGYR5C{border-color:transparent;border-radius:20px;bottom:0;color:#fff;font-size:20px;height:30px;padding:0;position:absolute;right:0;text-align:center;width:30px}.pTjbvR2PI3JIAfGGYR5C.BnU6_vcWc8sasL8roBPA{background-color:#e39900}.pTjbvR2PI3JIAfGGYR5C.yREg1belHCLDAYYfAg77{background-color:#7ed321}.pTjbvR2PI3JIAfGGYR5C.mFp_9X3SzjgPNXRSXiFR{background-color:#396bd0}.pTjbvR2PI3JIAfGGYR5C i{margin-top:4px}
@@ -0,0 +1 @@
1
+ .action-dropdown .action-select{width:250px}.action-dropdown .action-select .Select-control{border-radius:4px 0 0 4px;height:100%}.action-dropdown .action-select .Select-control .Select-input{height:32px}.action-dropdown.small :global .Select-control{height:30px}.action-dropdown.small :global .Select-placeholder{line-height:20px}.action-dropdown.small :global .Select-value{line-height:26px!important}.action-dropdown.small :global .Select-value-label{line-height:26px}.action-dropdown.small :global .Select-input{height:26px}.action-dropdown.normal .btn{height:38px}
@@ -0,0 +1,3 @@
1
+ /*!
2
+ * https://github.com/YouCanBookMe/react-datetime
3
+ */.rdt{position:relative}.rdtPicker{background:#fff;border:1px solid #e4e3e3;box-shadow:0 1px 3px rgba(0,0,0,.1);display:none;margin-top:1px;padding:4px;position:absolute;width:auto;z-index:9999999!important}.rdtOpen .rdtPicker{display:block}.rdtStatic .rdtPicker{box-shadow:none;position:static}.rdtPicker .rdtTimeToggle{text-align:center}.rdtPicker table{margin:0;width:100%}.rdtPicker td,.rdtPicker th{height:28px;text-align:center}.rdtPicker td{cursor:pointer}.rdtPicker .rdtTimeToggle:hover,.rdtPicker td.rdtDay:hover,.rdtPicker td.rdtHour:hover,.rdtPicker td.rdtMinute:hover,.rdtPicker td.rdtSecond:hover{background:#eee;cursor:pointer}.rdtPicker td.rdtNew,.rdtPicker td.rdtOld{color:#999}.rdtPicker td.rdtToday{position:relative}.rdtPicker td.rdtToday:before{border-bottom:7px solid #428bca;border-left:7px solid transparent;border-top-color:rgba(0,0,0,.2);bottom:4px;content:"";display:inline-block;position:absolute;right:4px}.rdtPicker td.rdtActive,.rdtPicker td.rdtActive:hover{background-color:#428bca;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.rdtPicker td.rdtActive.rdtToday:before{border-bottom-color:#fff}.rdtPicker td.rdtDisabled,.rdtPicker td.rdtDisabled:hover{background:none;color:#999;cursor:not-allowed}.rdtPicker td span.rdtOld{color:#999}.rdtPicker td span.rdtDisabled,.rdtPicker td span.rdtDisabled:hover{background:none;color:#999;cursor:not-allowed}.rdtPicker th{border-bottom:1px solid #f9f9f9}.rdtPicker .dow{border-bottom:none;width:14.2857%}.rdtPicker th.rdtSwitch{width:100px}.rdtPicker th.rdtNext,.rdtPicker th.rdtPrev{font-size:21px;vertical-align:top}.rdtNext span,.rdtPrev span{-webkit-touch-callout:none;display:block;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rdtPicker th.rdtDisabled,.rdtPicker th.rdtDisabled:hover{background:none;color:#999;cursor:not-allowed}.rdtPicker thead tr:first-child th{cursor:pointer}.rdtPicker thead tr:first-child th:hover{background:#eee}.rdtPicker tfoot{border-top:1px solid #f9f9f9}.rdtPicker button{background:none;border:none;cursor:pointer}.rdtPicker button:hover{background-color:#eee}.rdtPicker thead button{height:100%;width:100%}td.rdtMonth,td.rdtYear{cursor:pointer;height:50px;width:25%}td.rdtMonth:hover,td.rdtYear:hover{background:#eee}.rdtCounters{display:inline-block}.rdtCounters>div{float:left}.rdtCounter{height:100px;width:40px}.rdtCounterSeparator{line-height:100px}.rdtCounter .rdtBtn{-webkit-touch-callout:none;cursor:pointer;display:block;height:40%;line-height:40px;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rdtCounter .rdtBtn:hover{background:#eee}.rdtCounter .rdtCount{font-size:1.2em;height:20%}.rdtMilli{padding-left:8px;vertical-align:middle;width:48px}.rdtMilli input{font-size:1.2em;margin-top:37px;width:100%}
@@ -0,0 +1 @@
1
+ .option-group{font-style:italic;font-weight:700}.option-child{padding-left:15px}
@@ -0,0 +1 @@
1
+ .filepicker{font-family:sans-serif}div.filepicker{background-color:#e1e1e1;border:2px dashed #c7c7c7;border-radius:5px;height:100%;min-height:100px;padding:5px;text-align:center}div.filepicker.disabled{cursor:not-allowed;padding-top:30px}.filepicker-file-icon{color:#000;display:inline-block;margin:1.5em 0 2.5em;padding-left:45px;position:relative}.filepicker-file-icon:before{border:2px solid #7f7f7f;border-radius:2px;content:"";height:34px;left:0;position:absolute;top:-7px;width:29px}.filepicker-file-icon:after{background-color:#000;color:#fff;content:"file";content:attr(data-filetype);font-size:11px;left:-4px;letter-spacing:1px;line-height:1.3;padding:0 2px;position:absolute;text-align:right;text-transform:uppercase;top:9px}.filepicker-file-icon .fileCorner{border-color:#fff transparent transparent #920035;border-style:solid;border-width:11px 0 0 11px;height:0;left:22px;position:absolute;top:-7px;width:0}
@@ -0,0 +1 @@
1
+ .dropzone{border:2px dashed gray;color:gray;height:150px;padding:20px;text-align:center}.file-box{max-height:50px;max-width:50px;position:relative;text-align:center}.file-box img{width:100%}.file-box .remove{color:red;cursor:pointer;height:20px;position:absolute;right:-10px;top:-5px;width:20px}
@@ -0,0 +1 @@
1
+ .simple-link-list{margin-top:40px}.simple-link-list .link-select{width:200px}.simple-link-list .link-select .Select-control{border-radius:4px 0 0 4px;height:100%}.simple-link-list .link-select .Select-control .Select-input{height:32px}.simple-link-list .add-button{border-color:#afafaf;height:38px}.simple-link-list:not(.panel .simple-link-list){border:1px solid #ccc;border-radius:3px;margin:5px;padding:10px}.panel .simple-link-list .simple-link-list-title{display:none}table.dataTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap td,table.dataTable.nowrap th{white-space:nowrap}table.dataTable thead>tr>td.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc{padding-right:30px}table.dataTable thead>tr>td:active,table.dataTable thead>tr>th:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.dataTable thead .sorting:after{content:"\e150";opacity:.2}table.dataTable thead .sorting_asc:after{content:"\e155"}table.dataTable thead .sorting_desc:after{content:"\e156"}table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.dataTable{border-collapse:separate!important}table.table-bordered.dataTable td,table.table-bordered.dataTable th{border-left-width:0}table.table-bordered.dataTable td:last-child,table.table-bordered.dataTable th:last-child{border-right-width:0}table.table-bordered.dataTable tbody td,table.table-bordered.dataTable tbody th{border-bottom-width:0}table.dataTable>tbody>tr.child{padding:.5em 1em}table.dataTable>tbody>tr.child:hover{background:transparent!important}table.dataTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.dataTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.dataTable>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable>tbody>tr.child ul li:last-child{border-bottom:none}table.dataTable>tbody>tr.can-edit{cursor:pointer}table.dataTable .actions{width:70px}table.dataTable .actions a{margin-left:10px}table.dataTable .actions a .delete-icon:hover{color:#da0000!important}table.dataTable .actions a .fa:hover{color:#024c85}
@@ -0,0 +1 @@
1
+ .summit-dropdown .summit-select{width:150px}.summit-dropdown .summit-select>div{border-bottom-right-radius:unset;border-top-right-radius:unset}.summit-dropdown .btn{border-left-color:#e7e7e7;height:38px}.summit-dropdown.big .summit-select input{height:32px}.summit-dropdown.big .btn{height:46px}
@@ -0,0 +1 @@
1
+ table.editableTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.editableTable td,table.editableTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.editableTable td.editableTables_empty,table.editableTable th.editableTables_empty{text-align:center}table.editableTable.nowrap td,table.editableTable.nowrap th{white-space:nowrap}table.editableTable thead>tr>td.sorting,table.editableTable thead>tr>td.sorting_asc,table.editableTable thead>tr>td.sorting_desc,table.editableTable thead>tr>th.sorting,table.editableTable thead>tr>th.sorting_asc,table.editableTable thead>tr>th.sorting_desc{padding-right:30px}table.editableTable thead>tr>td:active,table.editableTable thead>tr>th:active{outline:none}table.editableTable thead .sorting,table.editableTable thead .sorting_asc,table.editableTable thead .sorting_asc_disabled,table.editableTable thead .sorting_desc,table.editableTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.editableTable thead .sorting:after,table.editableTable thead .sorting_asc:after,table.editableTable thead .sorting_asc_disabled:after,table.editableTable thead .sorting_desc:after,table.editableTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.editableTable thead .sorting:after{content:"\e150";opacity:.2}table.editableTable thead .sorting_asc:after{content:"\e155"}table.editableTable thead .sorting_desc:after{content:"\e156"}table.editableTable thead .sorting_asc_disabled:after,table.editableTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.editableTable{border-collapse:separate!important}table.table-bordered.editableTable td,table.table-bordered.editableTable th{border-left-width:0}table.table-bordered.editableTable td:last-child,table.table-bordered.editableTable th:last-child{border-right-width:0}table.table-bordered.editableTable tbody td,table.table-bordered.editableTable tbody th{border-bottom-width:0}table.editableTable>tbody>tr.child{padding:.5em 1em}table.editableTable>tbody>tr.child:hover{background:transparent!important}table.editableTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.editableTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.editableTable>tbody>tr.child ul li:first-child{padding-top:0}table.editableTable>tbody>tr.child ul li:last-child{border-bottom:none}table.editableTable>tbody>tr.can-edit{cursor:pointer}table.editableTable .actions{width:70px}table.editableTable .actions a{margin-left:10px}table.editableTable .actions a .delete-icon:hover{color:#da0000!important}table.editableTable .actions a .fa:hover{color:#024c85}
@@ -0,0 +1 @@
1
+ table.dataTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap td,table.dataTable.nowrap th{white-space:nowrap}table.dataTable thead>tr>td.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc{padding-right:30px}table.dataTable thead>tr>td:active,table.dataTable thead>tr>th:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.dataTable thead .sorting:after{content:"\e150";opacity:.2}table.dataTable thead .sorting_asc:after{content:"\e155"}table.dataTable thead .sorting_desc:after{content:"\e156"}table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.dataTable{border-collapse:separate!important}table.table-bordered.dataTable td,table.table-bordered.dataTable th{border-left-width:0}table.table-bordered.dataTable td:last-child,table.table-bordered.dataTable th:last-child{border-right-width:0}table.table-bordered.dataTable tbody td,table.table-bordered.dataTable tbody th{border-bottom-width:0}table.dataTable>tbody>tr.child{padding:.5em 1em}table.dataTable>tbody>tr.child:hover{background:transparent!important}table.dataTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.dataTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.dataTable>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable>tbody>tr.child ul li:last-child{border-bottom:none}table.dataTable>tbody>tr.can-edit{cursor:pointer}table.dataTable .actions{width:70px}table.dataTable .actions a{margin-left:10px}table.dataTable .actions a .delete-icon:hover{color:#da0000!important}table.dataTable .actions a .fa:hover{color:#024c85}
@@ -0,0 +1 @@
1
+ table.sortableTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.sortableTable td,table.sortableTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.sortableTable td.sortableTables_empty,table.sortableTable th.sortableTables_empty{text-align:center}table.sortableTable.nowrap td,table.sortableTable.nowrap th{white-space:nowrap}table.sortableTable thead>tr>td.sorting,table.sortableTable thead>tr>td.sorting_asc,table.sortableTable thead>tr>td.sorting_desc,table.sortableTable thead>tr>th.sorting,table.sortableTable thead>tr>th.sorting_asc,table.sortableTable thead>tr>th.sorting_desc{padding-right:30px}table.sortableTable thead>tr>td:active,table.sortableTable thead>tr>th:active{outline:none}table.sortableTable thead .sorting,table.sortableTable thead .sorting_asc,table.sortableTable thead .sorting_asc_disabled,table.sortableTable thead .sorting_desc,table.sortableTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.sortableTable thead .sorting:after,table.sortableTable thead .sorting_asc:after,table.sortableTable thead .sorting_asc_disabled:after,table.sortableTable thead .sorting_desc:after,table.sortableTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.sortableTable thead .sorting:after{content:"\e150";opacity:.2}table.sortableTable thead .sorting_asc:after{content:"\e155"}table.sortableTable thead .sorting_desc:after{content:"\e156"}table.sortableTable thead .sorting_asc_disabled:after,table.sortableTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.sortableTable{border-collapse:separate!important}table.table-bordered.sortableTable td,table.table-bordered.sortableTable th{border-left-width:0}table.table-bordered.sortableTable td:last-child,table.table-bordered.sortableTable th:last-child{border-right-width:0}table.table-bordered.sortableTable tbody td,table.table-bordered.sortableTable tbody th{border-bottom-width:0}table.sortableTable>tbody>tr.child{padding:.5em 1em}table.sortableTable>tbody>tr.child:hover{background:transparent!important}table.sortableTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.sortableTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.sortableTable>tbody>tr.child ul li:first-child{padding-top:0}table.sortableTable>tbody>tr.child ul li:last-child{border-bottom:none}table.sortableTable>tbody>tr.can-edit{cursor:pointer}table.sortableTable .actions{width:70px}table.sortableTable .actions a{margin-left:10px}table.sortableTable .actions a .delete-icon:hover{color:#da0000!important}table.sortableTable .actions a .fa:hover{color:#024c85}.sortable-table-box{margin-top:20px}
@@ -0,0 +1 @@
1
+ table.dataTable{clear:both;margin-bottom:6px!important;margin-top:6px!important;max-width:none!important}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap td,table.dataTable.nowrap th{white-space:nowrap}table.dataTable thead>tr>td.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc{padding-right:30px}table.dataTable thead>tr>td:active,table.dataTable thead>tr>th:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_desc_disabled:after{bottom:8px;display:block;font-family:Glyphicons Halflings;opacity:.5;position:absolute;right:8px}table.dataTable thead .sorting:after{content:"\e150";opacity:.2}table.dataTable thead .sorting_asc:after{content:"\e155"}table.dataTable thead .sorting_desc:after{content:"\e156"}table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{color:#eee}table.table-bordered.dataTable{border-collapse:separate!important}table.table-bordered.dataTable td,table.table-bordered.dataTable th{border-left-width:0}table.table-bordered.dataTable td:last-child,table.table-bordered.dataTable th:last-child{border-right-width:0}table.table-bordered.dataTable tbody td,table.table-bordered.dataTable tbody th{border-bottom-width:0}table.dataTable>tbody>tr.child{padding:.5em 1em}table.dataTable>tbody>tr.child:hover{background:transparent!important}table.dataTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.dataTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.dataTable>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable>tbody>tr.child ul li:last-child{border-bottom:none}table.dataTable>tbody>tr.can-edit{cursor:pointer}table.dataTable .actions{width:70px}table.dataTable .actions a{margin-left:10px}table.dataTable .actions a .delete-icon:hover{color:#da0000!important}table.dataTable .actions a .fa:hover{color:#024c85}
package/lib/i18n.js ADDED
@@ -0,0 +1 @@
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,(function(){return(()=>{"use strict";var e={6793:(e,r,o)=>{o.d(r,{getCurrentUserLanguage:()=>t});o(8362),o(6530);const t=()=>{let e="en";return"undefined"!=typeof navigator&&(e=navigator.languages&&navigator.languages[0]||navigator.language||navigator.userLanguage),e}},8362:e=>{e.exports=require("moment-timezone")},6530:e=>{e.exports=require("urijs")}},r={};function o(t){var s=r[t];if(void 0!==s)return s.exports;var a=r[t]={exports:{}};return e[t](a,a.exports,o),a.exports}(()=>{o.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return o.d(r,{a:r}),r}})(),(()=>{o.d=(e,r)=>{for(var t in r)o.o(r,t)&&!o.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}})(),(()=>{o.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r)})(),(()=>{o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var t={};return(()=>{o.r(t);var e=o(6793);const r=require("i18n-react");var s=o.n(r);const a={en:JSON.parse('{"errors":{"user_not_authz":"Hold on. Your user is not authorized!.","session_expired":"Hold on. Your session expired!.","server_error":"There was a problem with our server, please contact admin."},"general":{"select_summit":"Select a Summit...","add":"Add","clear":"Clear","remove":"Remove","drop_files":"Drop images or click to select files to upload.","search":"Search","save":"Save","done":"Done!","drag_and_drop":"Drag and Drop to sort items.","other":"Other","type_something":"Type something and press tab or enter.","are_you_sure":"Are you sure?","yes_delete":"Yes, delete.","remove_warning":"Are you sure you want to delete this?"}}'),zh:JSON.parse('{"errors":{"user_not_authz":"坚持,稍等。您的用户未经授权!","session_expired":"坚持,稍等。你的会话已经过期了!","server_error":"我们的服务器出现问题,请联系管理员。"},"general":{"select_summit":"选择峰会...","add":"加","clear":"明确","remove":"去掉","drop_files":"删除图像或单击以选择要上载的文件。","search":"搜索","save":"保存","done":"完成!","drag_and_drop":"拖放以对项目进行排序。","other":"其他","type_something":"输入内容并按Tab键或输入。","are_you_sure":"你确定吗?","yes_delete":"是的,删除。","remove_warning":"你确定要删除这个吗?"}}'),es:JSON.parse('{"errors":{"user_not_authz":"Hold on. Your user is not authorized!.","session_expired":"Hold on. Your session expired!.","server_error":"There was a problem with our server, please contact admin."},"general":{"select_summit":"Select a Summit...","add":"Add","clear":"Clear","remove":"Remove","drop_files":"Drop images or click to select files to upload.","search":"Search","save":"Save","done":"Done!","drag_and_drop":"Drag and Drop to sort items.","other":"Other","type_something":"Type something and press tab or enter.","are_you_sure":"Are you sure?","yes_delete":"Yes, delete.","remove_warning":"Are you sure you want to delete this?"}}')};let n=(0,e.getCurrentUserLanguage)();n.length>2&&(n=n.split("-")[0],n=n.split("_")[0]);try{s().setTexts(a[n])}catch(e){s().setTexts(a.en)}})(),t})()}));
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(function(){return(()=>{"use strict";var e={4341:(e,t,o)=>{o(4656),o(4054),o(6793),o(8576)},8576:(e,t,o)=>{o.d(t,{RESPONSE_TYPE_CODE:()=>m,RESPONSE_TYPE_IMPLICIT:()=>y,doLogin:()=>v,emitAccessToken:()=>P,getOAuth2Flow:()=>E,validateIdToken:()=>L});var r=o(6793);o(4824);const n=require("browser-tabs-lock");var i=o.n(n),s=o(6530),c=o.n(s),l=o(3856),d=o.n(l);o(4341);const u=require("crypto-js/sha256");var p=o.n(u);const _=require("crypto-js/enc-base64url");var f=o.n(_);const w=require("crypto-js/enc-hex");var h=o.n(w);const g=65536,k="undefined"!=typeof window?window.crypto||window.msCrypto:null;new(i());const y="token id_token",m="code",O="nonce",b="pkce",S=e=>{let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",o="";for(let r=0;r<e;r++)o+=t.charAt(Math.floor(Math.random()*t.length));return o},v=(e=null,t=null,o=null)=>{let n=((e=null,t=null,o=null,n=null)=>{let i=I(),a=(0,r.getAuthCallback)(),s=x(),l=j(),d=E();null!=e&&(a+=`?BackUrl=${encodeURI(e)}`);let u=S(16);(0,r.putOnLocalStorage)(O,u);let p=c()(`${s}/oauth2/auth`),_={response_type:encodeURI(d),scope:encodeURI(l),nonce:u,response_mode:"fragment",client_id:encodeURI(i),redirect_uri:encodeURI(a)};if(d===m){const e=T();(0,r.putOnLocalStorage)(b,JSON.stringify(e)),_.code_challenge=e.codeChallenge,_.code_challenge_method="S256",_.approval_prompt="force"}return t&&(_.prompt=t),l&&l.includes("offline_access")&&(_.prompt="consent"),o&&(_.id_token_hint=o),n&&(_.provider=n),p=p.query(_),p})(e,o,null,t);(0,r.getCurrentLocation)().replace(n.toString())},T=()=>{const e=(0,r.base64URLEncode)((e=>{if(e>4294967295)throw new RangeError("requested too many random bytes");const t=Buffer.allocUnsafe(e);if(!k)return a;if(e>0)if(e>g)for(let o=0;o<e;o+=g)k.getRandomValues(t.slice(o,o+g));else k.getRandomValues(t);return t})(64));return{codeVerifier:e,codeChallenge:((e,t="hex")=>{let o=h();return"Base64url"===t&&(o=f()),p()(e).toString(o)})(e,"Base64url"),createdAt:new Date}},P=async(e,t=null)=>{let o=x(),n=I(),i=(0,r.getAuthCallback)(),a=JSON.parse((0,r.getFromLocalStorage)(b,!0));null!=t&&(i+=`?BackUrl=${encodeURI(t)}`);const s={code:e,grant_type:"authorization_code",code_verifier:a.codeVerifier,client_id:encodeURI(n),redirect_uri:encodeURI(i)};try{const e=await fetch(`${o}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(s)}).catch((function(e){console.log("Request failed:",e.message)})),t=await e.json();let{access_token:r,refresh_token:n,id_token:i,expires_in:a,error:c,error_description:l}=t;return{access_token:r,refresh_token:n,id_token:i,expires_in:a,error:c,error_description:l}}catch(e){console.log(e)}},I=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,E=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",x=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null,j=()=>"undefined"!=typeof window?window.SCOPES:null,L=(e,t,o)=>{let n=new(d())({issuer:t,audience:o}),i=(0,r.getFromLocalStorage)(O,!0),a=n.decode(e),s=(a.header.alg,a.header.kid,a.payload.aud),c=a.payload.iss;a.payload.exp,a.payload.nbf;return(a.payload.nonce||null)==i&&s==o&&c==t}},4054:(e,t,o)=>{o(4824),o(6530),o(271),o(4656),o(6793),o(4341),o(8576);const r=e=>t=>({type:e,payload:t});r("RESET_LOADING"),r("START_LOADING"),r("STOP_LOADING")},6793:(e,t,o)=>{o.d(t,{base64URLEncode:()=>d,getAuthCallback:()=>r,getCurrentHref:()=>a,getCurrentLocation:()=>n,getCurrentPathName:()=>i,getFromLocalStorage:()=>c,putOnLocalStorage:()=>s});o(8362),o(6530);const r=()=>"undefined"!=typeof window?`${window.location.origin}/auth/callback`:null,n=()=>{let e="";return"undefined"!=typeof window&&(e=window.location,window.top&&(e=window.top.location)),e},i=()=>"undefined"!=typeof window?window.location.pathname:null,a=()=>"undefined"!=typeof window?window.location.href:null,s=(e,t)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,t)},c=(e,t)=>{if("undefined"!=typeof window){let o=window.localStorage.getItem(e);return t&&(console.log(`getFromLocalStorage removing key ${e}`),l(e)),o}return null},l=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},d=e=>e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}(()=>{o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t}})(),(()=>{o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var r={};return(()=>{o.r(r),o.d(r,{default:()=>p});const e=require("react");var t=o.n(e),n=o(6530),i=o.n(n),a=o(8576),s=o(6793);function c(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,r)}return o}function l(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?c(Object(o),!0).forEach((function(t){d(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):c(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function d(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}class u extends t().Component{constructor(e,t,o){super(o),this.state={id_token_is_valid:!0,error:null,error_description:null,issuer:e,audience:t,accessToken:null,flow:(0,a.getOAuth2Flow)()}}_implicitFlow(){const{access_token:e,id_token:t,session_state:o,error:r,error_description:n,expires_in:i}=this.extractHashParams();if(r)return void this.setState(l(l({},this.state),{},{error:r,error_description:n}));if(!e)return void(0,a.doLogin)((0,s.getCurrentPathName)());const c=!!t&&(0,a.validateIdToken)(t,this.state.issuer,this.state.audience);this.setState(l(l({},this.state),{},{id_token_is_valid:c,error:c?null:"Invalid Token",error_description:c?null:"Invalid Token",accessToken:e})),e&&c&&(this.props.onUserAuth(e,t,o,i),"undefined"!=typeof window&&window.location!==window.parent.location&&(console.log("AbstractAuthorizationCallbackRoute::_implicitFlow running inside iframe, sending auth state to parent"),window.parent.postMessage(JSON.stringify({action:"SET_AUTH_INFO_SILENTLY",access_token:e,id_token:t,session_state:o,expires_in:i}),window.location.origin)))}_codeFlow(){const{code:e,session_state:t,error:o,error_description:r}=this.extractHashParams();if(o)return void this.setState(l(l({},this.state),{},{error:o,error_description:r}));if(!e)return void(0,a.doLogin)((0,s.getCurrentPathName)());let n=i()((0,s.getCurrentHref)()).search(!0),c=n.hasOwnProperty("BackUrl")?n.BackUrl:null;(0,a.emitAccessToken)(e,c).then((e=>{let{id_token:n,access_token:i,refresh_token:s,expires_in:c,error:d,error_description:u}=e;if(d)return void this.setState(l(l({},this.state),{},{error:d,error_description:u}));const p=!!n&&(0,a.validateIdToken)(n,this.state.issuer,this.state.audience);this.setState(l(l({},this.state),{},{id_token_is_valid:p,accessToken:i,error:p?o:"Invalid Token",error_description:p?r:"Invalid Token"})),i&&p&&(this.props.onUserAuth(i,n,t,c,s),"undefined"!=typeof window&&window.location!==window.parent.location&&(console.log("AbstractAuthorizationCallbackRoute::_codeFlow running inside iframe, sending auth state to parent"),window.parent.postMessage(JSON.stringify({action:"SET_AUTH_INFO_SILENTLY",access_token:i,id_token:n,session_state:t,expires_in:c,refresh_token:s}),window.location.origin)))}))}componentDidMount(){let{flow:e}=this.state;e!==a.RESPONSE_TYPE_IMPLICIT?e===a.RESPONSE_TYPE_CODE&&this._codeFlow():this._implicitFlow()}extractHashParams(){return i().parseQuery(this.props.location.hash.substr(1))}shouldComponentUpdate(e,t,o){return t.accessToken!==this.state.accessToken||(t.error!==this.state.error||t.id_token_is_valid!==this.state.id_token_is_valid)}componentDidUpdate(e,t,o){if(t.accessToken!==this.state.accessToken){let e=i()((0,s.getCurrentHref)()),t=e.search(!0),o=i().parseQuery(e.fragment());delete o.code,delete o.access_token,delete o.expires_in,delete o.token_type,delete o.scope,delete o.id_token,delete o.session_state;let r=t.hasOwnProperty("BackUrl")?t.BackUrl:"/app";o.lenght>0&&(r+=`#${i().buildQuery(o)}`),this._callback(r)}}_callback(e){}_redirect2Error(e){}render(){let{id_token_is_valid:e,error:t,error_description:o}=this.state;return null!=t?this._redirect2Error(`${t} - ${o}.`):e?null:this._redirect2Error("Token Validation Error - Token is invalid.")}}const p=u})(),r})()}));
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(function(){return(()=>{"use strict";var e={4341:(e,t,r)=>{r.r(t),r.d(t,{CLEAR_SESSION_STATE:()=>w,LOGOUT_USER:()=>p,RECEIVE_USER_INFO:()=>g,REQUEST_USER_INFO:()=>f,SESSION_STATE_STATUS_CHANGED:()=>y,SESSION_STATE_STATUS_ERROR:()=>h,SESSION_STATE_STATUS_UNCHANGED:()=>_,SET_LOGGED_USER:()=>d,UPDATE_SESSION_STATE_STATUS:()=>S,UPDATE_USER_INFO:()=>E,doLogout:()=>m,getUserInfo:()=>T,onUserAuth:()=>O,updateSessionStateStatus:()=>A,updateUserInfo:()=>b});var o=r(4656),n=r.n(o),s=r(4054),i=r(6793),a=r(8576);function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?l(Object(r),!0).forEach((function(t){c(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const d="SET_LOGGED_USER",p="LOGOUT_USER",f="REQUEST_USER_INFO",g="RECEIVE_USER_INFO",w="CLEAR_SESSION_STATE",S="UPDATE_SESSION_STATE_STATUS",_="unchanged",y="changed",h="error",E="UPDATE_USER_INFO",O=(e,t,r,o=0,n=null)=>s=>{(0,a.storeAuthInfo)(e,o,n,t),s({type:d,payload:{sessionState:r}})},m=e=>(t,r)=>{t({type:p,payload:{backUrl:e}})},T=(e="groups",t="",r=null,o=null,l=null)=>async(u,c)=>{let d=(0,i.getAllowedUserGroups)();d=""!==d?d.split(" "):[];let{loggedUserState:p}=c(),{member:w}=p,S=await(0,a.getAccessToken)();if(null!=w)return null!=o&&null!=r&&o.push(r),Promise.resolve();null==l&&(l=s.authErrorHandler),u((0,s.startLoading)());let _={access_token:S,expand:e};return t&&(_.fields=t),(0,s.getRequest)((0,s.createAction)(f),(0,s.createAction)(g),(0,i.buildAPIBaseUrl)("/api/v1/members/me"),l)(_)(u,c).then((()=>{u((0,s.stopLoading)());let{member:e}=c().loggedUserState;if(null==e){let e={title:"ERROR",html:n().translate("errors.user_not_set"),type:"error"};u((0,s.showMessage)(e,a.initLogOut))}if(d.length>0){if(0===e.groups.filter(((e,t)=>d.includes(e.code))).length){let e={title:"ERROR",html:n().translate("errors.user_not_authz"),type:"error"};return void u((0,s.showMessage)(e,a.initLogOut))}}null!=o&&null!=r&&o.push(r)}))},b=e=>(t,r)=>{let{loggedUserState:o}=r(),{member:n}=o;if(null==n)throw Error("Member is not set.");if(e.id!=n.id)throw Error("Member is not the same.");t({type:E,payload:u({},e)})},A=e=>(t,r)=>{t({type:S,payload:{sessionStateStatus:e}})}},8576:(e,t,r)=>{r.d(t,{doLogin:()=>b,getAccessToken:()=>R,initLogOut:()=>C,storeAuthInfo:()=>k});var o=r(6793);r(4824);const n=require("browser-tabs-lock");var s=r.n(n),i=r(6530),l=r.n(i);r(3856),r(4341);const u=require("crypto-js/sha256");var c=r.n(u);const d=require("crypto-js/enc-base64url");var p=r.n(d);const f=require("crypto-js/enc-hex");var g=r.n(f);const w=65536,S="undefined"!=typeof window?window.crypto||window.msCrypto:null;const _=new(s()),y="openstackuicore.lock.getTokenSilently",h="code",E="authInfo",O="nonce",m="pkce",T=e=>{let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let o=0;o<e;o++)r+=t.charAt(Math.floor(Math.random()*t.length));return r},b=(e=null,t=null,r=null)=>{let n=((e=null,t=null,r=null,n=null)=>{let s=v(),i=(0,o.getAuthCallback)(),a=j(),u=x(),c=P();null!=e&&(i+=`?BackUrl=${encodeURI(e)}`);let d=T(16);(0,o.putOnLocalStorage)(O,d);let p=l()(`${a}/oauth2/auth`),f={response_type:encodeURI(c),scope:encodeURI(u),nonce:d,response_mode:"fragment",client_id:encodeURI(s),redirect_uri:encodeURI(i)};if(c===h){const e=A();(0,o.putOnLocalStorage)(m,JSON.stringify(e)),f.code_challenge=e.codeChallenge,f.code_challenge_method="S256",f.approval_prompt="force"}return t&&(f.prompt=t),u&&u.includes("offline_access")&&(f.prompt="consent"),r&&(f.id_token_hint=r),n&&(f.provider=n),p=p.query(f),p})(e,r,null,t);(0,o.getCurrentLocation)().replace(n.toString())},A=()=>{const e=(0,o.base64URLEncode)((e=>{if(e>4294967295)throw new RangeError("requested too many random bytes");const t=Buffer.allocUnsafe(e);if(!S)return a;if(e>0)if(e>w)for(let r=0;r<e;r+=w)S.getRandomValues(t.slice(r,r+w));else S.getRandomValues(t);return t})(64));return{codeVerifier:e,codeChallenge:((e,t="hex")=>{let r=g();return"Base64url"===t&&(r=p()),c()(e).toString(r)})(e,"Base64url"),createdAt:new Date}},R=async()=>{if(await(0,o.retryPromise)((()=>_.acquireLock(y,5e3)),10))try{let e=L();if(!e)throw Error("Missing Auth info.");let{accessToken:t,expiresIn:r,accessTokenUpdatedAt:o,refreshToken:n}=e,s=P(),i=Math.floor(Date.now()/1e3);if(r-=20,i-o>r||null==t){if(console.log("getAccessToken access token expired"),s===h&&N()){if(!n)throw I(),Error("missing Refresh Token");let e=await U(n),{access_token:t,expires_in:r,refresh_token:o}=e;return void 0===o&&(o=null),k(t,r,o),t}throw I(),Error("Access Token Expired.")}return t}finally{await _.releaseLock(y)}throw Error("Lock acquire error.")},U=async e=>{let t=j(),r=v();const n={grant_type:"refresh_token",client_id:encodeURI(r),refresh_token:e};try{const e=await fetch(`${t}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(n)}).then((e=>{if(400===e.status){(0,o.getCurrentPathName)();throw(0,o.setSessionClearingState)(!0),Error(`${e.status} - ${e.statusText}`)}return e})).catch((function(e){throw Error(`Request failed: ${e.message}`)})),r=await e.json();let{access_token:s,refresh_token:i,expires_in:a}=r;return{access_token:s,refresh_token:i,expires_in:a}}catch(e){throw console.log(e),e}},k=(e,t,r=null,n=null)=>{let s=L(),i={accessToken:e,expiresIn:t,accessTokenUpdatedAt:Math.floor(Date.now()/1e3)};null===r&&s&&(r=s.refreshToken),null===n&&s&&(n=s.idToken),r&&(i.refreshToken=r),n&&(i.idToken=n),(0,o.putOnLocalStorage)(E,JSON.stringify(i))},L=()=>{let e=(0,o.getFromLocalStorage)(E,!1);return null===e?null:JSON.parse(e)},I=()=>{if("undefined"!=typeof window)return(0,o.removeFromLocalStorage)(E),(0,o.removeFromLocalStorage)(O),void(0,o.removeFromLocalStorage)(m)},v=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,P=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",N=()=>"undefined"==typeof window||new Boolean(window.OAUTH2_USE_REFRESH_TOKEN||!0),j=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null,x=()=>"undefined"!=typeof window?window.SCOPES:null,C=()=>{(0,o.getCurrentLocation)().replace((e=>{let t=j(),r=v(),n=l()(`${t}/oauth2/end-session`),s=T(16),i=(0,o.getOrigin)()+"/auth/logout";return(0,o.putOnLocalStorage)("post_logout_state",s),n.query({id_token_hint:e,post_logout_redirect_uri:encodeURI(i),client_id:encodeURI(r),state:s})})((()=>{if("undefined"!=typeof window){const e=L();return e?e.idToken:null}return null})()).toString())}},4054:(e,t,r)=>{r.d(t,{authErrorHandler:()=>E,createAction:()=>w,getRequest:()=>O,showMessage:()=>b,startLoading:()=>S,stopLoading:()=>_});var o=r(4824),n=r.n(o),s=r(6530),i=r.n(s),a=r(271),l=r.n(a),u=r(4656),c=r.n(u),d=r(6793),p=r(4341),f=r(8576);let g=n();const w=e=>t=>({type:e,payload:t}),S=(w("RESET_LOADING"),w("START_LOADING")),_=w("STOP_LOADING"),y={},h=e=>0===Object.keys(e).length&&e.constructor===Object,E=(e,t)=>(t,r)=>{let o=e.status,n="";switch(t(_()),o){case 403:let r={title:"ERROR",html:c().translate("errors.user_not_authz"),type:"error"};t(b(r,f.initLogOut));break;case 401:let o=(0,d.getCurrentPathName)(),a=(0,d.isClearingSessionState)();t({type:p.CLEAR_SESSION_STATE,payload:{}}),a||((0,d.setSessionClearingState)(!0),console.log("authErrorHandler 401 - re login"),(0,f.doLogin)(o));break;case 404:n="",n=e.response.body&&e.response.body.message?e.response.body.message:e.response.error&&e.response.error.message?e.response.error.message:e.message,l().fire("Not Found",n,"warning");break;case 412:for(var[s,i]of Object.entries(e.response.body.errors))isNaN(s)&&(n+=s+": "),n+=i+"<br>";l().fire("Validation error",n,"warning"),t({type:"VALIDATE",payload:{errors:e.response.body.errors}});break;default:l().fire("ERROR",c().translate("errors.server_error"),"error")}},O=(e,t,r,o=m,n={})=>(s={})=>(a,l)=>{let u=i()(r);h(s)||(u=u.query(s));let c=u.toString();return e&&"function"==typeof e&&a(e(n)),(e=>{y[e]&&(y[e].abort(),console.log(`aborted request ${e}`),delete y[e])})(c),new Promise(((e,r)=>{let n=g.get(u.toString()).timeout({response:6e4,deadline:6e4}).end(T(a,l,t,o,e,r));((e,t)=>{y[e]=t})(c,n)}))},m=(e,t)=>e=>{let r=t.body,o="";r instanceof Object&&r.hasOwnProperty("message")&&(o=r.message),l().fire(t.statusText,o,"error")},T=(e,t,r,o,n,s)=>(i,a)=>{if(i||!a.ok)return o&&o(i,a)(e,t),s({err:i,res:a,dispatch:e,state:t});let l=a.body;return"function"==typeof r?(e(r({response:l})),n({response:l})):(e(r),n({response:l}))},b=(e,t={})=>r=>{r(_()),l().fire(e).then((e=>{e.value&&"function"==typeof t&&t()}))}},6793:(e,t,r)=>{r.d(t,{base64URLEncode:()=>g,buildAPIBaseUrl:()=>l,getAllowedUserGroups:()=>a,getAuthCallback:()=>o,getCurrentLocation:()=>n,getCurrentPathName:()=>i,getFromLocalStorage:()=>c,getOrigin:()=>s,isClearingSessionState:()=>p,putOnLocalStorage:()=>u,removeFromLocalStorage:()=>d,retryPromise:()=>w,setSessionClearingState:()=>f});r(8362),r(6530);const o=()=>"undefined"!=typeof window?`${window.location.origin}/auth/callback`:null,n=()=>{let e="";return"undefined"!=typeof window&&(e=window.location,window.top&&(e=window.top.location)),e},s=()=>"undefined"!=typeof window?window.location.origin:null,i=()=>"undefined"!=typeof window?window.location.pathname:null,a=()=>"undefined"!=typeof window?window.ALLOWED_USER_GROUPS||"":null,l=e=>"undefined"!=typeof window?`${window.API_BASE_URL}${e}`:null``,u=(e,t)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,t)},c=(e,t)=>{if("undefined"!=typeof window){let r=window.localStorage.getItem(e);return t&&(console.log(`getFromLocalStorage removing key ${e}`),d(e)),r}return null},d=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},p=()=>"undefined"!=typeof window&&window.clearing_session_state,f=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},g=e=>e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),w=async(e,t=3)=>{for(let r=0;r<t;r++)if(await e())return!0;return!1}},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var s=t[o]={exports:{}};return e[o](s,s.exports,r),s.exports}return(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),r(4341)})()}));
@@ -0,0 +1 @@
1
+ !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],o):"object"==typeof exports?exports["openstack-uicore-foundation"]=o():e["openstack-uicore-foundation"]=o()}(this,(function(){return(()=>{"use strict";var e={4341:(e,o,t)=>{t.d(o,{SET_LOGGED_USER:()=>n});t(4656),t(4054),t(6793),t(8576);const n="SET_LOGGED_USER"},8576:(e,o,t)=>{t.r(o),t.d(o,{ACCESS_TOKEN_SKEW_TIME:()=>E,RESPONSE_TYPE_CODE:()=>R,RESPONSE_TYPE_IMPLICIT:()=>L,clearAccessToken:()=>D,clearAuthInfo:()=>G,doLogin:()=>C,doLoginBasicLogin:()=>j,emitAccessToken:()=>N,getAccessToken:()=>F,getAuthInfo:()=>B,getAuthUrl:()=>v,getIdToken:()=>J,getLogoutUrl:()=>P,getOAuth2ClientId:()=>H,getOAuth2Flow:()=>V,getOAuth2IDPBaseUrl:()=>z,getOAuth2Scopes:()=>W,initLogOut:()=>Y,passwordlessLogin:()=>Z,passwordlessStart:()=>X,refreshAccessToken:()=>$,storeAuthInfo:()=>M,useOAuth2RefreshToken:()=>K,validateIdToken:()=>Q});var n=t(6793),r=t(4824),i=t.n(r);const l=require("browser-tabs-lock");var s=t.n(l),c=t(6530),d=t.n(c),u=t(3856),p=t.n(u),f=t(4341);const w=require("crypto-js/sha256");var g=t.n(w);const h=require("crypto-js/enc-base64url");var _=t.n(h);const y=require("crypto-js/enc-hex");var m=t.n(y);const k=65536,S="undefined"!=typeof window?window.crypto||window.msCrypto:null;let O=i();const T=new(s()),I="openstackuicore.lock.getTokenSilently",E=20,L="token id_token",R="code",U="authInfo",A="nonce",b="pkce",v=(e=null,o=null,t=null,r=null)=>{let i=H(),a=(0,n.getAuthCallback)(),l=z(),s=W(),c=V();null!=e&&(a+=`?BackUrl=${encodeURI(e)}`);let u=x(16);(0,n.putOnLocalStorage)(A,u);let p=d()(`${l}/oauth2/auth`),f={response_type:encodeURI(c),scope:encodeURI(s),nonce:u,response_mode:"fragment",client_id:encodeURI(i),redirect_uri:encodeURI(a)};if(c===R){const e=q();(0,n.putOnLocalStorage)(b,JSON.stringify(e)),f.code_challenge=e.codeChallenge,f.code_challenge_method="S256",f.approval_prompt="force"}return o&&(f.prompt=o),s&&s.includes("offline_access")&&(f.prompt="consent"),t&&(f.id_token_hint=t),r&&(f.provider=r),p=p.query(f),p},P=e=>{let o=z(),t=H(),r=d()(`${o}/oauth2/end-session`),i=x(16),a=(0,n.getOrigin)()+"/auth/logout";return(0,n.putOnLocalStorage)("post_logout_state",i),r.query({id_token_hint:e,post_logout_redirect_uri:encodeURI(a),client_id:encodeURI(t),state:i})},x=e=>{let o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",t="";for(let n=0;n<e;n++)t+=o.charAt(Math.floor(Math.random()*o.length));return t},C=(e=null,o=null,t=null)=>{let r=v(e,t,null,o);(0,n.getCurrentLocation)().replace(r.toString())},j=(e=null)=>{C(e,null,null)},q=()=>{const e=(0,n.base64URLEncode)((e=>{if(e>4294967295)throw new RangeError("requested too many random bytes");const o=Buffer.allocUnsafe(e);if(!S)return a;if(e>0)if(e>k)for(let t=0;t<e;t+=k)S.getRandomValues(o.slice(t,t+k));else S.getRandomValues(o);return o})(64));return{codeVerifier:e,codeChallenge:((e,o="hex")=>{let t=m();return"Base64url"===o&&(t=_()),g()(e).toString(t)})(e,"Base64url"),createdAt:new Date}},N=async(e,o=null)=>{let t=z(),r=H(),i=(0,n.getAuthCallback)(),a=JSON.parse((0,n.getFromLocalStorage)(b,!0));null!=o&&(i+=`?BackUrl=${encodeURI(o)}`);const l={code:e,grant_type:"authorization_code",code_verifier:a.codeVerifier,client_id:encodeURI(r),redirect_uri:encodeURI(i)};try{const e=await fetch(`${t}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(l)}).catch((function(e){console.log("Request failed:",e.message)})),o=await e.json();let{access_token:n,refresh_token:r,id_token:i,expires_in:a,error:s,error_description:c}=o;return{access_token:n,refresh_token:r,id_token:i,expires_in:a,error:s,error_description:c}}catch(e){console.log(e)}},D=async()=>{if(await(0,n.retryPromise)((()=>T.acquireLock(I,5e3)),10))try{let e=B();if(!e)throw Error("Missing Auth info.");let{accessToken:o,expiresIn:t,accessTokenUpdatedAt:n,refreshToken:r}=e;M(null,0,r)}finally{await T.releaseLock(I)}},F=async()=>{if(await(0,n.retryPromise)((()=>T.acquireLock(I,5e3)),10))try{let e=B();if(!e)throw Error("Missing Auth info.");let{accessToken:o,expiresIn:t,accessTokenUpdatedAt:n,refreshToken:r}=e,i=V(),a=Math.floor(Date.now()/1e3);if(t-=E,a-n>t||null==o){if(console.log("getAccessToken access token expired"),i===R&&K()){if(!r)throw G(),Error("missing Refresh Token");let e=await $(r),{access_token:o,expires_in:t,refresh_token:n}=e;return void 0===n&&(n=null),M(o,t,n),o}throw G(),Error("Access Token Expired.")}return o}finally{await T.releaseLock(I)}throw Error("Lock acquire error.")},$=async e=>{let o=z(),t=H();const r={grant_type:"refresh_token",client_id:encodeURI(t),refresh_token:e};try{const e=await fetch(`${o}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(r)}).then((e=>{if(400===e.status){(0,n.getCurrentPathName)();throw(0,n.setSessionClearingState)(!0),Error(`${e.status} - ${e.statusText}`)}return e})).catch((function(e){throw Error(`Request failed: ${e.message}`)})),t=await e.json();let{access_token:i,refresh_token:a,expires_in:l}=t;return{access_token:i,refresh_token:a,expires_in:l}}catch(e){throw console.log(e),e}},M=(e,o,t=null,r=null)=>{let i=B(),a={accessToken:e,expiresIn:o,accessTokenUpdatedAt:Math.floor(Date.now()/1e3)};null===t&&i&&(t=i.refreshToken),null===r&&i&&(r=i.idToken),t&&(a.refreshToken=t),r&&(a.idToken=r),(0,n.putOnLocalStorage)(U,JSON.stringify(a))},B=()=>{let e=(0,n.getFromLocalStorage)(U,!1);return null===e?null:JSON.parse(e)},G=()=>{if("undefined"!=typeof window)return(0,n.removeFromLocalStorage)(U),(0,n.removeFromLocalStorage)(A),void(0,n.removeFromLocalStorage)(b)},J=()=>{if("undefined"!=typeof window){const e=B();return e?e.idToken:null}return null},H=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,V=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",K=()=>"undefined"==typeof window||new Boolean(window.OAUTH2_USE_REFRESH_TOKEN||!0),z=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null,W=()=>"undefined"!=typeof window?window.SCOPES:null,Y=()=>{(0,n.getCurrentLocation)().replace(P(J()).toString())},Q=(e,o,t)=>{let r=new(p())({issuer:o,audience:t}),i=(0,n.getFromLocalStorage)(A,!0),a=r.decode(e),l=(a.header.alg,a.header.kid,a.payload.aud),s=a.payload.iss;a.payload.exp,a.payload.nbf;return(a.payload.nonce||null)==i&&l==t&&s==o},X=e=>{let o=H(),t=W(),r=x(16);(0,n.putOnLocalStorage)(A,r);let i=z(),a=d()(`${i}/oauth2/auth`),l={response_type:"otp",scope:encodeURI(t),nonce:r,client_id:encodeURI(o),connection:e.connection||"email",send:e.send||"code"};return e.hasOwnProperty("email")&&(l.email=encodeURIComponent(e.email)),e.hasOwnProperty("phone_number")&&(l.phone_number=encodeURIComponent(e.phone_number)),O.post(a.toString()).send(l).then((e=>{let o=e.body;return Promise.resolve({response:o})})).catch((e=>Promise.reject(e)))},Z=e=>o=>{let t=H(),n=W(),r=z(),i=d()(`${r}/oauth2/token`);if(!e.hasOwnProperty("otp"))throw Error("otp param is mandatory.");let a={grant_type:"passwordless",connection:e.connection||"email",scope:encodeURI(n),client_id:encodeURI(t),otp:e.otp};return e.hasOwnProperty("email")&&(a.email=encodeURIComponent(e.email)),e.hasOwnProperty("phone_number")&&(a.phone_number=encodeURIComponent(e.phone_number)),O.post(i.toString()).send(a).then((e=>{try{let n=e.body,{access_token:i,expires_in:a,refresh_token:l,id_token:s}=n;if(void 0===l&&(l=null),void 0===s&&(s=null),s&&!Q(s,r,t))throw Error("id token is not valid.");return M(i,a,l,s),o&&o({type:f.SET_LOGGED_USER,payload:{sessionState:null}}),Promise.resolve({response:n})}catch(e){return console.log(e),Promise.reject(e)}})).catch((e=>Promise.reject(e)))}},4054:(e,o,t)=>{t(4824),t(6530),t(271),t(4656),t(6793),t(4341),t(8576);const n=e=>o=>({type:e,payload:o});n("RESET_LOADING"),n("START_LOADING"),n("STOP_LOADING")},6793:(e,o,t)=>{t.d(o,{base64URLEncode:()=>u,getAuthCallback:()=>n,getCurrentLocation:()=>r,getCurrentPathName:()=>a,getFromLocalStorage:()=>s,getOrigin:()=>i,putOnLocalStorage:()=>l,removeFromLocalStorage:()=>c,retryPromise:()=>p,setSessionClearingState:()=>d});t(8362),t(6530);const n=()=>"undefined"!=typeof window?`${window.location.origin}/auth/callback`:null,r=()=>{let e="";return"undefined"!=typeof window&&(e=window.location,window.top&&(e=window.top.location)),e},i=()=>"undefined"!=typeof window?window.location.origin:null,a=()=>"undefined"!=typeof window?window.location.pathname:null,l=(e,o)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,o)},s=(e,o)=>{if("undefined"!=typeof window){let t=window.localStorage.getItem(e);return o&&(console.log(`getFromLocalStorage removing key ${e}`),c(e)),t}return null},c=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},d=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},u=e=>e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),p=async(e,o=3)=>{for(let t=0;t<o;t++)if(await e())return!0;return!1}},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},o={};function t(n){var r=o[n];if(void 0!==r)return r.exports;var i=o[n]={exports:{}};return e[n](i,i.exports,t),i.exports}return(()=>{t.n=e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return t.d(o,{a:o}),o}})(),(()=>{t.d=(e,o)=>{for(var n in o)t.o(o,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:o[n]})}})(),(()=>{t.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o)})(),(()=>{t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),t(8576)})()}));
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(function(){return(()=>{"use strict";var e={4341:(e,t,r)=>{r.d(t,{CLEAR_SESSION_STATE:()=>s,LOGOUT_USER:()=>n,RECEIVE_USER_INFO:()=>a,SESSION_STATE_STATUS_UNCHANGED:()=>u,SET_LOGGED_USER:()=>o,UPDATE_SESSION_STATE_STATUS:()=>i,UPDATE_USER_INFO:()=>l});r(4656),r(4054),r(6793),r(8576);const o="SET_LOGGED_USER",n="LOGOUT_USER",a="RECEIVE_USER_INFO",s="CLEAR_SESSION_STATE",i="UPDATE_SESSION_STATE_STATUS",u="unchanged",l="UPDATE_USER_INFO"},8576:(e,t,r)=>{r.d(t,{clearAuthInfo:()=>c,getIdToken:()=>S,getOAuth2ClientId:()=>d,getOAuth2IDPBaseUrl:()=>p});var o=r(6793);r(4824);const n=require("browser-tabs-lock");var a=r.n(n);r(6530),r(3856),r(4341);require("crypto-js/sha256"),require("crypto-js/enc-base64url"),require("crypto-js/enc-hex"),"undefined"!=typeof window&&(window.crypto||window.msCrypto);new(a());const s="authInfo",i="nonce",u="pkce",l=()=>{let e=(0,o.getFromLocalStorage)(s,!1);return null===e?null:JSON.parse(e)},c=()=>{if("undefined"!=typeof window)return(0,o.removeFromLocalStorage)(s),(0,o.removeFromLocalStorage)(i),void(0,o.removeFromLocalStorage)(u)},S=()=>{if("undefined"!=typeof window){const e=l();return e?e.idToken:null}return null},d=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,p=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null},4054:(e,t,r)=>{r(4824),r(6530),r(271),r(4656),r(6793),r(4341),r(8576);const o=e=>t=>({type:e,payload:t});o("RESET_LOADING"),o("START_LOADING"),o("STOP_LOADING")},6793:(e,t,r)=>{r.d(t,{getFromLocalStorage:()=>o,removeFromLocalStorage:()=>n});r(8362),r(6530);const o=(e,t)=>{if("undefined"!=typeof window){let r=window.localStorage.getItem(e);return t&&(console.log(`getFromLocalStorage removing key ${e}`),n(e)),r}return null},n=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)}},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var a=t[o]={exports:{}};return e[o](a,a.exports,r),a.exports}(()=>{r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t}})(),(()=>{r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var o={};return(()=>{r.r(o),r.d(o,{loggedUserReducer:()=>c});var e=r(4341),t=r(3856),n=r.n(t),a=r(8576);function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){u(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function u(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const l={isLoggedUser:!1,member:null,sessionState:null,backUrl:null,sessionStateStatus:e.SESSION_STATE_STATUS_UNCHANGED},c=(t=l,r)=>{const{type:o,payload:s}=r;let u=(0,a.getOAuth2IDPBaseUrl)(),c=(0,a.getOAuth2ClientId)();switch(o){case e.SET_LOGGED_USER:{let{sessionState:o}=r.payload;return i(i({},t),{},{isLoggedUser:!0,sessionState:o,backUrl:null,sessionStateStatus:e.SESSION_STATE_STATUS_UNCHANGED})}case e.UPDATE_SESSION_STATE_STATUS:{let{sessionStateStatus:e}=r.payload;return i(i({},t),{},{sessionStateStatus:e})}case e.CLEAR_SESSION_STATE:return(0,a.clearAuthInfo)(),i(i({},t),{},{isLoggedUser:!1,sessionState:null,backUrl:null});case e.LOGOUT_USER:return(0,a.clearAuthInfo)(),i(i({},l),{},{backUrl:s.backUrl});case e.RECEIVE_USER_INFO:{let{response:e}=r.payload;if(""!==u&&""!==c){let t=new(n())({issuer:u,audience:c}).decode((0,a.getIdToken)()),r=t.payload.groups||[],o=t.payload.address||{};r=r.map((e=>({id:e.id,title:e.name,description:e.name,code:e.slug,created:e.created_at,last_edited:e.updated_at}))),e=i(i({},e),{},{groups:[...e.groups,...r],address:o})}return i(i({},t),{},{member:e})}case e.UPDATE_USER_INFO:{let e=r.payload;return i(i({},t),{},{member:e})}default:return t}}})(),o})()}));
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(function(){return(()=>{"use strict";var e={4341:(e,t,o)=>{o.d(t,{SESSION_STATE_STATUS_CHANGED:()=>r,SESSION_STATE_STATUS_UNCHANGED:()=>n,doLogout:()=>a,onUserAuth:()=>i,updateSessionStateStatus:()=>c});o(4656),o(4054),o(6793);var s=o(8576);const n="unchanged",r="changed",i=(e,t,o,n=0,r=null)=>i=>{(0,s.storeAuthInfo)(e,n,r,t),i({type:"SET_LOGGED_USER",payload:{sessionState:o}})},a=e=>(t,o)=>{t({type:"LOGOUT_USER",payload:{backUrl:e}})},c=e=>(t,o)=>{t({type:"UPDATE_SESSION_STATE_STATUS",payload:{sessionStateStatus:e}})}},8576:(e,t,o)=>{o.d(t,{getAuthUrl:()=>y,initLogOut:()=>L,storeAuthInfo:()=>k});var s=o(6793);o(4824);const n=require("browser-tabs-lock");var r=o.n(n),i=o(6530),c=o.n(i);o(3856),o(4341);const l=require("crypto-js/sha256");var d=o.n(l);const u=require("crypto-js/enc-base64url");var p=o.n(u);const S=require("crypto-js/enc-hex");var h=o.n(S);const g=65536,f="undefined"!=typeof window?window.crypto||window.msCrypto:null;new(r());const w="code",m="authInfo",_="nonce",O="pkce",y=(e=null,t=null,o=null,n=null)=>{let r=E(),i=(0,s.getAuthCallback)(),a=b(),l=A(),d=C();null!=e&&(i+=`?BackUrl=${encodeURI(e)}`);let u=v(16);(0,s.putOnLocalStorage)(_,u);let p=c()(`${a}/oauth2/auth`),S={response_type:encodeURI(d),scope:encodeURI(l),nonce:u,response_mode:"fragment",client_id:encodeURI(r),redirect_uri:encodeURI(i)};if(d===w){const e=T();(0,s.putOnLocalStorage)(O,JSON.stringify(e)),S.code_challenge=e.codeChallenge,S.code_challenge_method="S256",S.approval_prompt="force"}return t&&(S.prompt=t),l&&l.includes("offline_access")&&(S.prompt="consent"),o&&(S.id_token_hint=o),n&&(S.provider=n),p=p.query(S),p},v=e=>{let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",o="";for(let s=0;s<e;s++)o+=t.charAt(Math.floor(Math.random()*t.length));return o},T=()=>{const e=(0,s.base64URLEncode)((e=>{if(e>4294967295)throw new RangeError("requested too many random bytes");const t=Buffer.allocUnsafe(e);if(!f)return a;if(e>0)if(e>g)for(let o=0;o<e;o+=g)f.getRandomValues(t.slice(o,o+g));else f.getRandomValues(t);return t})(64));return{codeVerifier:e,codeChallenge:((e,t="hex")=>{let o=h();return"Base64url"===t&&(o=p()),d()(e).toString(o)})(e,"Base64url"),createdAt:new Date}},k=(e,t,o=null,n=null)=>{let r=U(),i={accessToken:e,expiresIn:t,accessTokenUpdatedAt:Math.floor(Date.now()/1e3)};null===o&&r&&(o=r.refreshToken),null===n&&r&&(n=r.idToken),o&&(i.refreshToken=o),n&&(i.idToken=n),(0,s.putOnLocalStorage)(m,JSON.stringify(i))},U=()=>{let e=(0,s.getFromLocalStorage)(m,!1);return null===e?null:JSON.parse(e)},E=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,C=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",b=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null,A=()=>"undefined"!=typeof window?window.SCOPES:null,L=()=>{(0,s.getCurrentLocation)().replace((e=>{let t=b(),o=E(),n=c()(`${t}/oauth2/end-session`),r=v(16),i=(0,s.getOrigin)()+"/auth/logout";return(0,s.putOnLocalStorage)("post_logout_state",r),n.query({id_token_hint:e,post_logout_redirect_uri:encodeURI(i),client_id:encodeURI(o),state:r})})((()=>{if("undefined"!=typeof window){const e=U();return e?e.idToken:null}return null})()).toString())}},4054:(e,t,o)=>{o(4824),o(6530),o(271),o(4656),o(6793),o(4341),o(8576);const s=e=>t=>({type:e,payload:t});s("RESET_LOADING"),s("START_LOADING"),s("STOP_LOADING")},6793:(e,t,o)=>{o.d(t,{base64URLEncode:()=>l,getAuthCallback:()=>s,getCurrentLocation:()=>n,getFromLocalStorage:()=>a,getOrigin:()=>r,putOnLocalStorage:()=>i});o(8362),o(6530);const s=()=>"undefined"!=typeof window?`${window.location.origin}/auth/callback`:null,n=()=>{let e="";return"undefined"!=typeof window&&(e=window.location,window.top&&(e=window.top.location)),e},r=()=>"undefined"!=typeof window?window.location.origin:null,i=(e,t)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,t)},a=(e,t)=>{if("undefined"!=typeof window){let o=window.localStorage.getItem(e);return t&&(console.log(`getFromLocalStorage removing key ${e}`),c(e)),o}return null},c=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},l=e=>e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},t={};function o(s){var n=t[s];if(void 0!==n)return n.exports;var r=t[s]={exports:{}};return e[s](r,r.exports,o),r.exports}(()=>{o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t}})(),(()=>{o.d=(e,t)=>{for(var s in t)o.o(t,s)&&!o.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})}})(),(()=>{o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var s={};return(()=>{o.r(s),o.d(s,{default:()=>h});const e=require("react");var t=o.n(e);const n=require("react-redux");var r=o(4341),i=o(8576),a=o(6530),c=o.n(a);function l(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,s)}return o}function d(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?l(Object(o),!0).forEach((function(t){u(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):l(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function u(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}const p=18e5;class S extends t().Component{constructor(e){super(e),this.state={opFrame_src:"",rpCheckSessionStateFrame_src:""},this.receiveMessage=this.receiveMessage.bind(this),this.receiveMessageFromChild=this.receiveMessageFromChild.bind(this),this.setTimer=this.setTimer.bind(this),this.checkSession=this.checkSession.bind(this),this.onSetupCheckSessionRP=this.onSetupCheckSessionRP.bind(this),this.rpCheckSessionStateFrameOnLoad=this.rpCheckSessionStateFrameOnLoad.bind(this),this.opFrame=null,this.rpCheckSessionStateFrame=null,this.setOPFrameRef=e=>{this.opFrame=e},this.setCheckSessionStateFrameRef=e=>{this.rpCheckSessionStateFrame=e},this.interval=null}componentWillUnmount(){try{this.interval&&(window.clearInterval(this.interval),this.interval=null),window.removeEventListener("message",this.receiveMessageFromChild,!1),window.removeEventListener("message",this.receiveMessage,!1)}catch(e){console.log(e)}}componentDidMount(){if(this.props.isLoggedUser&&"undefined"!=typeof window){if(window.location!==window.parent.location)return;this.onSetupCheckSessionRP()}}rpCheckSessionStateFrameOnLoad(e){let t=e.target;if(""==this.state.rpCheckSessionStateFrame_src)return;if(!t.contentDocument)return;window.removeEventListener("message",this.receiveMessageFromChild,!1);let o=new(c())(t.contentDocument.URL);console.log("OPSessionChecker::rpCheckSessionStateFrameOnLoad - resultUrl "+o);let s=o.search(!0),n=c().parseQuery(o.fragment()),a=null;if(s.hasOwnProperty("error")&&(a=s.error),n.hasOwnProperty("error")&&(a=n.error),a)return console.log("OPSessionChecker::rpCheckSessionStateFrameOnLoad - error "+a),void(0,i.initLogOut)();this.props.updateSessionStateStatus(r.SESSION_STATE_STATUS_UNCHANGED)}componentDidUpdate(e){if(this.props.sessionStateStatus!==e.sessionStateStatus){if(this.props.sessionStateStatus===r.SESSION_STATE_STATUS_CHANGED){let e=(0,i.getAuthUrl)(null,"none");return void(""==this.state.rpCheckSessionStateFrame_src&&this.setState(d(d({},this.state),{},{opFrame_src:"",rpCheckSessionStateFrame_src:e.toString()})))}if(this.props.sessionStateStatus===r.SESSION_STATE_STATUS_UNCHANGED)return void this.onSetupCheckSessionRP()}this.props.sessionState!==e.sessionState&&(console.log(`OPSessionChecker::componentDidUpdate updated session state ${this.props.sessionState}`),this.onSetupCheckSessionRP())}checkSession(){let e=new Date;if(console.log(`OPSessionChecker::checkSession now ${e.toLocaleString()}`),null==this.opFrame)return;if(null==this.props.sessionState)return;if(null==this.props.clientId)return;let t=this.props.idpBaseUrl,o=this.opFrame.contentWindow,s=this.props.clientId+" "+this.props.sessionState;o.postMessage(s,t)}setTimer(e){e.target;""!=this.state.opFrame_src&&this.props.isLoggedUser&&this.props.sessionStateStatus===r.SESSION_STATE_STATUS_UNCHANGED&&"undefined"!=typeof window&&(console.log("OPSessionChecker::setTimer setting interval 1800000"),this.interval=window.setInterval(this.checkSession,p))}onSetupCheckSessionRP(){if(null==this.opFrame)return;window.addEventListener("message",this.receiveMessage,!1);const e=`${this.props.idpBaseUrl}/oauth2/check-session`;""==this.state.opFrame_src&&this.setState(d(d({},this.state),{},{opFrame_src:e,rpCheckSessionStateFrame_src:""}))}receiveMessageFromChild(e){if("string"==typeof e.data||e.data instanceof String)try{let t=JSON.parse(e.data);t.hasOwnProperty("action")&&"SET_AUTH_INFO_SILENTLY"==t.action&&(window.removeEventListener("message",this.receiveMessageFromChild,!1),this.props.onUserAuth(t.access_token,t.id_token,t.session_state,t.expires_in,t.hasOwnProperty("refresh_token")?t.refresh_token:null))}catch(e){console.log(e)}}receiveMessage(e){if(e.origin!==this.props.idpBaseUrl)return;let t=e.data;return this.props.sessionStateStatus===r.SESSION_STATE_STATUS_UNCHANGED&&this.props.isLoggedUser&&t===r.SESSION_STATE_STATUS_CHANGED?(console.log("OPSessionChecker::receiveMessage - session state has changed on OP"),"undefined"!=typeof window&&window.clearInterval(this.interval),this.interval=null,window.addEventListener("message",this.receiveMessageFromChild,!1),window.removeEventListener("message",this.receiveMessage,!1),void this.props.updateSessionStateStatus(r.SESSION_STATE_STATUS_CHANGED)):void 0}render(){return this.props.isLoggedUser&&this.props.sessionState?"undefined"!=typeof window&&window.location!==window.parent.location?null:t().createElement("div",{style:{height:"0px"}},t().createElement("iframe",{ref:this.setOPFrameRef,id:"OPFrame",onLoad:this.setTimer,src:this.state.opFrame_src,style:{visibility:"hidden",position:"absolute",left:0,top:0,border:"none",width:0,height:0}},">"),t().createElement("iframe",{ref:this.setCheckSessionStateFrameRef,id:"RPCHeckSessionStateFrame",src:this.state.rpCheckSessionStateFrame_src,onLoad:this.rpCheckSessionStateFrameOnLoad,style:{visibility:"hidden",position:"absolute",left:0,top:0,border:"none",width:0,height:0}},">")):null}}const h=(0,n.connect)((({loggedUserState:e})=>({sessionState:e.sessionState,isLoggedUser:e.isLoggedUser,sessionStateStatus:e.sessionStateStatus})),{doLogout:r.doLogout,updateSessionStateStatus:r.updateSessionStateStatus,onUserAuth:r.onUserAuth})(S)})(),s})()}));
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(function(){return(()=>{"use strict";var e={4341:(e,t,n)=>{n.d(t,{CLEAR_SESSION_STATE:()=>o});n(4656),n(4054),n(6793),n(8576);const o="CLEAR_SESSION_STATE"},8576:(e,t,n)=>{n.d(t,{doLogin:()=>b,initLogOut:()=>I});var o=n(6793);n(4824);const r=require("browser-tabs-lock");var i=n.n(r),s=n(6530),l=n.n(s);n(3856),n(4341);const u=require("crypto-js/sha256");var d=n.n(u);const c=require("crypto-js/enc-base64url");var p=n.n(c);const f=require("crypto-js/enc-hex");var g=n.n(f);const w=65536,y="undefined"!=typeof window?window.crypto||window.msCrypto:null;new(i());const S="code",h="authInfo",m="nonce",_="pkce",R=e=>{let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n="";for(let o=0;o<e;o++)n+=t.charAt(Math.floor(Math.random()*t.length));return n},b=(e=null,t=null,n=null)=>{let r=((e=null,t=null,n=null,r=null)=>{let i=L(),s=(0,o.getAuthCallback)(),a=A(),u=C(),d=k();null!=e&&(s+=`?BackUrl=${encodeURI(e)}`);let c=R(16);(0,o.putOnLocalStorage)(m,c);let p=l()(`${a}/oauth2/auth`),f={response_type:encodeURI(d),scope:encodeURI(u),nonce:c,response_mode:"fragment",client_id:encodeURI(i),redirect_uri:encodeURI(s)};if(d===S){const e=E();(0,o.putOnLocalStorage)(_,JSON.stringify(e)),f.code_challenge=e.codeChallenge,f.code_challenge_method="S256",f.approval_prompt="force"}return t&&(f.prompt=t),u&&u.includes("offline_access")&&(f.prompt="consent"),n&&(f.id_token_hint=n),r&&(f.provider=r),p=p.query(f),p})(e,n,null,t);(0,o.getCurrentLocation)().replace(r.toString())},E=()=>{const e=(0,o.base64URLEncode)((e=>{if(e>4294967295)throw new RangeError("requested too many random bytes");const t=Buffer.allocUnsafe(e);if(!y)return a;if(e>0)if(e>w)for(let n=0;n<e;n+=w)y.getRandomValues(t.slice(n,n+w));else y.getRandomValues(t);return t})(64));return{codeVerifier:e,codeChallenge:((e,t="hex")=>{let n=g();return"Base64url"===t&&(n=p()),d()(e).toString(n)})(e,"Base64url"),createdAt:new Date}},O=()=>{let e=(0,o.getFromLocalStorage)(h,!1);return null===e?null:JSON.parse(e)},L=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,k=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",A=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null,C=()=>"undefined"!=typeof window?window.SCOPES:null,I=()=>{(0,o.getCurrentLocation)().replace((e=>{let t=A(),n=L(),r=l()(`${t}/oauth2/end-session`),i=R(16),s=(0,o.getOrigin)()+"/auth/logout";return(0,o.putOnLocalStorage)("post_logout_state",i),r.query({id_token_hint:e,post_logout_redirect_uri:encodeURI(s),client_id:encodeURI(n),state:i})})((()=>{if("undefined"!=typeof window){const e=O();return e?e.idToken:null}return null})()).toString())}},4054:(e,t,n)=>{n.r(t),n.d(t,{CLEAR_MESSAGE:()=>_,GENERIC_ERROR:()=>w,RESET_LOADING:()=>y,SHOW_MESSAGE:()=>R,START_LOADING:()=>S,STOP_LOADING:()=>h,VALIDATE:()=>m,authErrorHandler:()=>C,createAction:()=>b,defaultErrorHandler:()=>N,deleteRequest:()=>v,downloadFileByContent:()=>H,escapeFilterValue:()=>$,fetchErrorHandler:()=>U,fetchResponseHandler:()=>D,getCSV:()=>F,getRawCSV:()=>V,getRequest:()=>I,postFile:()=>x,postRequest:()=>T,putFile:()=>j,putRequest:()=>q,resetLoading:()=>E,responseHandler:()=>P,showMessage:()=>G,showSuccessMessage:()=>M,startLoading:()=>O,stopLoading:()=>L});var o=n(4824),r=n.n(o),i=n(6530),s=n.n(i),a=n(271),l=n.n(a),u=n(4656),d=n.n(u),c=n(6793),p=n(4341),f=n(8576);let g=r();const w="Yikes. Something seems to be broken. Our web team has been notified, and we apologize for the inconvenience.",y="RESET_LOADING",S="START_LOADING",h="STOP_LOADING",m="VALIDATE",_="CLEAR_MESSAGE",R="SHOW_MESSAGE",b=e=>t=>({type:e,payload:t}),E=b(y),O=b(S),L=b(h),k={},A=e=>0===Object.keys(e).length&&e.constructor===Object,C=(e,t)=>(t,n)=>{let o=e.status,r="";switch(t(L()),o){case 403:let n={title:"ERROR",html:d().translate("errors.user_not_authz"),type:"error"};t(G(n,f.initLogOut));break;case 401:let o=(0,c.getCurrentPathName)(),a=(0,c.isClearingSessionState)();t({type:p.CLEAR_SESSION_STATE,payload:{}}),a||((0,c.setSessionClearingState)(!0),console.log("authErrorHandler 401 - re login"),(0,f.doLogin)(o));break;case 404:r="",r=e.response.body&&e.response.body.message?e.response.body.message:e.response.error&&e.response.error.message?e.response.error.message:e.message,l().fire("Not Found",r,"warning");break;case 412:for(var[i,s]of Object.entries(e.response.body.errors))isNaN(i)&&(r+=i+": "),r+=s+"<br>";l().fire("Validation error",r,"warning"),t({type:m,payload:{errors:e.response.body.errors}});break;default:l().fire("ERROR",d().translate("errors.server_error"),"error")}},I=(e,t,n,o=N,r={})=>(i={})=>(a,l)=>{let u=s()(n);A(i)||(u=u.query(i));let d=u.toString();return e&&"function"==typeof e&&a(e(r)),(e=>{k[e]&&(k[e].abort(),console.log(`aborted request ${e}`),delete k[e])})(d),new Promise(((e,n)=>{let r=g.get(u.toString()).timeout({response:6e4,deadline:6e4}).end(P(a,l,t,o,e,n));((e,t)=>{k[e]=t})(d,r)}))},q=(e,t,n,o,r=N,i={})=>(a={})=>(l,u)=>{let d=s()(n);return A(a)||(d=d.query(a)),e&&"function"==typeof e&&l(e(i)),new Promise(((e,n)=>{null==o&&(o={}),g.put(d.toString()).send(o).end(P(l,u,t,r,e,n))}))},v=(e,t,n,o,r=N,i={})=>a=>(l,u)=>{let d=s()(n);return A(a)||(d=d.query(a)),e&&"function"==typeof e&&l(e(i)),new Promise(((e,n)=>{null==o&&(o={}),g.delete(d).send(o).end(P(l,u,t,r,e,n))}))},T=(e,t,n,o,r=N,i={})=>(a={})=>(l,u)=>{let d=s()(n);return A(a)||(d=d.query(a)),e&&"function"==typeof e&&l(e(i)),new Promise(((e,n)=>{let i=g.post(d);null!=o?i.send(o):i.set("Content-Type","text/plain"),i.end(P(l,u,t,r,e,n))}))},x=(e,t,n,o,r={},i=N,a={})=>(l={})=>(u,d)=>{let c=s()(n);return A(l)||(c=c.query(l)),e&&"function"==typeof e&&u(e(a)),new Promise(((e,n)=>{const s=g.post(c).attach("file",o);A(r)||Object.keys(r).forEach((function(e){let t=r[e];s.field(e,t)})),s.end(P(u,d,t,i,e,n))}))},j=(e,t,n,o=null,r={},i=N,a={})=>(l={})=>(u,d)=>{let c=s()(n);return A(l)||(c=c.query(l)),e&&"function"==typeof e&&u(e(a)),new Promise(((e,n)=>{const s=g.put(c);null!=o&&s.attach("file",o),A(r)||Object.keys(r).forEach((function(e){let t=r[e];s.field(e,t)})),s.end(P(u,d,t,i,e,n))}))},N=(e,t)=>e=>{let n=t.body,o="";n instanceof Object&&n.hasOwnProperty("message")&&(o=n.message),l().fire(t.statusText,o,"error")},P=(e,t,n,o,r,i)=>(s,a)=>{if(s||!a.ok)return o&&o(s,a)(e,t),i({err:s,res:a,dispatch:e,state:t});let l=a.body;return"function"==typeof n?(e(n({response:l})),r({response:l})):(e(n),r({response:l}))},U=e=>{let t=e.status,n=e.statusText;switch(t){case 403:l().fire("ERROR",d().translate("errors.user_not_authz"),"warning");break;case 401:l().fire("ERROR",d().translate("errors.session_expired"),"error");break;case 412:l().fire("ERROR",n,"warning");case 500:l().fire("ERROR",d().translate("errors.server_error"),"error")}},D=e=>{if(e.ok)return e.json();throw e},G=(e,t={})=>n=>{n(L()),l().fire(e).then((e=>{e.value&&"function"==typeof t&&t()}))},M=e=>t=>{t(L()),l().fire({title:d().translate("general.done"),html:e,type:"success"})},H=(e,t,n)=>{let o=document.createElement("a");o.textContent="download",o.download=e,o.href=`data:${n},${encodeURIComponent(t)}`,document.body.appendChild(o),o.click(),document.body.removeChild(o)},F=(e,t,n,o=null)=>r=>{let i=s()(e);return A(t)||(i=i.query(t)),r(O()),fetch(i.toString()).then((e=>{if(e.ok)return e.text();throw e})).then((e=>{r(L()),o&&(e=o+"\r\r"+e),H(n,e,"text/csv;charset=utf-8")})).catch(U)},V=(e,t,n=null)=>{let o=s()(e);return A(t)||(o=o.query(t)),fetch(o.toString()).then((e=>{if(e.ok)return e.text();throw e})).then((e=>(n&&(e=n+"\r\r"+e),e))).catch(U)},$=e=>e=(e=e.replace(/,/g,"\\,")).replace(/;/g,"\\;")},6793:(e,t,n)=>{n.d(t,{base64URLEncode:()=>p,getAuthCallback:()=>o,getCurrentLocation:()=>r,getCurrentPathName:()=>s,getFromLocalStorage:()=>l,getOrigin:()=>i,isClearingSessionState:()=>d,putOnLocalStorage:()=>a,setSessionClearingState:()=>c});n(8362),n(6530);const o=()=>"undefined"!=typeof window?`${window.location.origin}/auth/callback`:null,r=()=>{let e="";return"undefined"!=typeof window&&(e=window.location,window.top&&(e=window.top.location)),e},i=()=>"undefined"!=typeof window?window.location.origin:null,s=()=>"undefined"!=typeof window?window.location.pathname:null,a=(e,t)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,t)},l=(e,t)=>{if("undefined"!=typeof window){let n=window.localStorage.getItem(e);return t&&(console.log(`getFromLocalStorage removing key ${e}`),u(e)),n}return null},u=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},d=()=>"undefined"!=typeof window&&window.clearing_session_state,c=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},p=e=>e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var i=t[o]={exports:{}};return e[o](i,i.exports,n),i.exports}return(()=>{n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t}})(),(()=>{n.d=(e,t)=>{for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}})(),(()=>{n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),n(4054)})()}));
@@ -0,0 +1 @@
1
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],e):"object"==typeof exports?exports["openstack-uicore-foundation"]=e():t["openstack-uicore-foundation"]=e()}(this,(function(){return(()=>{"use strict";var t={};(()=>{t.d=(e,r)=>{for(var o in r)t.o(r,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})}})(),(()=>{t.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e)})(),(()=>{t.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}})();var e={};function r(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,o)}return r}function o(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}t.r(e),t.d(e,{default:()=>i});class i{constructor(){this.originalHash="",this.hash={}}convertToHash(t){let e=(t=t.substr(1).toLowerCase()).split("&"),r={};for(let t of e){if(t=t.split("="),2!==t.length)continue;let e=t[1].trim();""!==e&&("true"!==e&&"false"!==e||(t[1]="true"==e),r[t[0]]=t[1])}return r}clearParams(){this.originalHash="",this.hash={}}getParam(t){return"undefined"!=typeof window&&this.originalHash!==window.location.hash&&(this.originalHash=window.location.hash,this.hash=this.convertToHash(this.originalHash)),this.hash.hasOwnProperty(t)?this.hash[t]:null}getParams(){return"undefined"!=typeof window&&this.originalHash!==window.location.hash&&(this.originalHash=window.location.hash,this.hash=this.convertToHash(this.originalHash)),function(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?r(Object(i),!0).forEach((function(e){o(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}({},this.hash)}deleteParam(t){var e=this.getParams();this.clearParams();for(let r in e)r!=t&&(this.hash[r]=e[r])}deleteParams(t){var e=this.getParams();this.clearParams();for(let r in e)t.includes(r)||(this.hash[r]=e[r])}setParam(t,e){return"undefined"!=typeof window&&this.originalHash!==window.location.hash&&(this.originalHash=window.location.hash,this.hash=this.convertToHash(this.originalHash)),null!==e&&""!==e?this.hash[t]=e:delete this.hash[t],this}serialize(){let t="";for(let e in this.hash){""!==t&&(t+="&"),t+=e+"="+this.hash[e]}return t}}return e})()}));
@@ -0,0 +1 @@
1
+ !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],o):"object"==typeof exports?exports["openstack-uicore-foundation"]=o():e["openstack-uicore-foundation"]=o()}(this,(function(){return(()=>{"use strict";var e={8362:e=>{e.exports=require("moment-timezone")},6530:e=>{e.exports=require("urijs")}},o={};function n(t){var r=o[t];if(void 0!==r)return r.exports;var i=o[t]={exports:{}};return e[t](i,i.exports,n),i.exports}(()=>{n.n=e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return n.d(o,{a:o}),o}})(),(()=>{n.d=(e,o)=>{for(var t in o)n.o(o,t)&&!n.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:o[t]})}})(),(()=>{n.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o)})(),(()=>{n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var t={};return(()=>{n.r(t),n.d(t,{arraysEqual:()=>L,base64URLEncode:()=>x,buildAPIBaseUrl:()=>h,epochToMoment:()=>l,epochToMomentTimeZone:()=>d,findElementPos:()=>a,formatEpoch:()=>u,getAllowedUserGroups:()=>m,getAuthCallback:()=>c,getBackURL:()=>s,getCurrentHref:()=>y,getCurrentLocation:()=>w,getCurrentPathName:()=>p,getCurrentUserLanguage:()=>k,getFromLocalStorage:()=>v,getOrigin:()=>g,hasErrors:()=>_,isClearingSessionState:()=>O,isEmpty:()=>U,objectToQueryString:()=>f,putOnLocalStorage:()=>b,removeFromLocalStorage:()=>S,retryPromise:()=>T,scrollToError:()=>P,setSessionClearingState:()=>j,shallowEqual:()=>E});var e=n(8362),o=n.n(e),r=n(6530),i=n.n(r);const a=e=>{var o=-70;if(e.offsetParent){do{o+=e.offsetTop}while(e=e.offsetParent);return[o]}},l=e=>e?(e*=1e3,o()(e)):e,d=(e,n)=>e?(e*=1e3,o()(e).tz(n)):e,u=(e,o="M/D/YYYY h:mm a")=>e?l(e).format(o):e,f=e=>{var o="";for(var n in e)""!=o&&(o+="&"),o+=n+"="+encodeURIComponent(e[n]);return o},s=()=>{let e=i()(window.location.href),o=e.search(!0),n=e.fragment(),t=o.hasOwnProperty("BackUrl")?o.BackUrl:null;return null!=n&&""!=n&&(t+=`#${n}`),t},c=()=>"undefined"!=typeof window?`${window.location.origin}/auth/callback`:null,w=()=>{let e="";return"undefined"!=typeof window&&(e=window.location,window.top&&(e=window.top.location)),e},g=()=>"undefined"!=typeof window?window.location.origin:null,p=()=>"undefined"!=typeof window?window.location.pathname:null,y=()=>"undefined"!=typeof window?window.location.href:null,m=()=>"undefined"!=typeof window?window.ALLOWED_USER_GROUPS||"":null,h=e=>"undefined"!=typeof window?`${window.API_BASE_URL}${e}`:null``,b=(e,o)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,o)},v=(e,o)=>{if("undefined"!=typeof window){let n=window.localStorage.getItem(e);return o&&(console.log(`getFromLocalStorage removing key ${e}`),S(e)),n}return null},S=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},O=()=>"undefined"!=typeof window&&window.clearing_session_state,j=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},k=()=>{let e="en";return"undefined"!=typeof navigator&&(e=navigator.languages&&navigator.languages[0]||navigator.language||navigator.userLanguage),e},P=e=>{if(Object.keys(e).length>0){const o=Object.keys(e)[0],n=document.getElementById(o);n&&window.scrollTo(0,a(n))}},_=(e,o)=>e in o?o[e]:"",E=(e,o)=>{const n=Object.keys(e),t=Object.keys(o);if(n.length!==t.length)return!1;for(let t of n)if(e[t]!==o[t])return!1;return!0},L=(e,o)=>e.length===o.length&&e.every(((e,n)=>E(e,o[n]))),U=e=>0===Object.keys(e).length,x=e=>e.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),T=async(e,o=3)=>{for(let n=0;n<o;n++)if(await e())return!0;return!1}})(),t})()}));
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(function(){return(()=>{"use strict";var e={4341:(e,t,n)=>{n(4656),n(4054),n(6793),n(8576)},8576:(e,t,n)=>{n.d(t,{getAccessToken:()=>p});var r=n(6793);n(4824);const o=require("browser-tabs-lock");var a=n.n(o);n(6530),n(3856),n(4341);require("crypto-js/sha256"),require("crypto-js/enc-base64url"),require("crypto-js/enc-hex"),"undefined"!=typeof window&&(window.crypto||window.msCrypto);const s=new(a()),c="openstackuicore.lock.getTokenSilently",l="code",i="authInfo",d="nonce",u="pkce",p=async()=>{if(await(0,r.retryPromise)((()=>s.acquireLock(c,5e3)),10))try{let e=m();if(!e)throw Error("Missing Auth info.");let{accessToken:t,expiresIn:n,accessTokenUpdatedAt:r,refreshToken:o}=e,a=y(),i=Math.floor(Date.now()/1e3);if(n-=20,i-r>n||null==t){if(console.log("getAccessToken access token expired"),a===l&&k()){if(!o)throw g(),Error("missing Refresh Token");let e=await f(o),{access_token:t,expires_in:n,refresh_token:r}=e;return void 0===r&&(r=null),h(t,n,r),t}throw g(),Error("Access Token Expired.")}return t}finally{await s.releaseLock(c)}throw Error("Lock acquire error.")},f=async e=>{let t=$(),n=w();const o={grant_type:"refresh_token",client_id:encodeURI(n),refresh_token:e};try{const e=await fetch(`${t}/oauth2/token`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(o)}).then((e=>{if(400===e.status){(0,r.getCurrentPathName)();throw(0,r.setSessionClearingState)(!0),Error(`${e.status} - ${e.statusText}`)}return e})).catch((function(e){throw Error(`Request failed: ${e.message}`)})),n=await e.json();let{access_token:a,refresh_token:s,expires_in:c}=n;return{access_token:a,refresh_token:s,expires_in:c}}catch(e){throw console.log(e),e}},h=(e,t,n=null,o=null)=>{let a=m(),s={accessToken:e,expiresIn:t,accessTokenUpdatedAt:Math.floor(Date.now()/1e3)};null===n&&a&&(n=a.refreshToken),null===o&&a&&(o=a.idToken),n&&(s.refreshToken=n),o&&(s.idToken=o),(0,r.putOnLocalStorage)(i,JSON.stringify(s))},m=()=>{let e=(0,r.getFromLocalStorage)(i,!1);return null===e?null:JSON.parse(e)},g=()=>{if("undefined"!=typeof window)return(0,r.removeFromLocalStorage)(i),(0,r.removeFromLocalStorage)(d),void(0,r.removeFromLocalStorage)(u)},w=()=>"undefined"!=typeof window?window.OAUTH2_CLIENT_ID:null,y=()=>"undefined"!=typeof window&&window.OAUTH2_FLOW||"token id_token",k=()=>"undefined"==typeof window||new Boolean(window.OAUTH2_USE_REFRESH_TOKEN||!0),$=()=>"undefined"!=typeof window?window.IDP_BASE_URL:null},4054:(e,t,n)=>{n.d(t,{escapeFilterValue:()=>d,fetchErrorHandler:()=>l,fetchResponseHandler:()=>i});n(4824),n(6530);var r=n(271),o=n.n(r),a=n(4656),s=n.n(a);n(6793),n(4341),n(8576);const c=e=>t=>({type:e,payload:t}),l=(c("RESET_LOADING"),c("START_LOADING"),c("STOP_LOADING"),e=>{let t=e.status,n=e.statusText;switch(t){case 403:o().fire("ERROR",s().translate("errors.user_not_authz"),"warning");break;case 401:o().fire("ERROR",s().translate("errors.session_expired"),"error");break;case 412:o().fire("ERROR",n,"warning");case 500:o().fire("ERROR",s().translate("errors.server_error"),"error")}}),i=e=>{if(e.ok)return e.json();throw e},d=e=>e=(e=e.replace(/,/g,"\\,")).replace(/;/g,"\\;")},6793:(e,t,n)=>{n.d(t,{buildAPIBaseUrl:()=>o,getCurrentPathName:()=>r,getFromLocalStorage:()=>s,putOnLocalStorage:()=>a,removeFromLocalStorage:()=>c,retryPromise:()=>i,setSessionClearingState:()=>l});n(8362),n(6530);const r=()=>"undefined"!=typeof window?window.location.pathname:null,o=e=>"undefined"!=typeof window?`${window.API_BASE_URL}${e}`:null``,a=(e,t)=>{"undefined"!=typeof window&&window.localStorage.setItem(e,t)},s=(e,t)=>{if("undefined"!=typeof window){let n=window.localStorage.getItem(e);return t&&(console.log(`getFromLocalStorage removing key ${e}`),c(e)),n}return null},c=e=>{"undefined"!=typeof window&&window.localStorage.removeItem(e)},l=e=>{"undefined"!=typeof window&&(window.clearing_session_state=e)},i=async(e,t=3)=>{for(let n=0;n<t;n++)if(await e())return!0;return!1}},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,n),a.exports}(()=>{n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t}})(),(()=>{n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var r={};return(()=>{n.r(r),n.d(r,{RECEIVE_COUNTRIES:()=>i,geoCodeAddress:()=>E,geoCodeLatLng:()=>U,getCountryList:()=>T,getLanguageList:()=>A,queryAccessLevels:()=>b,queryCompanies:()=>$,queryEventTypes:()=>y,queryEvents:()=>w,queryGroups:()=>k,queryMembers:()=>u,queryOrganizations:()=>v,queryRegistrationCompanies:()=>_,querySpeakers:()=>f,querySponsors:()=>R,querySummits:()=>p,queryTags:()=>h,queryTicketTypes:()=>S,queryTrackGroups:()=>g,queryTracks:()=>m});var e=n(4054),t=n(8576),o=n(6793),a=n(6530),s=n.n(a);const c=require("lodash");var l=n.n(c);const i="RECEIVE_COUNTRIES",d=500,u=l().debounce((async(n,r)=>{const a=await(0,t.getAccessToken)();n=(0,e.escapeFilterValue)(n);let s=encodeURIComponent(`full_name=@${n},first_name=@${n},last_name=@${n},email=@${n}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/members?filter=${s}&expand=tickets,rsvp,schedule_summit_events,all_affiliations&access_token=${a}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];r(t)})).catch(e.fetchErrorHandler)}),d),p=l().debounce((async(n,r)=>{const a=await(0,t.getAccessToken)();n=(0,e.escapeFilterValue)(n);let s=encodeURIComponent(`name=@${n}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/summits/all?filter=${s}&access_token=${a}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];r(t)})).catch(e.fetchErrorHandler)}),d),f=l().debounce((async(n,r,a)=>{const s=await(0,t.getAccessToken)();r=(0,e.escapeFilterValue)(r);let c="/api/v1";n&&(c+=`/summits/${n}`),c+=`/speakers?filter=${encodeURIComponent(`full_name=@${r},first_name=@${r},last_name=@${r},email=@${r}`)}&access_token=${s}&expand=member,registration_request`,fetch((0,o.buildAPIBaseUrl)(c)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d),h=l().debounce((async(n,r,a)=>{const s=await(0,t.getAccessToken)();r=(0,e.escapeFilterValue)(r);let c="/api/v1",l=encodeURIComponent(`tag=@${r}`);c+=n?`/summits/${n}/track-tag-groups/all/allowed-tags?filter=${l}&expand=tag,track_tag_group`:`/tags?filter=${l}`,c+=`&order=tag&page=1&per_page=50&access_token=${s}`,fetch((0,o.buildAPIBaseUrl)(c)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];n&&(t=t.map((e=>e.tag))),a(t)})).catch(e.fetchErrorHandler)}),d),m=l().debounce((async(n,r,a)=>{const s=await(0,t.getAccessToken)();r=(0,e.escapeFilterValue)(r);let c=encodeURIComponent(`name=@${r}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/summits/${n}/tracks?filter=${c}&order=name&access_token=${s}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d),g=l().debounce((async(n,r,a)=>{const s=await(0,t.getAccessToken)();let c=(r=(0,e.escapeFilterValue)(r))?encodeURIComponent(`filter=name=@${r}`):"";fetch((0,o.buildAPIBaseUrl)(`/api/v1/summits/${n}/track-groups?order=name&access_token=${s}&${c}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d),w=l().debounce((async(n,r,a=!1,s)=>{const c=await(0,t.getAccessToken)();r=(0,e.escapeFilterValue)(r);let l=`/api/v1/summits/${n}/events`+(a?"/published":""),i=encodeURIComponent(`title=@${r}`);fetch((0,o.buildAPIBaseUrl)(`${l}?filter=${i}&order=title&access_token=${c}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];s(t)})).catch(e.fetchErrorHandler)}),d),y=l().debounce((async(n,r,a,s=null)=>{let c=`/api/v1/summits/${n}/event-types?order=name&access_token=${await(0,t.getAccessToken)()}`;if(r=(0,e.escapeFilterValue)(r)){c+=`&filter[]=${encodeURIComponent(`name=@${r}`)}`}if(s){c+=`&filter[]=${encodeURIComponent(`class_name==${s}`)}`}fetch((0,o.buildAPIBaseUrl)(c)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d),k=l().debounce((async(n,r)=>{const a=await(0,t.getAccessToken)();let s=encodeURIComponent(`title=@${n},code=@${n}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/groups?filter=${s}&access_token=${a}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];r(t)})).catch(e.fetchErrorHandler)}),d),$=l().debounce((async(n,r)=>{const a=await(0,t.getAccessToken)();n=(0,e.escapeFilterValue)(n);let s=encodeURIComponent(`name=@${n}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/companies?filter=${s}&access_token=${a}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];r(t)})).catch(e.fetchErrorHandler)}),d),_=l().debounce((async(n,r,a)=>{let c;try{c=await(0,t.getAccessToken)()}catch(e){return void a(e)}let l=s()(`/api/v1/summits/${n}/registration-companies`);l.addQuery("access_token",c),l.addQuery("order","name"),r&&(r=(0,e.escapeFilterValue)(r),l.addQuery("filter[]",`name=@${r}`)),fetch((0,o.buildAPIBaseUrl)(l.toString())).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d),R=l().debounce((async(n,r,a)=>{const s=await(0,t.getAccessToken)();r=(0,e.escapeFilterValue)(r);let c=encodeURIComponent(`company_name=@${r}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/summits/${n}/sponsors?filter=${c}&expand=company,sponsorship&access_token=${s}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d),b=l().debounce(((n,r,a)=>{let s=(0,t.getAccessToken)();r=(0,e.escapeFilterValue)(r);let c=encodeURIComponent(`name=@${r}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/summits/${n}/access-level-types?filter=${c}&&access_token=${s}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d),v=l().debounce((async(n,r)=>{const a=await(0,t.getAccessToken)();n=(0,e.escapeFilterValue)(n);let s=encodeURIComponent(`name=@${n}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/organizations?filter=${s}&access_token=${a}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];r(t)})).catch(e.fetchErrorHandler)}),d),A=(t,n)=>fetch((0,o.buildAPIBaseUrl)("/api/public/v1/languages"),{signal:n}).then(e.fetchResponseHandler).then((e=>{t(e.data)})).catch(e.fetchErrorHandler),T=(t,n)=>fetch((0,o.buildAPIBaseUrl)("/api/public/v1/countries"),{signal:n}).then(e.fetchResponseHandler).then((e=>{t(e.data)})).catch(e.fetchErrorHandler);var I;const E=e=>(I||(I=new google.maps.Geocoder),new Promise((function(t,n){I.geocode({address:e},(function(e,r){r==google.maps.GeocoderStatus.OK?t(e):n(r)}))}))),U=(e,t)=>{I||(I=new google.maps.Geocoder);var n={lat:parseFloat(e),lng:parseFloat(t)};return new Promise((function(e,t){I.geocode({location:n},(function(n,r){r==google.maps.GeocoderStatus.OK?e(n):t(r)}))}))},S=l().debounce(((n,r,a)=>{let s=(0,t.getAccessToken)();r=(0,e.escapeFilterValue)(r);let c=encodeURIComponent(`name=@${r}`);fetch((0,o.buildAPIBaseUrl)(`/api/v1/summits/${n}/ticket-types?filter=${c}&&access_token=${s}`)).then(e.fetchResponseHandler).then((e=>{let t=[...e.data];a(t)})).catch(e.fetchErrorHandler)}),d)})(),r})()}));
@@ -0,0 +1 @@
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,(function(){return(()=>{"use strict";var e={4341:(e,r,t)=>{t(4656),t(4054),t(6793),t(8576)},8576:(e,r,t)=>{t(6793),t(4824);const o=require("browser-tabs-lock");var n=t.n(o);t(6530),t(3856),t(4341);require("crypto-js/sha256"),require("crypto-js/enc-base64url"),require("crypto-js/enc-hex"),"undefined"!=typeof window&&(window.crypto||window.msCrypto);new(n())},4054:(e,r,t)=>{t.d(r,{CLEAR_MESSAGE:()=>n,SHOW_MESSAGE:()=>i,STOP_LOADING:()=>o});t(4824),t(6530),t(271),t(4656),t(6793),t(4341),t(8576);const o="STOP_LOADING",n="CLEAR_MESSAGE",i="SHOW_MESSAGE",u=e=>r=>({type:e,payload:r});u("RESET_LOADING"),u("START_LOADING"),u(o)},6793:(e,r,t)=>{t(8362),t(6530)},4656:e=>{e.exports=require("i18n-react/dist/i18n-react")},3856:e=>{e.exports=require("idtoken-verifier")},8362:e=>{e.exports=require("moment-timezone")},4824:e=>{e.exports=require("superagent")},271:e=>{e.exports=require("sweetalert2")},6530:e=>{e.exports=require("urijs")}},r={};function t(o){var n=r[o];if(void 0!==n)return n.exports;var i=r[o]={exports:{}};return e[o](i,i.exports,t),i.exports}(()=>{t.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return t.d(r,{a:r}),r}})(),(()=>{t.d=(e,r)=>{for(var o in r)t.o(r,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})}})(),(()=>{t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r)})(),(()=>{t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var o={};return(()=>{t.r(o),t.d(o,{genericReducers:()=>c});var e=t(4054);function r(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function n(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?r(Object(o),!0).forEach((function(r){i(e,r,o[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):r(Object(o)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))}))}return e}function i(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}const u={msg:null,msg_type:null,params:{},loading:!1},c=function(r=u,t={}){switch(t.type){case e.SHOW_MESSAGE:return n(n({},r),{},{msg:t.payload.msg,msg_type:t.payload.msg_type});case e.CLEAR_MESSAGE:return n(n({},r),{},{msg:null});case e.STOP_LOADING:return n(n({},r),{},{loading:!1});default:return r}}})(),o})()}));
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],t):"object"==typeof exports?exports["openstack-uicore-foundation"]=t():e["openstack-uicore-foundation"]=t()}(this,(function(){return(()=>{"use strict";var e={};(()=>{e.d=(t,o)=>{for(var n in o)e.o(o,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:o[n]})}})(),(()=>{e.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{e.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var t={};e.r(t),e.d(t,{default:()=>n});const o=require("react"),n=(e=50,t=130)=>{const n=t,r=e,i=(0,o.useRef)(null),[f,u]=(0,o.useState)({fontSize:r,fontSizePrev:n,fontSizeMax:r,fontSizeMin:n}),{fontSize:c,fontSizeMax:a,fontSizeMin:s,fontSizePrev:S}=f;return(0,o.useEffect)((()=>{const e=Math.abs(c-S)<=5,t=!!i.current&&(i.current.scrollHeight>i.current.offsetHeight||i.current.scrollWidth>i.current.offsetWidth),o=c>S;if(e){if(t){u({fontSize:S<c?S:c-(S-c),fontSizeMax:a,fontSizeMin:s,fontSizePrev:S})}return}let n,r=a,f=s;t?(n=o?S-c:s-c,r=Math.min(a,c)):(n=o?a-c:S-c,f=Math.max(s,c)),u({fontSize:c+n/2,fontSizeMax:r,fontSizeMin:f,fontSizePrev:c})}),[c,a,s,S,i]),{fontSize:`${c}%`,lineHeight:c-10+"%",ref:i}};return t})()}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openstack-uicore-foundation",
3
- "version": "3.0.61",
3
+ "version": "3.0.62",
4
4
  "description": "ui reactjs components for openstack marketing site",
5
5
  "main": "lib/openstack-uicore-foundation.js",
6
6
  "scripts": {