diff --git a/java/code/webapp/WEB-INF/decorators/layout_error.jsp b/java/code/webapp/WEB-INF/decorators/layout_error.jsp index b396b226d266..5198ef7277d5 100644 --- a/java/code/webapp/WEB-INF/decorators/layout_error.jsp +++ b/java/code/webapp/WEB-INF/decorators/layout_error.jsp @@ -45,7 +45,6 @@ - diff --git a/java/code/webapp/WEB-INF/decorators/layout_head.jsp b/java/code/webapp/WEB-INF/decorators/layout_head.jsp index 56a3b58a74fe..21a4dd1c764d 100644 --- a/java/code/webapp/WEB-INF/decorators/layout_head.jsp +++ b/java/code/webapp/WEB-INF/decorators/layout_head.jsp @@ -29,8 +29,6 @@ - - @@ -71,7 +69,6 @@ - diff --git a/java/code/webapp/WEB-INF/pages/common/fragments/schedule-options.jspf b/java/code/webapp/WEB-INF/pages/common/fragments/schedule-options.jspf index d33be9940e8c..7c47d06c3718 100644 --- a/java/code/webapp/WEB-INF/pages/common/fragments/schedule-options.jspf +++ b/java/code/webapp/WEB-INF/pages/common/fragments/schedule-options.jspf @@ -3,7 +3,6 @@ <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> <%@ taglib uri="http://rhn.redhat.com/rhn" prefix="rhn" %> -
@@ -56,11 +55,16 @@ />
-
- +
+
+
diff --git a/java/spacewalk-java.changes.eth.select2 b/java/spacewalk-java.changes.eth.select2 new file mode 100644 index 000000000000..18e05b70e964 --- /dev/null +++ b/java/spacewalk-java.changes.eth.select2 @@ -0,0 +1 @@ +- Remove Select2 diff --git a/testsuite/features/reposync/reference_srv_sync_products_extra.feature b/testsuite/features/reposync/reference_srv_sync_products_extra.feature index b79b45084386..02ab0e22a20b 100644 --- a/testsuite/features/reposync/reference_srv_sync_products_extra.feature +++ b/testsuite/features/reposync/reference_srv_sync_products_extra.feature @@ -37,7 +37,7 @@ Feature: Synchronize extra products in the products page of the Setup Wizard When I follow the left menu "Admin > Setup Wizard > Products" And I wait until I do not see "Loading" text And I enter "Ubuntu" as the filtered product description - And I select "amd64-deb" in the dropdown list of the architecture filter + And I select "amd64-deb" from "product-arch-filter" And I wait until I see "Ubuntu 22.04" text And I select "Ubuntu 22.04" as a product Then I should see the "Ubuntu 22.04" selected diff --git a/testsuite/features/reposync/srv_sync_products.feature b/testsuite/features/reposync/srv_sync_products.feature index 3ef6c12dadf6..77b11ab196d6 100644 --- a/testsuite/features/reposync/srv_sync_products.feature +++ b/testsuite/features/reposync/srv_sync_products.feature @@ -18,7 +18,7 @@ Feature: Synchronize products in the products page of the Setup Wizard And I wait until I do not see "Loading" text And I enter "RHEL or SLES ES" as the filtered product description Then I should see a "RHEL or SLES ES or CentOS 8 Base" text - When I select "x86_64" in the dropdown list of the architecture filter + When I select "x86_64" from "product-arch-filter" Then I should see a "RHEL or SLES ES or CentOS 8 Base" text @scc_credentials diff --git a/testsuite/features/secondary/srv_dist_channel_mapping.feature b/testsuite/features/secondary/srv_dist_channel_mapping.feature index 1a41edd75c98..02b0e6ac093b 100644 --- a/testsuite/features/secondary/srv_dist_channel_mapping.feature +++ b/testsuite/features/secondary/srv_dist_channel_mapping.feature @@ -25,8 +25,8 @@ Feature: Distribution Channel Mapping Then I should see a "Create Distribution Channel Map" text When I enter "SUSE Linux Enterprise Server 15 SP 4" as "os" And I enter "15.5" as "release" - And I select "x86_64" from "architecture" dropdown - And I select "SLE-Product-SLES15-SP4-Pool for x86_64" from "channel_label" dropdown + And I select "x86_64" from "architecture" + And I select "SLE-Product-SLES15-SP4-Pool for x86_64" from "channel_label" And I click on "Create Mapping" Then I should see a "SUSE Linux Enterprise Server 15 SP 4" link in the content area @@ -37,8 +37,8 @@ Feature: Distribution Channel Mapping Then I should see a "Create Distribution Channel Map" text When I enter "openSUSE Leap 15.5" as "os" And I enter "15.5" as "release" - And I select "x86_64" from "architecture" dropdown - And I select "openSUSE Leap 15.5 (x86_64)" from "channel_label" dropdown + And I select "x86_64" from "architecture" + And I select "openSUSE Leap 15.5 (x86_64)" from "channel_label" And I click on "Create Mapping" Then I should see a "openSUSE Leap 15.5" link in the content area @@ -48,8 +48,8 @@ Feature: Distribution Channel Mapping Then I should see a "Create Distribution Channel Map" text When I enter "Ubuntu 22.04.01 LTS" as "os" And I enter "22.04" as "release" - And I select "x86_64" from "architecture" dropdown - And I select "Fake-Base-Channel-Debian-like" from "channel_label" dropdown + And I select "x86_64" from "architecture" + And I select "Fake-Base-Channel-Debian-like" from "channel_label" And I click on "Create Mapping" Then I should see a "Ubuntu 22.04.01 LTS" link in the content area @@ -60,8 +60,8 @@ Feature: Distribution Channel Mapping Then I should see a "Create Distribution Channel Map" text When I enter "SUSE Linux Enterprise Server 15 SP 4 iSeries" as "os" And I enter "15.5" as "release" - And I select "iSeries" from "architecture" dropdown - And I select "Fake-Base-Channel-i586" from "channel_label" dropdown + And I select "iSeries" from "architecture" + And I select "Fake-Base-Channel-i586" from "channel_label" And I click on "Create Mapping" Then I should see a "SUSE Linux Enterprise Server 15 SP 4 iSeries" link in the content area @@ -75,7 +75,7 @@ Feature: Distribution Channel Mapping When I follow "SUSE Linux Enterprise Server 15 SP 4" Then I should see a "Update Distribution Channel Map" text When I enter "SUSE Linux Enterprise Server 15 SP 4 modified" as "os" - And I select "SLE-Product-SLES15-SP4-Pool for x86_64" from "channel_label" dropdown + And I select "SLE-Product-SLES15-SP4-Pool for x86_64" from "channel_label" And I click on "Update Mapping" Then I should see the text "SUSE Linux Enterprise Server 15 SP 4 modified" in the Operating System field And I should see the text "sle-product-sles15-sp4-pool-x86_64" in the Channel Label field @@ -89,7 +89,7 @@ Feature: Distribution Channel Mapping When I follow "openSUSE Leap 15.5" Then I should see a "Update Distribution Channel Map" text When I enter "openSUSE Leap 15.5 modified" as "os" - And I select "openSUSE Leap 15.5 (x86_64)" from "channel_label" dropdown + And I select "openSUSE Leap 15.5 (x86_64)" from "channel_label" And I click on "Update Mapping" Then I should see the text "openSUSE Leap 15.5 modified" in the Operating System field And I should see the text "opensuse_leap15_5-x86_64" in the Channel Label field @@ -101,7 +101,7 @@ Feature: Distribution Channel Mapping And I should see the text "sle-product-sles15-sp4-pool-x86_64" in the Channel Label field When I follow "Ubuntu 22.04.01 LTS" And I enter "Ubuntu 22.04.01 LTS modified" as "os" - And I select "Fake-Base-Channel-Debian-like" from "channel_label" dropdown + And I select "Fake-Base-Channel-Debian-like" from "channel_label" And I click on "Update Mapping" Then I should see the text "Ubuntu 22.04.01 LTS modified" in the Operating System field And I should see the text "fake-base-channel-suse-like" in the Channel Label field @@ -114,7 +114,7 @@ Feature: Distribution Channel Mapping And I should see the text "fake-base-channel-i586" in the Channel Label field When I follow "SUSE Linux Enterprise Server 15 SP 4 iSeries" And I enter "SUSE Linux Enterprise Server 15 SP 4 iSeries modified" as "os" - And I select "Fake-Base-Channel-Debian-like" from "channel_label" dropdown + And I select "Fake-Base-Channel-Debian-like" from "channel_label" And I click on "Update Mapping" Then I should see the text "SUSE Linux Enterprise Server 15 SP 4 iSeries modified" in the Operating System field And I should see the text "fake-base-channel-debian-like" in the Channel Label field diff --git a/testsuite/features/step_definitions/navigation_steps.rb b/testsuite/features/step_definitions/navigation_steps.rb index 504575bff9e8..71f318f347b6 100644 --- a/testsuite/features/step_definitions/navigation_steps.rb +++ b/testsuite/features/step_definitions/navigation_steps.rb @@ -202,15 +202,6 @@ end end -# select an item from any dropdown -When(/^I select "(.*?)" from "([^"]*)" dropdown/) do |selection, label| - # let the the select2js box filter open the hidden options - xpath_query = "//select[@name='#{label}']" - raise ScriptError, "xpath: #{xpath_query} not found" unless find(:xpath, xpath_query).click - # select the desired option - raise ScriptError, "#{label} #{selection} not found" unless find(:xpath, "//select[@name='#{label}']/option[contains(text(), '#{selection}')]").click -end - When(/^I select the parent channel for the "([^"]*)" from "([^"]*)"$/) do |client, from| product_key = $is_container_provider ? 'Fake' : product select(BASE_CHANNEL_BY_CLIENT[product_key][client], from: from, exact: false) diff --git a/testsuite/features/step_definitions/setup_steps.rb b/testsuite/features/step_definitions/setup_steps.rb index 17e3e02de08c..495beeb3a477 100644 --- a/testsuite/features/step_definitions/setup_steps.rb +++ b/testsuite/features/step_definitions/setup_steps.rb @@ -73,14 +73,6 @@ end end -When(/^I select "(.*?)" in the dropdown list of the architecture filter$/) do |architecture| - # let the the select2js box filter open the hidden options - xpath_query = '//div[@id=\'s2id_product-arch-filter\']/ul/li/input' - raise ScriptError, "xpath: #{xpath_query} not found" unless find(:xpath, xpath_query).click - # select the desired option - raise ScriptError, "Architecture #{architecture} not found" unless find(:xpath, "//div[@id='select2-drop']/ul/li/div[contains(text(), '#{architecture}')]").click -end - When(/^I (deselect|select) "([^"]*)" as a product$/) do |select, product| # click on the checkbox to select the product xpath = "//span[contains(text(), '#{product}')]/ancestor::div[contains(@class, 'product-details-wrapper')]/div/input[@type='checkbox']" diff --git a/web/html/javascript/schedule-options.js b/web/html/javascript/schedule-options.js deleted file mode 100644 index c22ddf2137cf..000000000000 --- a/web/html/javascript/schedule-options.js +++ /dev/null @@ -1,34 +0,0 @@ -jQuery(function() { - // load existing action chain data - var combobox = jQuery("#action-chain"); - var actionChains = combobox.data("existing-action-chains"); - - // init widget - combobox.select2({ - width: "20em", - data: actionChains, - createSearchChoice: ifNotFound, - maximumInputLength: 256, - initSelection: function (element, callback) { callback(actionChains[0]); } - }); - - // init initial selection - combobox.select2("val", actionChains[0].id); - - // select radio button when combobox has focus - combobox.on("select2-focus", function(event) { - jQuery("#schedule-by-action-chain").prop("checked", true); - }); - - // returns a new search choice if term is new - function ifNotFound(term, data) { - var matchingChoices = jQuery(data).filter(function() { - return this.text.localeCompare(term) == 0; - }); - - if (matchingChoices.length == 0) { - var sanitizedTerm = term.replace(/[',]/g, ""); - return {id: sanitizedTerm, text: sanitizedTerm}; - } - } -}); diff --git a/web/html/src/branding/css/base/visualization.less b/web/html/src/branding/css/base/visualization.less index 4e84e99279c6..4217781542f4 100644 --- a/web/html/src/branding/css/base/visualization.less +++ b/web/html/src/branding/css/base/visualization.less @@ -7,10 +7,6 @@ display: inline-block; } -.no-bold { - font-weight: normal!important; -} - .inline-icon { i { width: 1em; @@ -49,7 +45,6 @@ #visualization-filter-wrapper { display: none; - overflow-y: auto; background: lighten(@gray-light, 8%); font-size: 0.9em; border: 1px solid #ddd; @@ -83,10 +78,9 @@ vertical-align: top; padding: 3px 10px; > .filter-title { - max-width: 250px; font-weight: bold; - padding: 4px 2px; margin-right: 4px; + margin-bottom: 4px; } label { font-weight: normal; @@ -108,14 +102,6 @@ margin-right: 5px; vertical-align: sub; } - .select2-container-multi .select2-choices .select2-search-field input { - height: 28px; - padding: 2px 4px; - } - .select2-container-multi .select2-choices .select2-search-choice { - margin-top: 4px; - margin-bottom: 1px; - } .toggle-grouping-level i{ margin: 0px 4px; vertical-align: middle; @@ -124,6 +110,32 @@ .grpCriterion { margin-top: 1px; } + + .btn-group { + margin-top: 8px; + display: block; + } + + .combobox { + display: flex; + align-items: center; + gap: 8px; + width: 250px; + margin-top: 4px; + + > form { + flex: 1; + display: block; + + .form-group { + margin: 0 !important; + } + + .help-block { + display: none !important; + } + } + } } select { width: 100%; diff --git a/web/html/src/branding/css/susemanager/components/inputs.less b/web/html/src/branding/css/susemanager/components/inputs.less index 64fa2f239f45..ca655ddff61f 100644 --- a/web/html/src/branding/css/susemanager/components/inputs.less +++ b/web/html/src/branding/css/susemanager/components/inputs.less @@ -50,36 +50,3 @@ select[size] { .input-group-addon { border-color: @eos-bc-gray-700 !important; } - -.select2-container { - padding: 0 !important; -} - -.select2-choices { - border-radius: 0 !important; - border: none !important; - outline: none !important; - box-shadow: none !important; -} - -.select2-search-field { - width: 100%; -} - -.select2-input { - width: 100% !important; - height: @input-height !important; - padding: 8px !important; - border: 1px solid @eos-bc-gray-700 !important; - border-radius: @border-radius-base !important; - - .select2-container-active & { - border-color: @eos-bc-blue-500 !important; - outline: none !important; - } -} - -.select2-drop-active { - border-color: @eos-bc-blue-500 !important; - border-radius: 0 !important; -} diff --git a/web/html/src/build/webpack.config.js b/web/html/src/build/webpack.config.js index 4f46dd5658a9..3d4d32fca480 100644 --- a/web/html/src/build/webpack.config.js +++ b/web/html/src/build/webpack.config.js @@ -64,14 +64,6 @@ module.exports = (env, argv) => { to: path.resolve(__dirname, "../dist/javascript/legacy"), }, // TODO: Take only what we need after we've confirmed it works fine, otherwise there's a lot of fluff in this - { - from: path.resolve(__dirname, "../node_modules/select2"), - to: path.resolve(__dirname, "../dist/javascript/legacy/select2"), - }, - { - from: path.resolve(__dirname, "../node_modules/select2-bootstrap-css/select2-bootstrap.css"), - to: path.resolve(__dirname, "../dist/javascript/legacy/select2"), - }, { from: path.resolve(__dirname, "../node_modules/timepicker/jquery.timepicker.js"), to: path.resolve(__dirname, "../dist/javascript/legacy"), diff --git a/web/html/src/components/action-schedule.tsx b/web/html/src/components/action-schedule.tsx index d3f7e3f73b07..6f3583f9a57d 100644 --- a/web/html/src/components/action-schedule.tsx +++ b/web/html/src/components/action-schedule.tsx @@ -283,7 +283,7 @@ class ActionSchedule extends React.Component diff --git a/web/html/src/components/combobox.tsx b/web/html/src/components/combobox.tsx index 6d17b5224c2e..50ff06c09e28 100644 --- a/web/html/src/components/combobox.tsx +++ b/web/html/src/components/combobox.tsx @@ -16,12 +16,14 @@ export type ComboboxItem = { }; type ComboboxProps = { - id: string; - name: string; - data?: Array; + id?: string; + name?: string; + options?: Array; selectedId?: (number | null | undefined) | (string | null | undefined); onFocus?: () => void; onSelect: (value: ComboboxItem) => void; + getNewOptionData?: (userInput: string, label: string) => { id: string; value: string; label: string }; + placeholder?: string; /** Id for testing purposes */ "data-testid"?: string; @@ -74,7 +76,7 @@ export class Combobox extends React.Component { // The react-select is expecting the value to be a string, but let's keep the original id here so we can propagate // correctly the selected option up. - const options: Array = (this.props.data || []).map((item) => ({ + const options: Array = (this.props.options || []).map((item) => ({ value: item.id.toString(), id: item.id, label: item.text, @@ -91,6 +93,9 @@ export class Combobox extends React.Component { options={options} styles={colourStyles} menuPortalTarget={document.body} + formatCreateLabel={(label: string) => t("Create {label}", { label })} + getNewOptionData={this.props.getNewOptionData} + placeholder={this.props.placeholder} {...testAttributes} /> ); diff --git a/web/html/src/components/input/Form.tsx b/web/html/src/components/input/Form.tsx index e028f647d0d5..73ab54705ac2 100644 --- a/web/html/src/components/input/Form.tsx +++ b/web/html/src/components/input/Form.tsx @@ -8,7 +8,7 @@ type Props = { /** Object storing the data of the form. * Each field name in the form needs to map to a property of this * object. The value is the one displayed in the form */ - model: any; + model?: any; /** Object storing form field errors */ errors?: object; @@ -29,7 +29,7 @@ type Props = { formDirection?: string; /** Children elements of the form. Usually includes fields and a submit button */ - children: React.ReactNode; + children?: React.ReactNode; /** Function called when the model has been changed. * Takes a new model as single parameter. @@ -58,6 +58,7 @@ export const FormContext = React.createContext>({}); export class Form extends React.Component { static defaultProps = { + model: {}, onSubmit: undefined, formRef: undefined, divClass: "", diff --git a/web/html/src/components/picker/recurring-event-picker.tsx b/web/html/src/components/picker/recurring-event-picker.tsx index 2d139ed2e1f4..83041bc8e7a1 100644 --- a/web/html/src/components/picker/recurring-event-picker.tsx +++ b/web/html/src/components/picker/recurring-event-picker.tsx @@ -408,7 +408,7 @@ class RecurringEventPicker extends React.Component @@ -442,7 +442,7 @@ class RecurringEventPicker extends React.Component diff --git a/web/html/src/manager/admin/setup/products/products.tsx b/web/html/src/manager/admin/setup/products/products.tsx index 710242f29b68..1cc3770e91e2 100644 --- a/web/html/src/manager/admin/setup/products/products.tsx +++ b/web/html/src/manager/admin/setup/products/products.tsx @@ -8,6 +8,7 @@ import { AsyncButton, Button } from "components/buttons"; import { CustomDiv } from "components/custom-objects"; import { DangerDialog } from "components/dialog/DangerDialog"; import { Dialog } from "components/dialog/Dialog"; +import { Form, Select } from "components/input"; import { ChannelLink } from "components/links"; import { Messages, MessageType } from "components/messages"; import { Utils as MessagesUtils } from "components/messages"; @@ -34,16 +35,6 @@ declare global { } } -type Instance = JQuery; -type StaticProperties = {}; -type Select2 = ((...args: any[]) => Instance) & StaticProperties; - -declare global { - interface JQuery { - select2: Select2; - } -} - const messageMap = { // Nothing for now }; @@ -506,36 +497,10 @@ class Products extends React.Component { visibleSubList: [] as any[], }; - componentDidMount() { - const currentObject = this; - - //HACK: usage of JQuery here is needed to apply the select2js plugin - jQuery("select#product-arch-filter.apply-select2js-on-this").each(function () { - var select = jQuery(this); - // apply select2js only one time - if (!select.hasClass("select2js-applied")) { - select.addClass("select2js-applied"); - - var select2js = select.select2({ placeholder: t("Filter by architecture") }); - select2js.on("change", function (event) { - currentObject.handleFilterArchChange(select.val() || []); - }); - } - }); - } - - getDistinctArchsFromData = (data) => { - var archs: any[] = []; - Object.keys(data) - .map((id) => data[id]) - .forEach(function (x) { - if (!archs.includes(x.arch)) archs.push(x.arch); - }); - return archs; - }; - - handleFilterArchChange = (archs) => { - this.setState({ archCriteria: archs }); + getDistinctArchsFromData = (data: any[] = []) => { + return Array.from(new Set(data.map((item) => item.arch))) + .filter(Boolean) // Some items don't have an arch set so pick those out + .sort(); }; filterDataByArch = (data: any[]) => { @@ -587,18 +552,16 @@ class Products extends React.Component { render() { const archFilter = (
- + {/* TODO: Remove this
wrapper once https://github.com/SUSE/spacewalk/issues/14250 is implemented */} + + - {Object.keys(_MESSAGE_TYPE).map((id) => ( - - ))} - + {/* TODO: Remove this wrapper once https://github.com/SUSE/spacewalk/issues/14250 is implemented */} + + { + const tree = this.state.tree; + if (!tree) { + return; + } + + const selectedSystemGroups = [...this.state.selectedSystemGroups]; + selectedSystemGroups[index] = value || []; + this.setState({ selectedSystemGroups }); + + tree.preprocessor().groupingConfiguration(selectedSystemGroups); + tree.refresh(); + }} + // + /> +
+ {/* eslint-disable-next-line jsx-a11y/anchor-is-valid */} + { + const tree = this.state.tree; + if (!tree) { + return; + } + + const selectedSystemGroups = [...this.state.selectedSystemGroups]; + selectedSystemGroups.splice(index, 1); + this.setState({ selectedSystemGroups }); + + tree.preprocessor().groupingConfiguration(selectedSystemGroups); + tree.refresh(); + }} + > + + +
+ ); + })} + + ) : null} + +
diff --git a/web/html/src/manager/visualization/ui/components.ts b/web/html/src/manager/visualization/ui/components.ts index 88d89a8fb5df..c2e226984e55 100644 --- a/web/html/src/manager/visualization/ui/components.ts +++ b/web/html/src/manager/visualization/ui/components.ts @@ -1,5 +1,3 @@ -import * as d3 from "d3"; - // D3 UI "components" used for visualization // Add a filter to given selection @@ -21,63 +19,6 @@ function addFilter(targetSelection, caption, placeholder, onInputCallback) { }); } -// Add a checkin-time partitioning selector (date- and timepicker + 'Apply' -// button) -// -// params: -// - anchorId - id of element in DOM where the UI will be added -// - applyCallback - applyCallback receiving picked time and date after user clicks -// the 'Apply' button -// - clearCallback - clearCallback will be executed when the user clicks the "Clear" button -function addCheckinTimePartitioningSelect(anchorId, applyCallback, clearCallback) { - const checkinTimePartitioning = d3.select(anchorId).append("div").attr("class", "filter"); - - checkinTimePartitioning - .append("div") - .attr("class", "filter-title") - .text(t("Partition systems by given check-in time:")); - - const inputGroup = checkinTimePartitioning.append("div").attr("class", "input-group"); - - inputGroup.append("input").attr("type", "text").attr("class", "partitioning-datepicker input-group-addon"); - - inputGroup.append("input").attr("type", "text").attr("class", "partitioning-timepicker input-group-addon"); - - jQuery(anchorId + " .partitioning-datepicker").datepicker({ - autoclose: true, - format: "yyyy-mm-dd", - }); - // TODO: If you touch this code, please use `localizedMoment()` here instead - // eslint-disable-next-line local-rules/no-raw-date - jQuery(anchorId + " .partitioning-datepicker").datepicker("setDate", new Date()); - jQuery(anchorId + " .partitioning-timepicker").timepicker({ timeFormat: "H:i:s", maxTime: "23:30:00" }); - // TODO: If you touch this code, please use `localizedMoment()` here instead - // eslint-disable-next-line local-rules/no-raw-date - jQuery(anchorId + " .partitioning-timepicker").timepicker("setTime", new Date()); - - const checkinPartitioningButtons = checkinTimePartitioning.append("div").attr("class", "btn-group"); - addButton(checkinPartitioningButtons, "Apply", () => { - const date = jQuery(anchorId + " .partitioning-datepicker").datepicker("getDate"); - const time = jQuery(anchorId + " .partitioning-timepicker").timepicker("getTime"); - // TODO: If you touch this code, please use `localizedMoment()` here instead - // eslint-disable-next-line local-rules/no-raw-date - const datetime = new Date( - date.getFullYear(), - date.getMonth(), - date.getDate(), - time.getHours(), - time.getMinutes(), - time.getSeconds() - ); - applyCallback(datetime); - }); - addButton(checkinPartitioningButtons, "Clear", () => { - clearCallback(); - }); - - return checkinTimePartitioning; -} - // Add a checkbox to given selection // // params: @@ -106,136 +47,6 @@ function addCheckbox(targetSelection, caption, icon, classes, callback) { .html((icon ? '' : "") + caption); } -// Simple JS component for selecting groups -// -// Adds an 'Add a grouping level' button, clicking on it appends a new -// multiselect box in the UI. In each of these select boxes, the user can -// specify multiple groups. Selected options are internally stored in the -// 'data' array in the format: -// [['grp1', 'grp2'], // selected groups on the 1st level -// ['grp1', 'grp2'] // selected groups on the 2nd level -// ] -// -// After a selection is changed, 'onChange' will be called with the new data as -// a parameter. -// -// In addition, each selectbox is accompanied by a 'Remove this level' button -// that deletes it from the UI, adjusts the data and fires the onChange -// callback. -// -// input -// - groups: array of possible group names (['grp1', 'grp2']) -// - element: where to hook the UI -// methods -// - onChange: setter/getter for a function that is called after a selection -// is changed or a select box on one level is collapsed -function groupSelector(groups, element) { - const NO_GROUP_LABEL = "** NO GROUP **"; - const data: any[] = []; - let onChange = function (data) { - // Do nothing - }; - groups = Array.from(new Set(groups)); - - function appendAdder() { - element - .append("a") - .attr("href", "#") - .attr("class", "toggle-grouping-level") - .text(t("Add a grouping level")) - .on("click", (d) => { - data.push([]); - update(); - }) - .append("i") - .attr("class", "fa fa-plus"); - } - - function update() { - const updateSection = element.selectAll(".grpCriterion").data(data, (d, i) => i); - - updateSection.exit().remove(); - - const divEnter = updateSection.enter().append("div").attr("class", "grpCriterion"); - - const selectEnter = divEnter - .append("select") - .attr("class", "apply-select2js-on-this") - .attr("multiple", "multiple") - .attr("style", "width: 250px"); - - selectEnter - .selectAll("option") - .data(groups) - .enter() - .append("option") - .attr("value", (d) => d) - .text((d) => d); - - selectEnter.append("option").attr("value", NO_GROUP_LABEL).text(NO_GROUP_LABEL); - - //HACK: usage of JQuery here is needed to apply the select2js plugin - jQuery("select.apply-select2js-on-this").each(function (i) { - var select = jQuery(this); - // apply select2js only one time - if (!select.hasClass("select2js-applied")) { - select.addClass("select2js-applied"); - var select2js = select.select2({ placeholder: t("Select a system group") }); - select2js.on("change", function (event) { - data[i] = select.val() || []; - onChange(data); - }); - - divEnter - .append("a") - .attr("href", "#") - .attr("class", "toggle-grouping-level") - .attr("title", "Remove this level") - .on("click", function () { - data.splice(i, 1); - onChange(data); - update(); - }) - .append("i") - .attr("class", "fa fa-close"); - } else { - // if data is changed, e.g. a level is removed, - // we need to keep aligned data and selected values - if (data[i] != null && data[i].length > 0) { - select.val(data[i]).trigger("change"); - } - } - }); - } - - function my() { - appendAdder(); - } - - my.onChange = function (callback) { - return arguments.length ? ((onChange = callback), my) : onChange; - }; - - return my; -} - -// Add a group selector (see comment for groupSelector) -// -// params: -// - targetSelection - selection where to append the element to -// - groups - all possible groups to appear in the select boxes -// - callback - function called after the state of UI changes (either user -// select a group from the selectbox or they remove the select box for a -// grouping level) -function addGroupSelector(targetSelection, groups, callback) { - const groupingDiv = targetSelection.append("div").attr("class", "filter"); - groupingDiv.append("div").attr("class", "filter-title").text(t("Split into groups")); - - let mySel = groupSelector(groups, groupingDiv); - mySel.onChange(callback); - mySel(); -} - // Add a button with a caption // // params: @@ -264,4 +75,4 @@ function svgTextStyle(container) { textStyle.append("feComposite").attr("in", "SourceGraphic"); } -export { addFilter, addCheckinTimePartitioningSelect, addCheckbox, addGroupSelector, addButton, svgTextStyle }; +export { addFilter, addCheckbox, addButton, svgTextStyle }; diff --git a/web/html/src/package.json b/web/html/src/package.json index e0ea2620a280..ec53c74033dc 100644 --- a/web/html/src/package.json +++ b/web/html/src/package.json @@ -103,8 +103,6 @@ "react-toastify": "6.0.5", "react-virtuoso": "^2.5.1", "regenerator-runtime": "^0.13.7", - "select2": "3.4.5", - "select2-bootstrap-css": "1.4.6", "semver": "^7.3.8", "senna": "^2.7.8", "shelljs": "0.8.5", diff --git a/web/html/src/styleguide/template.js b/web/html/src/styleguide/template.js index b320441b8247..e5bd07a73bca 100644 --- a/web/html/src/styleguide/template.js +++ b/web/html/src/styleguide/template.js @@ -15,8 +15,6 @@ module.exports = { `/fonts/font-spacewalk/css/spacewalk-font.css?cb=${noCache}`, `/css/jquery.timepicker.css?cb=${noCache}`, `/css/bootstrap-datepicker.css?cb=${noCache}`, - `/javascript/select2/select2.css?cb=${noCache}`, - `/javascript/select2/select2-bootstrap.css?cb=${noCache}`, ] .map(relativeToProxyUrl) .map((url) => ({ @@ -29,7 +27,6 @@ module.exports = { // `/javascript/frontend-log.js`, `/javascript/legacy/jquery.min.js?cb=${noCache}`, `/javascript/legacy/bootstrap.min.js?cb=${noCache}`, - `/javascript/select2/select2.js?cb=${noCache}`, `/javascript/spacewalk-essentials.js?cb=${noCache}`, `/javascript/spacewalk-checkall.js?cb=${noCache}`, `/javascript/legacy/jquery.timepicker.js?cb=${noCache}`, diff --git a/web/html/src/utils/datetime/localizedMoment.ts b/web/html/src/utils/datetime/localizedMoment.ts index 860ce3aff9bf..f341ab0aaa3a 100644 --- a/web/html/src/utils/datetime/localizedMoment.ts +++ b/web/html/src/utils/datetime/localizedMoment.ts @@ -225,4 +225,5 @@ function localizedMomentConstructor(input?: moment.MomentInput) { } const localizedMoment: typeof moment = Object.setPrototypeOf(localizedMomentConstructor, moment); +export type LocalizedMoment = ReturnType; export { localizedMoment, parseTimeString }; diff --git a/web/html/src/vendors/npm.licenses.structured.js b/web/html/src/vendors/npm.licenses.structured.js index b0942c9d5234..9a8b20b3e295 100644 --- a/web/html/src/vendors/npm.licenses.structured.js +++ b/web/html/src/vendors/npm.licenses.structured.js @@ -1 +1 @@ -const npmLicensesArray=["MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MPL-2.0","MIT","ISC","LGPL-3.0-or-later","MIT","MIT","MIT","MIT","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","(MPL-2.0 OR Apache-2.0)","BSD-3-Clause","BSD-3-Clause","MIT","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","MIT","MIT","MIT","MIT","BSD-3-Clause","BSD","BSD","BSD","BSD","BSD","BSD","BSD","BSD","BSD","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","MIT","MIT","0BSD","MIT","MIT","MIT"],npmDependencies=[{name:"@babel/polyfill",license:"MIT",version:"7.7.0"},{name:"@babel/runtime",license:"MIT",version:"7.16.3"},{name:"@emotion/cache",license:"MIT",version:"11.4.0"},{name:"@emotion/hash",license:"MIT",version:"0.8.0"},{name:"@emotion/memoize",license:"MIT",version:"0.7.5"},{name:"@emotion/react",license:"MIT",version:"11.4.0"},{name:"@emotion/serialize",license:"MIT",version:"1.0.2"},{name:"@emotion/sheet",license:"MIT",version:"1.0.1"},{name:"@emotion/unitless",license:"MIT",version:"0.7.5"},{name:"@emotion/utils",license:"MIT",version:"1.0.0"},{name:"@emotion/weak-memoize",license:"MIT",version:"0.2.5"},{name:"@formatjs/ecma402-abstract",license:"MIT",version:"1.17.0"},{name:"@formatjs/fast-memoize",license:"MIT",version:"2.2.0"},{name:"@formatjs/icu-messageformat-parser",license:"MIT",version:"2.6.0"},{name:"@formatjs/icu-skeleton-parser",license:"MIT",version:"1.6.0"},{name:"@formatjs/intl",license:"MIT",version:"2.9.0"},{name:"@formatjs/intl-localematcher",license:"MIT",version:"0.4.0"},{name:"@fullcalendar/common",license:"MIT",version:"5.5.1"},{name:"@fullcalendar/core",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/daygrid",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/interaction",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/react",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/timegrid",license:"MIT",version:"5.5.0"},{name:"@hot-loader/react-dom",license:"MIT",version:"17.0.1+4.13.0"},{name:"@novnc/novnc",license:"MPL-2.0",version:"1.1.0"},{name:"@popperjs/core",license:"MIT",version:"2.11.6"},{name:"@seznam/compose-react-refs",license:"ISC",version:"1.0.6"},{name:"@spice-project/spice-html5",license:"LGPL-3.0-or-later",version:"0.2.1"},{name:"@virtuoso.dev/react-urx",license:"MIT",version:"0.2.12"},{name:"@virtuoso.dev/urx",license:"MIT",version:"0.2.12"},{name:"babel-loader",license:"MIT",version:"8.2.2"},{name:"bootstrap",license:"MIT",version:"3.4.1"},{name:"classnames",license:"MIT",version:"2.3.1"},{name:"core-js",license:"MIT",version:"3.8.1"},{name:"css-loader",license:"MIT",version:"2.1.1"},{name:"d3",license:"BSD-3-Clause",version:"4.5.0"},{name:"date-fns",license:"MIT",version:"2.29.3"},{name:"dom-helpers",license:"MIT",version:"5.1.4"},{name:"dompurify",license:"(MPL-2.0 OR Apache-2.0)",version:"3.0.3"},{name:"exenv",license:"BSD-3-Clause",version:"1.2.2"},{name:"hoist-non-react-statics",license:"BSD-3-Clause",version:"3.3.2"},{name:"html-dom-parser",license:"MIT",version:"0.2.3"},{name:"html-react-parser",license:"MIT",version:"0.10.0"},{name:"immer",license:"MIT",version:"9.0.6"},{name:"inline-style-parser",license:"MIT",version:"0.1.1"},{name:"intl-messageformat",license:"BSD-3-Clause",version:"10.5.0"},{name:"ip-regex",license:"MIT",version:"4.3.0"},{name:"jexl",license:"MIT",version:"2.2.2"},{name:"less-loader",license:"MIT",version:"10.2.0"},{name:"lodash",license:"MIT",version:"4.17.21"},{name:"lodash.get",license:"MIT",version:"4.4.2"},{name:"memoize-one",license:"MIT",version:"5.1.1"},{name:"metal",license:"BSD-3-Clause",version:"2.16.8"},{name:"metal-ajax",license:"BSD",version:"2.1.1"},{name:"metal-debounce",license:"BSD",version:"2.0.2"},{name:"metal-dom",license:"BSD",version:"2.16.8"},{name:"metal-events",license:"BSD",version:"2.16.8"},{name:"metal-path-parser",license:"BSD",version:"1.0.4"},{name:"metal-promise",license:"BSD",version:"2.0.1"},{name:"metal-structs",license:"BSD",version:"1.0.2"},{name:"metal-uri",license:"BSD",version:"2.4.0"},{name:"metal-useragent",license:"BSD",version:"3.0.1"},{name:"mini-css-extract-plugin",license:"MIT",version:"2.6.0"},{name:"moment",license:"MIT",version:"2.29.4"},{name:"moment-timezone",license:"MIT",version:"0.5.35"},{name:"node-gettext",license:"MIT",version:"3.0.0"},{name:"object-assign",license:"MIT",version:"4.1.1"},{name:"prop-types",license:"MIT",version:"15.7.2"},{name:"react",license:"MIT",version:"16.14.0"},{name:"react-datepicker",license:"MIT",version:"4.5.0"},{name:"react-fast-compare",license:"MIT",version:"3.2.0"},{name:"react-hot-loader",license:"MIT",version:"4.13.0"},{name:"react-input-autosize",license:"MIT",version:"3.0.0"},{name:"react-is",license:"MIT",version:"16.12.0"},{name:"react-is-mounted-hook",license:"MIT",version:"1.1.2"},{name:"react-lifecycles-compat",license:"MIT",version:"3.0.4"},{name:"react-modal",license:"MIT",version:"3.13.1"},{name:"react-onclickoutside",license:"MIT",version:"6.12.2"},{name:"react-popper",license:"MIT",version:"2.3.0"},{name:"react-property",license:"MIT",version:"1.0.1"},{name:"react-select",license:"MIT",version:"4.3.1"},{name:"react-select-async-paginate",license:"MIT",version:"0.6.0"},{name:"react-toastify",license:"MIT",version:"6.0.5"},{name:"react-transition-group",license:"BSD-3-Clause",version:"4.4.2"},{name:"react-virtuoso",license:"MIT",version:"2.5.1"},{name:"regenerator-runtime",license:"MIT",version:"0.13.5"},{name:"scheduler",license:"MIT",version:"0.20.1"},{name:"senna",license:"BSD-3-Clause",version:"2.7.9"},{name:"sleep-promise",license:"MIT",version:"9.1.0"},{name:"style-loader",license:"MIT",version:"0.23.1"},{name:"style-to-object",license:"MIT",version:"0.3.0"},{name:"stylis",license:"MIT",version:"4.0.10"},{name:"tslib",license:"0BSD",version:"2.1.0"},{name:"use-immer",license:"MIT",version:"0.3.5"},{name:"validator",license:"MIT",version:"13.7.0"},{name:"warning",license:"MIT",version:"4.0.3"}];module.exports={npmLicensesArray,npmDependencies}; \ No newline at end of file +const npmLicensesArray=["MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MPL-2.0","MIT","ISC","LGPL-3.0-or-later","MIT","MIT","MIT","MIT","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","(MPL-2.0 OR Apache-2.0)","BSD-3-Clause","BSD-3-Clause","MIT","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","MIT","MIT","MIT","MIT","BSD-3-Clause","BSD","BSD","BSD","BSD","BSD","BSD","BSD","BSD","BSD","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","MIT","BSD-3-Clause","MIT","MIT","MIT","MIT","0BSD","MIT","MIT","MIT"],npmDependencies=[{name:"@babel/polyfill",license:"MIT",version:"7.7.0"},{name:"@babel/runtime",license:"MIT",version:"7.16.3"},{name:"@emotion/cache",license:"MIT",version:"11.11.0"},{name:"@emotion/hash",license:"MIT",version:"0.9.1"},{name:"@emotion/memoize",license:"MIT",version:"0.8.1"},{name:"@emotion/react",license:"MIT",version:"11.11.1"},{name:"@emotion/serialize",license:"MIT",version:"1.1.2"},{name:"@emotion/sheet",license:"MIT",version:"1.2.2"},{name:"@emotion/unitless",license:"MIT",version:"0.8.1"},{name:"@emotion/use-insertion-effect-with-fallbacks",license:"MIT",version:"1.0.1"},{name:"@emotion/utils",license:"MIT",version:"1.2.1"},{name:"@emotion/weak-memoize",license:"MIT",version:"0.3.1"},{name:"@formatjs/ecma402-abstract",license:"MIT",version:"1.17.0"},{name:"@formatjs/fast-memoize",license:"MIT",version:"2.2.0"},{name:"@formatjs/icu-messageformat-parser",license:"MIT",version:"2.6.0"},{name:"@formatjs/icu-skeleton-parser",license:"MIT",version:"1.6.0"},{name:"@formatjs/intl",license:"MIT",version:"2.9.0"},{name:"@formatjs/intl-localematcher",license:"MIT",version:"0.4.0"},{name:"@fullcalendar/common",license:"MIT",version:"5.5.1"},{name:"@fullcalendar/core",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/daygrid",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/interaction",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/react",license:"MIT",version:"5.5.0"},{name:"@fullcalendar/timegrid",license:"MIT",version:"5.5.0"},{name:"@hot-loader/react-dom",license:"MIT",version:"17.0.1+4.13.0"},{name:"@novnc/novnc",license:"MPL-2.0",version:"1.1.0"},{name:"@popperjs/core",license:"MIT",version:"2.11.6"},{name:"@seznam/compose-react-refs",license:"ISC",version:"1.0.6"},{name:"@spice-project/spice-html5",license:"LGPL-3.0-or-later",version:"0.2.1"},{name:"@virtuoso.dev/react-urx",license:"MIT",version:"0.2.12"},{name:"@virtuoso.dev/urx",license:"MIT",version:"0.2.12"},{name:"babel-loader",license:"MIT",version:"8.2.2"},{name:"bootstrap",license:"MIT",version:"3.4.1"},{name:"classnames",license:"MIT",version:"2.3.1"},{name:"core-js",license:"MIT",version:"3.8.1"},{name:"css-loader",license:"MIT",version:"2.1.1"},{name:"d3",license:"BSD-3-Clause",version:"4.5.0"},{name:"date-fns",license:"MIT",version:"2.29.3"},{name:"dom-helpers",license:"MIT",version:"5.1.4"},{name:"dompurify",license:"(MPL-2.0 OR Apache-2.0)",version:"3.0.3"},{name:"exenv",license:"BSD-3-Clause",version:"1.2.2"},{name:"hoist-non-react-statics",license:"BSD-3-Clause",version:"3.3.2"},{name:"html-dom-parser",license:"MIT",version:"0.2.3"},{name:"html-react-parser",license:"MIT",version:"0.10.0"},{name:"immer",license:"MIT",version:"9.0.6"},{name:"inline-style-parser",license:"MIT",version:"0.1.1"},{name:"intl-messageformat",license:"BSD-3-Clause",version:"10.5.0"},{name:"ip-regex",license:"MIT",version:"4.3.0"},{name:"jexl",license:"MIT",version:"2.2.2"},{name:"less-loader",license:"MIT",version:"10.2.0"},{name:"lodash",license:"MIT",version:"4.17.21"},{name:"lodash.get",license:"MIT",version:"4.4.2"},{name:"memoize-one",license:"MIT",version:"5.2.1"},{name:"metal",license:"BSD-3-Clause",version:"2.16.8"},{name:"metal-ajax",license:"BSD",version:"2.1.1"},{name:"metal-debounce",license:"BSD",version:"2.0.2"},{name:"metal-dom",license:"BSD",version:"2.16.8"},{name:"metal-events",license:"BSD",version:"2.16.8"},{name:"metal-path-parser",license:"BSD",version:"1.0.4"},{name:"metal-promise",license:"BSD",version:"2.0.1"},{name:"metal-structs",license:"BSD",version:"1.0.2"},{name:"metal-uri",license:"BSD",version:"2.4.0"},{name:"metal-useragent",license:"BSD",version:"3.0.1"},{name:"mini-css-extract-plugin",license:"MIT",version:"2.6.0"},{name:"moment",license:"MIT",version:"2.29.4"},{name:"moment-timezone",license:"MIT",version:"0.5.35"},{name:"node-gettext",license:"MIT",version:"3.0.0"},{name:"object-assign",license:"MIT",version:"4.1.1"},{name:"prop-types",license:"MIT",version:"15.7.2"},{name:"react",license:"MIT",version:"16.14.0"},{name:"react-datepicker",license:"MIT",version:"4.5.0"},{name:"react-fast-compare",license:"MIT",version:"3.2.0"},{name:"react-hot-loader",license:"MIT",version:"4.13.0"},{name:"react-input-autosize",license:"MIT",version:"3.0.0"},{name:"react-is",license:"MIT",version:"16.12.0"},{name:"react-is-mounted-hook",license:"MIT",version:"1.1.2"},{name:"react-lifecycles-compat",license:"MIT",version:"3.0.4"},{name:"react-modal",license:"MIT",version:"3.13.1"},{name:"react-onclickoutside",license:"MIT",version:"6.12.2"},{name:"react-popper",license:"MIT",version:"2.3.0"},{name:"react-property",license:"MIT",version:"1.0.1"},{name:"react-select",license:"MIT",version:"4.3.1"},{name:"react-select-async-paginate",license:"MIT",version:"0.6.0"},{name:"react-toastify",license:"MIT",version:"6.0.5"},{name:"react-transition-group",license:"BSD-3-Clause",version:"4.4.2"},{name:"react-virtuoso",license:"MIT",version:"2.5.1"},{name:"regenerator-runtime",license:"MIT",version:"0.13.5"},{name:"scheduler",license:"MIT",version:"0.20.1"},{name:"senna",license:"BSD-3-Clause",version:"2.7.9"},{name:"sleep-promise",license:"MIT",version:"9.1.0"},{name:"style-loader",license:"MIT",version:"0.23.1"},{name:"style-to-object",license:"MIT",version:"0.3.0"},{name:"stylis",license:"MIT",version:"4.2.0"},{name:"tslib",license:"0BSD",version:"2.1.0"},{name:"use-immer",license:"MIT",version:"0.3.5"},{name:"validator",license:"MIT",version:"13.7.0"},{name:"warning",license:"MIT",version:"4.0.3"}];module.exports={npmLicensesArray,npmDependencies}; \ No newline at end of file diff --git a/web/html/src/vendors/npm.licenses.txt b/web/html/src/vendors/npm.licenses.txt index 6f60426348dd..9749f65a0108 100644 --- a/web/html/src/vendors/npm.licenses.txt +++ b/web/html/src/vendors/npm.licenses.txt @@ -61,7 +61,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- -@emotion/cache v11.4.0 +@emotion/cache v11.11.0 https://github.com/emotion-js/emotion/tree/main/packages/cache -------------------------------------------------------------------------------- @@ -89,8 +89,8 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/hash v0.8.0 -https://github.com/emotion-js/emotion/tree/master/packages/hash +@emotion/hash v0.9.1 +https://github.com/emotion-js/emotion/tree/main/packages/hash -------------------------------------------------------------------------------- MIT License @@ -117,8 +117,8 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/memoize v0.7.5 -https://github.com/emotion-js/emotion/tree/master/packages/memoize +@emotion/memoize v0.8.1 +https://github.com/emotion-js/emotion/tree/main/packages/memoize -------------------------------------------------------------------------------- MIT License @@ -145,7 +145,7 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/react v11.4.0 - mitchellhamilton +@emotion/react v11.11.1 - Emotion Contributors https://github.com/emotion-js/emotion/tree/main/packages/react -------------------------------------------------------------------------------- @@ -173,7 +173,7 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/serialize v1.0.2 +@emotion/serialize v1.1.2 https://github.com/emotion-js/emotion/tree/main/packages/serialize -------------------------------------------------------------------------------- @@ -201,8 +201,8 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/sheet v1.0.1 -https://github.com/emotion-js/emotion/tree/master/packages/sheet +@emotion/sheet v1.2.2 +https://github.com/emotion-js/emotion/tree/main/packages/sheet -------------------------------------------------------------------------------- MIT License @@ -229,8 +229,8 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/unitless v0.7.5 -https://github.com/emotion-js/emotion/tree/master/packages/unitless +@emotion/unitless v0.8.1 +https://github.com/emotion-js/emotion/tree/main/packages/unitless -------------------------------------------------------------------------------- MIT License @@ -257,8 +257,8 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/utils v1.0.0 -https://github.com/emotion-js/emotion/tree/master/packages/utils +@emotion/use-insertion-effect-with-fallbacks v1.0.1 +https://github.com/emotion-js/emotion/tree/main/packages/use-insertion-effect-with-fallbacks -------------------------------------------------------------------------------- MIT License @@ -285,8 +285,36 @@ SOFTWARE. -------------------------------------------------------------------------------- -@emotion/weak-memoize v0.2.5 -https://github.com/emotion-js/emotion/tree/master/packages/weak-memoize +@emotion/utils v1.2.1 +https://github.com/emotion-js/emotion/tree/main/packages/utils +-------------------------------------------------------------------------------- + +MIT License + +Copyright (c) Emotion team and other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +-------------------------------------------------------------------------------- +@emotion/weak-memoize v0.3.1 +https://github.com/emotion-js/emotion/tree/main/packages/weak-memoize -------------------------------------------------------------------------------- MIT License @@ -1867,7 +1895,7 @@ terms above. -------------------------------------------------------------------------------- -memoize-one v5.1.1 - Alex Reardon +memoize-one v5.2.1 - Alex Reardon https://github.com/alexreardon/memoize-one.git -------------------------------------------------------------------------------- @@ -3040,7 +3068,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- -stylis v4.0.10 - Sultan Tarimo +stylis v4.2.0 - Sultan Tarimo https://github.com/thysultan/stylis.js -------------------------------------------------------------------------------- diff --git a/web/html/src/yarn.lock b/web/html/src/yarn.lock index 16a7cf066386..4034dc3e3a59 100644 --- a/web/html/src/yarn.lock +++ b/web/html/src/yarn.lock @@ -1451,7 +1451,7 @@ core-js-pure "^3.0.0" regenerator-runtime "^0.13.4" -"@babel/runtime@7.16.3", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.15.4", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": +"@babel/runtime@7.16.3", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": version "7.16.3" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.16.3.tgz#b86f0db02a04187a3c17caa77de69840165d42d5" integrity sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ== @@ -1656,6 +1656,34 @@ resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz#d5e0706cf8c6acd8c6032f8d54070af261bbbb2f" integrity sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA== +"@emotion/babel-plugin@^11.11.0": + version "11.11.0" + resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c" + integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ== + dependencies: + "@babel/helper-module-imports" "^7.16.7" + "@babel/runtime" "^7.18.3" + "@emotion/hash" "^0.9.1" + "@emotion/memoize" "^0.8.1" + "@emotion/serialize" "^1.1.2" + babel-plugin-macros "^3.1.0" + convert-source-map "^1.5.0" + escape-string-regexp "^4.0.0" + find-root "^1.1.0" + source-map "^0.5.7" + stylis "4.2.0" + +"@emotion/cache@^11.11.0": + version "11.11.0" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff" + integrity sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ== + dependencies: + "@emotion/memoize" "^0.8.1" + "@emotion/sheet" "^1.2.2" + "@emotion/utils" "^1.2.1" + "@emotion/weak-memoize" "^0.3.1" + stylis "4.2.0" + "@emotion/cache@^11.4.0": version "11.4.0" resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.4.0.tgz#293fc9d9a7a38b9aad8e9337e5014366c3b09ac0" @@ -1667,60 +1695,86 @@ "@emotion/weak-memoize" "^0.2.5" stylis "^4.0.3" -"@emotion/hash@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413" - integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow== +"@emotion/hash@^0.9.1": + version "0.9.1" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" + integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== "@emotion/memoize@^0.7.4": version "0.7.5" resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50" integrity sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ== +"@emotion/memoize@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" + integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== + "@emotion/react@^11.1.1": - version "11.4.0" - resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.4.0.tgz#2465ad7b073a691409b88dfd96dc17097ddad9b7" - integrity sha512-4XklWsl9BdtatLoJpSjusXhpKv9YVteYKh9hPKP1Sxl+mswEFoUe0WtmtWjxEjkA51DQ2QRMCNOvKcSlCQ7ivg== - dependencies: - "@babel/runtime" "^7.13.10" - "@emotion/cache" "^11.4.0" - "@emotion/serialize" "^1.0.2" - "@emotion/sheet" "^1.0.1" - "@emotion/utils" "^1.0.0" - "@emotion/weak-memoize" "^0.2.5" + version "11.11.1" + resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157" + integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA== + dependencies: + "@babel/runtime" "^7.18.3" + "@emotion/babel-plugin" "^11.11.0" + "@emotion/cache" "^11.11.0" + "@emotion/serialize" "^1.1.2" + "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" + "@emotion/utils" "^1.2.1" + "@emotion/weak-memoize" "^0.3.1" hoist-non-react-statics "^3.3.1" -"@emotion/serialize@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.0.2.tgz#77cb21a0571c9f68eb66087754a65fa97bfcd965" - integrity sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A== +"@emotion/serialize@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" + integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA== dependencies: - "@emotion/hash" "^0.8.0" - "@emotion/memoize" "^0.7.4" - "@emotion/unitless" "^0.7.5" - "@emotion/utils" "^1.0.0" + "@emotion/hash" "^0.9.1" + "@emotion/memoize" "^0.8.1" + "@emotion/unitless" "^0.8.1" + "@emotion/utils" "^1.2.1" csstype "^3.0.2" -"@emotion/sheet@^1.0.0", "@emotion/sheet@^1.0.1": +"@emotion/sheet@^1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.0.1.tgz#245f54abb02dfd82326e28689f34c27aa9b2a698" integrity sha512-GbIvVMe4U+Zc+929N1V7nW6YYJtidj31lidSmdYcWozwoBIObXBnaJkKNDjZrLm9Nc0BR+ZyHNaRZxqNZbof5g== -"@emotion/unitless@^0.7.5": - version "0.7.5" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" - integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== +"@emotion/sheet@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec" + integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== + +"@emotion/unitless@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" + integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== + +"@emotion/use-insertion-effect-with-fallbacks@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" + integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== "@emotion/utils@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.0.0.tgz#abe06a83160b10570816c913990245813a2fd6af" integrity sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA== +"@emotion/utils@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" + integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== + "@emotion/weak-memoize@^0.2.5": version "0.2.5" resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46" integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA== +"@emotion/weak-memoize@^0.3.1": + version "0.3.1" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6" + integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== + "@eslint/eslintrc@^0.4.3": version "0.4.3" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" @@ -3714,6 +3768,15 @@ babel-plugin-jest-hoist@^27.4.0: "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" +babel-plugin-macros@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" + integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== + dependencies: + "@babel/runtime" "^7.12.5" + cosmiconfig "^7.0.0" + resolve "^1.19.0" + babel-plugin-polyfill-corejs2@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz#440f1b70ccfaabc6b676d196239b138f8a2cfba5" @@ -4539,6 +4602,11 @@ convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: dependencies: safe-buffer "~5.1.1" +convert-source-map@^1.5.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== + convert-source-map@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" @@ -4657,6 +4725,17 @@ cosmiconfig@^6.0.0: path-type "^4.0.0" yaml "^1.7.2" +cosmiconfig@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" @@ -6343,6 +6422,11 @@ find-cache-dir@^3.3.1: make-dir "^3.0.2" pkg-dir "^4.1.0" +find-root@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== + find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -7427,6 +7511,13 @@ is-callable@^1.2.4: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== +is-core-module@^2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db" + integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== + dependencies: + has "^1.0.3" + is-core-module@^2.2.0: version "2.4.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.4.0.tgz#8e9fc8e15027b011418026e98f0e6f4d86305cc1" @@ -8903,9 +8994,9 @@ memfs@^3.1.2, memfs@^3.2.2: fs-monkey "1.0.3" memoize-one@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.1.1.tgz#047b6e3199b508eaec03504de71229b8eb1d75c0" - integrity sha512-HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA== + version "5.2.1" + resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.2.1.tgz#8337aa3c4335581839ec01c3d594090cebe8f00e" + integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q== memory-fs@^0.4.1: version "0.4.1" @@ -10191,7 +10282,7 @@ prompts@^2.4.2: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: +prop-types@^15.5.10, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== @@ -10200,6 +10291,15 @@ prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, object-assign "^4.1.1" react-is "^16.8.1" +prop-types@^15.5.8: + version "15.8.1" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.13.1" + proxy-addr@~2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" @@ -10458,6 +10558,11 @@ react-is-mounted-hook@^1.1.2: resolved "https://registry.yarnpkg.com/react-is-mounted-hook/-/react-is-mounted-hook-1.1.2.tgz#0e57d237c0ed60f6a8dc0520634608a80ae864ff" integrity sha512-yjq3Tj34CiFcdVOS/h6JerWLOLdJqEGKMNpTHc4kWebzz2YtIpgqMRrqxdmQhewM1KJREojdAV2tsNvBsUWyhA== +react-is@^16.13.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + react-is@^16.7.0, react-is@^16.8.1: version "16.12.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c" @@ -11003,6 +11108,15 @@ resolve@^1.14.2: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" +resolve@^1.19.0: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + resolve@^1.20.0, resolve@^1.9.0: version "1.21.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.21.0.tgz#b51adc97f3472e6a5cf4444d34bc9d6b9037591f" @@ -11223,16 +11337,6 @@ select-hose@^2.0.0: resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -select2-bootstrap-css@1.4.6: - version "1.4.6" - resolved "https://registry.yarnpkg.com/select2-bootstrap-css/-/select2-bootstrap-css-1.4.6.tgz#5cfb68246f5299ca1858e01efd788804c734997e" - integrity sha512-BBsisfivUYjwhj3QdWNS15sBqC/DHoszRC4B3GIzJwMNO1pT1uVvwDm5u2TLXi7oj/3S4vIeQ6yAuMa86d7c9A== - -select2@3.4.5: - version "3.4.5" - resolved "https://registry.yarnpkg.com/select2/-/select2-3.4.5.tgz#c0555ed77da22b1d402ec9e1a69687abc15e747a" - integrity sha512-M+XNsLYyQ8oML8cRqqcPWuRs90gOxbS0O+OZtZycJ8ybJuJ1m/B/I3DJ5HlLWEXH1s6rZPsa0j2392XWdOQAaQ== - selfsigned@^1.10.8: version "1.10.14" resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.14.tgz#ee51d84d9dcecc61e07e4aba34f229ab525c1574" @@ -11616,7 +11720,7 @@ source-map-url@^0.4.0: resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= -source-map@^0.5.0, source-map@^0.5.6: +source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= @@ -12018,6 +12122,11 @@ style-to-object@0.3.0: dependencies: inline-style-parser "0.1.1" +stylis@4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" + integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== + stylis@^4.0.3: version "4.0.10" resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.0.10.tgz#446512d1097197ab3f02fb3c258358c3f7a14240" @@ -13163,6 +13272,11 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== +yaml@^1.10.0: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + yaml@^1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.7.2.tgz#f26aabf738590ab61efaca502358e48dc9f348b2" diff --git a/web/spacewalk-web.changes.eth.select2 b/web/spacewalk-web.changes.eth.select2 new file mode 100644 index 000000000000..18e05b70e964 --- /dev/null +++ b/web/spacewalk-web.changes.eth.select2 @@ -0,0 +1 @@ +- Remove Select2 diff --git a/web/spacewalk-web.spec b/web/spacewalk-web.spec index 1562d66d29ce..043eba902eb1 100644 --- a/web/spacewalk-web.spec +++ b/web/spacewalk-web.spec @@ -267,8 +267,6 @@ sed -i -e 's/^web.theme_default =.*$/web.theme_default = susemanager-light/' $RP %{www_path}/javascript/manager/*.{js,js.LICENSE.txt,css} %dir %{www_path}/javascript/legacy %{www_path}/javascript/legacy/*.{js,js.LICENSE.txt,css} -%dir %{www_path}/javascript/legacy/select2 -%{www_path}/javascript/legacy/select2/* %dir %{www_path}/javascript/legacy/ace-editor %{www_path}/javascript/legacy/ace-editor/* %license LICENSE