diff --git a/.hintrc b/.hintrc new file mode 100644 index 00000000..cb34607d --- /dev/null +++ b/.hintrc @@ -0,0 +1,8 @@ +{ + "extends": [ + "development" + ], + "hints": { + "no-inline-styles": "off" + } +} \ No newline at end of file diff --git a/CHANGELOG.json b/CHANGELOG.json index 85fb0e07..14556a3b 100644 --- a/CHANGELOG.json +++ b/CHANGELOG.json @@ -1,5 +1,34 @@ { "versions": [ + { + "version": "3.17.0", + "changes": { + "new": [ + "`PropertyFieldButton`: New Control PropertyFieldButton [#613](https://github.com/pnp/sp-dev-fx-property-controls/pull/613)", + "`PropertyFieldGrid`: New Control PropertyFieldGrid [#614](https://github.com/pnp/sp-dev-fx-property-controls/pull/614)" + ], + "enhancements": [ + "`fast-serve`: ast-serve update to match the most recent changes. [#606](https://github.com/pnp/sp-dev-fx-property-controls/pull/606)", + "`PropertyFieldContentTypePicker`: PropertyFieldContentTypePicker control [#611](https://github.com/pnp/sp-dev-fx-property-controls/pull/611)", + "`PropertyFieldFilePicker` : add a delete button to the selected file [#579](https://github.com/pnp/sp-dev-fx-property-controls/pull/#607)", + "`PropertyFieldFilePicker`: Fix root site org asset library showing no items in file picker (https://github.com/pnp/sp-dev-fx-property-controls/pull/603)", + "`PropertyFieldFolderPicker`: added siteAbsoluteUrl to FOlderPicker (https://github.com/pnp/sp-dev-fx-property-controls/pull/602)" + + ], + "fixes": [ + "`General Helper`: toRelativeUrl returns proper relative url in case of root site (https://github.com/pnp/sp-dev-fx-property-controls/pull/609)" + ] + }, + "contributions": [ + "[Daniel Lindén](https://github.com/daniellinden22)", + "[Jake](https://github.com/jjkim11)", + "[João Mendes](https://github.com/joaojmendes)", + "[Nishkalank Bezawada](https://github.com/NishkalankBezawada)", + "[ramonitor](https://github.com/ramonitor)", + "[Russell gove](https://github.com/russgove)", + "[Sergei Sergeev](https://github.com/s-KaiNet)" + ] + }, { "version": "3.16.0", "changes": { @@ -53,12 +82,14 @@ "enhancements": [ "`PropertyFieldListPicker`: Implemented functionality to select multiple base templates [#568](https://github.com/pnp/sp-dev-fx-property-controls/pull/568)", "`fast-serve`: Fast-serve updated to the latest version and serve warnings fixed. [#579](https://github.com/pnp/sp-dev-fx-property-controls/pull/579)" + ], "fixes": [] }, "contributions": [ "[Chandani Prajapati](https://github.com/chandaniprajapati)", "[Sergei Sergeev](https://github.com/s-KaiNet)" + ] }, { diff --git a/CHANGELOG.md b/CHANGELOG.md index 7719cba2..7fac9ab7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,40 @@ # Releases +## 3.17.0 + +### New control(s) + +- `PropertyFieldButton`: New Control PropertyFieldButton [#613](https://github.com/pnp/sp-dev-fx-property-controls/pull/613) + +### Enhancements + +- `fast-serve`: ast-serve update to match the most recent changes. [#606](https://github.com/pnp/sp-dev-fx-property-controls/pull/606) +- `PropertyFieldContentTypePicker`: PropertyFieldContentTypePicker control [#611](https://github.com/pnp/sp-dev-fx-property-controls/pull/611) +- `PropertyFieldFilePicker` : add a delete button to the selected file [#579](https://github.com/pnp/sp-dev-fx-property-controls/pull/#607) +- `PropertyFieldFilePicker`: Fix root site org asset library showing no items in file picker (https://github.com/pnp/sp-dev-fx-property-controls/pull/603) +- `PropertyFieldFolderPicker`: added siteAbsoluteUrl to FOlderPicker (https://github.com/pnp/sp-dev-fx-property-controls/pull/602) + +### Fixes + +- `General Helper`: toRelativeUrl returns proper relative url in case of root site (https://github.com/pnp/sp-dev-fx-property-controls/pull/609) + +### Contributors + +Special thanks to our contributors (in alphabetical order): [Daniel Lindén](https://github.com/daniellinden22), [Jake](https://github.com/jjkim11), [João Mendes](https://github.com/joaojmendes), [Nishkalank Bezawada](https://github.com/NishkalankBezawada), [ramonitor](https://github.com/ramonitor), [Russell gove](https://github.com/russgove), [Sergei Sergeev](https://github.com/s-KaiNet). + ## 3.16.0 +### Enhancements + +- `PropertyFieldSitePicker`: disabled property not implemented in UI [#577](https://github.com/pnp/sp-dev-fx-property-controls/issues/577) + ### Fixes - `PropertyFieldMonacoEditor` and `PropertyFieldCodeEditor`: fix text selection in code editor [#590](https://github.com/pnp/sp-dev-fx-property-controls/issues/590) ### Contributors -Special thanks to our contributor: [Luna Heyman](https://github.com/toodeluna). +Special thanks to our contributors (in alphabetical order): [Luna Heyman](https://github.com/toodeluna), [srpmtt](https://github.com/srpmtt). ## 3.15.1 diff --git a/docs/documentation/docs/about/release-notes.md b/docs/documentation/docs/about/release-notes.md index 7719cba2..7fac9ab7 100644 --- a/docs/documentation/docs/about/release-notes.md +++ b/docs/documentation/docs/about/release-notes.md @@ -1,14 +1,40 @@ # Releases +## 3.17.0 + +### New control(s) + +- `PropertyFieldButton`: New Control PropertyFieldButton [#613](https://github.com/pnp/sp-dev-fx-property-controls/pull/613) + +### Enhancements + +- `fast-serve`: ast-serve update to match the most recent changes. [#606](https://github.com/pnp/sp-dev-fx-property-controls/pull/606) +- `PropertyFieldContentTypePicker`: PropertyFieldContentTypePicker control [#611](https://github.com/pnp/sp-dev-fx-property-controls/pull/611) +- `PropertyFieldFilePicker` : add a delete button to the selected file [#579](https://github.com/pnp/sp-dev-fx-property-controls/pull/#607) +- `PropertyFieldFilePicker`: Fix root site org asset library showing no items in file picker (https://github.com/pnp/sp-dev-fx-property-controls/pull/603) +- `PropertyFieldFolderPicker`: added siteAbsoluteUrl to FOlderPicker (https://github.com/pnp/sp-dev-fx-property-controls/pull/602) + +### Fixes + +- `General Helper`: toRelativeUrl returns proper relative url in case of root site (https://github.com/pnp/sp-dev-fx-property-controls/pull/609) + +### Contributors + +Special thanks to our contributors (in alphabetical order): [Daniel Lindén](https://github.com/daniellinden22), [Jake](https://github.com/jjkim11), [João Mendes](https://github.com/joaojmendes), [Nishkalank Bezawada](https://github.com/NishkalankBezawada), [ramonitor](https://github.com/ramonitor), [Russell gove](https://github.com/russgove), [Sergei Sergeev](https://github.com/s-KaiNet). + ## 3.16.0 +### Enhancements + +- `PropertyFieldSitePicker`: disabled property not implemented in UI [#577](https://github.com/pnp/sp-dev-fx-property-controls/issues/577) + ### Fixes - `PropertyFieldMonacoEditor` and `PropertyFieldCodeEditor`: fix text selection in code editor [#590](https://github.com/pnp/sp-dev-fx-property-controls/issues/590) ### Contributors -Special thanks to our contributor: [Luna Heyman](https://github.com/toodeluna). +Special thanks to our contributors (in alphabetical order): [Luna Heyman](https://github.com/toodeluna), [srpmtt](https://github.com/srpmtt). ## 3.15.1 diff --git a/docs/documentation/docs/assets/PropertyFieldGrid.png b/docs/documentation/docs/assets/PropertyFieldGrid.png new file mode 100644 index 00000000..adab1b78 Binary files /dev/null and b/docs/documentation/docs/assets/PropertyFieldGrid.png differ diff --git a/docs/documentation/docs/assets/contentTypePicker-Error.png b/docs/documentation/docs/assets/contentTypePicker-Error.png new file mode 100644 index 00000000..dd0cd5ad Binary files /dev/null and b/docs/documentation/docs/assets/contentTypePicker-Error.png differ diff --git a/docs/documentation/docs/assets/contentTypePicker.png b/docs/documentation/docs/assets/contentTypePicker.png new file mode 100644 index 00000000..21c02c88 Binary files /dev/null and b/docs/documentation/docs/assets/contentTypePicker.png differ diff --git a/docs/documentation/docs/assets/contentTypePicker1.png b/docs/documentation/docs/assets/contentTypePicker1.png new file mode 100644 index 00000000..762a8eb6 Binary files /dev/null and b/docs/documentation/docs/assets/contentTypePicker1.png differ diff --git a/docs/documentation/docs/assets/contentTypes-for-Site.gif b/docs/documentation/docs/assets/contentTypes-for-Site.gif new file mode 100644 index 00000000..3439afad Binary files /dev/null and b/docs/documentation/docs/assets/contentTypes-for-Site.gif differ diff --git a/docs/documentation/docs/assets/propertyFieldButton.gif b/docs/documentation/docs/assets/propertyFieldButton.gif new file mode 100644 index 00000000..9a2d2864 Binary files /dev/null and b/docs/documentation/docs/assets/propertyFieldButton.gif differ diff --git a/docs/documentation/docs/controls/PropertyFIeldFolderPicker.md b/docs/documentation/docs/controls/PropertyFIeldFolderPicker.md index 6ef7d9c1..6f9e59ad 100644 --- a/docs/documentation/docs/controls/PropertyFIeldFolderPicker.md +++ b/docs/documentation/docs/controls/PropertyFIeldFolderPicker.md @@ -64,7 +64,7 @@ The `PropertyFieldFolderPicker` control can be configured with the following pro | disabled | boolean | no | Is the control disabled. | | canCreateFolders | boolean | no | Allow current user to create folders on the target location. If enabled, you need to ensure that the user has the required permissions. | | onSelect | (folder: IFolder): void | no | Callback function called after a folder is selected. | - +| siteAbsoluteUrl | string | no | The absolute url of the site you want to pick a folder from (if different than the site the webpart is installed on) | interface `IFolder` diff --git a/docs/documentation/docs/controls/PropertyFieldButton.md b/docs/documentation/docs/controls/PropertyFieldButton.md new file mode 100644 index 00000000..f2134de4 --- /dev/null +++ b/docs/documentation/docs/controls/PropertyFieldButton.md @@ -0,0 +1,51 @@ +# PropertyFieldButton control + +This control generates a Button Control . + +**PropertyFieldButton example usage** + +![PropertyFieldButton example](../assets/propertyFieldButton.gif) + +## How to use this control in your solutions + +- Check that you installed the `@pnp/spfx-property-controls` dependency. Check out The [getting started](../../#getting-started) page for more information about installing the dependency. +- Import the following modules to your component: + +```TypeScript +import { PropertyFieldButton} from '@pnp/spfx-property-controls/lib/PropertyFieldButton'; +``` + +- Add the custom property control to the `groupFields` of the web part property pane configuration: + +```TypeScript + PropertyFieldButton("", { + text={"Button"} + key={"buttonID"} + disabled={false} + className={className} + styles={styles} + onClick={()=>{alert("Button Clicked")}} + iconProps={iconProps} + isPrimary={true} + isVIsible={true} + + }) +``` + +## Implementation + +The `PropertyFieldButton` control can be configured with the following properties: + +| Property | Type | Required | Description | +| --------- | -------------- | -------- | ---------------------------------------------------------- | +| key | string | yes | An unique key that indicates the identity of this control. | +| styles | IButtonStyles | no | styles object | +| classname | string | no | css ClassName | +| isVisible | boolean | yes | Indicate if button is visible | +| text | string | no | text of button | +| isPrimary | boolean | yes | indicate Button is a primary button | +| iconProps | IIconProps | no | text of button | +| disable | boolean | no | Disable control | +| onClick | (e:any) =>void | yes | Onclick function | + +![](https://telemetry.sharepointpnp.com/sp-dev-fx-property-controls/wiki/PropertyFieldButton) diff --git a/docs/documentation/docs/controls/PropertyFieldContentTypePicker.md b/docs/documentation/docs/controls/PropertyFieldContentTypePicker.md new file mode 100644 index 00000000..d70afd03 --- /dev/null +++ b/docs/documentation/docs/controls/PropertyFieldContentTypePicker.md @@ -0,0 +1,146 @@ +# PropertyFieldContentTypePicker control + +This control generates a ContentType picker field that can be used in the property pane of your SharePoint Framework web parts. + +The control automatically retrieves the ContentType for a given SharePoint Site or selected SharePoint list: + +![ContentType picker](../assets/contentTypePicker.png) + +## How to use this control in your solutions + +1. Check that you installed the `@pnp/spfx-property-controls` dependency. Check out The [getting started](../../#getting-started) page for more information about installing the dependency. +2. Import the following modules to your component: + +```TypeScript +import { PropertyFieldContentTypePicker, PropertyFieldContentTypePickerOrderBy } from '@pnp/spfx-property-controls/lib/PropertyFieldContentTypePicker'; +``` + +3. You'll probably want to use this control in combination with the [PropertyFieldListPicker](./PropertyFieldListPicker.md). Make sure to select the `multiSelect` prop to `false`, as this control is designed to work with a single list. Store the list id in your web part properties, as follows: +```TypeScript +export interface IPropertyControlsTestWebPartProps { + list: string; // Stores the list ID +} +``` + +3. Create a new property for your web part, as indicated between the `BEGIN:` and `END:` comments below: + + +```TypeScript +export interface IPropertyControlsTestWebPartProps { + list: string; // Stores the list ID + + // BEGIN: Added + view: string; // Stores the view ID + contentType : string // stores the contenttype ID + // END: Added +} +``` + +4. Add the custom property control to the `groupFields` of the web part property pane configuration: + +```TypeScript +PropertyFieldContentTypePicker('contentType', { + label: 'Select a Content Type', + context: this.context, + selectedContentType: this.properties.contentType, + disabled: false, + orderBy: PropertyFieldContentTypeOrderBy.Name, + onPropertyChange: this.onPropertyPaneFieldChanged.bind(this), + properties: this.properties, + onGetErrorMessage: null, + deferredValidationTime: 0, + key: 'contentTypePickerFieldId' +}) + +``` + +5. To fetch the contentTypes of a particular site, change the property pane configuration as follows: + +```TypeScript +PropertyFieldContentTypePicker('contentType', { + label: 'Select a Content Type', + context: this.context, + selectedContentType: this.properties.contentType, + disabled: false, + webAbsoluteUrl:"https://****.sharepoint.com/sites/*****", + orderBy: PropertyFieldContentTypeOrderBy.Name, + onPropertyChange: this.onPropertyPaneFieldChanged.bind(this), + properties: this.properties, + onGetErrorMessage: null, + deferredValidationTime: 0, + key: 'contentTypePickerFieldId' +}) +``` +![ContentType picker for site ](../assets/contentTypes-for-Site.gif) + +6. To fetch the contentTypes of selected list, change the property pane configuration as follows: + +```TypeScript +PropertyFieldContentTypePicker('contentType', { + label: 'Select a Content Type', + context: this.context, + selectedContentType: this.properties.contentType, + listId: {list-guid} //"0da3b4b7-8ebd-4f15-87ee-afae5cacadad" + disabled: false, + orderBy: PropertyFieldContentTypeOrderBy.Name, + onPropertyChange: this.onPropertyPaneFieldChanged.bind(this), + properties: this.properties, + onGetErrorMessage: null, + deferredValidationTime: 0, + key: 'contentTypePickerFieldId' +}) + +``` + +![ContentType picker for selected list ](../assets/contentTypePicker1.png) + +7. If ListID specified in the propertiesc is not available in the selected site, the control will error out as follows +```TypeScript +PropertyFieldContentTypePicker('contentType', { + label: 'Select a Content Type', + context: this.context, + selectedContentType: this.properties.contentType, + listId: {list-guid} //"0da3b4b7-8ebd-4f15-87ee-afae5cacadad" + disabled: false, + orderBy: PropertyFieldContentTypeOrderBy.Name, + onPropertyChange: this.onPropertyPaneFieldChanged.bind(this), + properties: this.properties, + onGetErrorMessage: null, + deferredValidationTime: 0, + key: 'contentTypePickerFieldId' +}) + +``` +![ContentType picker Error ](../assets/contentTypePicker-Error.png) + +## Implementation + +The `PropertyFieldContentTypePicker` control can be configured with the following properties: + +| Property | Type | Required | Description | +| ---- | ---- | ---- | ---- | +| label | string | yes | Property field label displayed on top. | +| listId | string | no | The ID of the list or library you wish to select a contentType from. | +| disabled | boolean | no | Specify if the control needs to be disabled. | +| context | BaseComponentContext | yes | Context of the current web part. | +| selectedContentType | string | string[] | no | IDefines ContentType titles which should be excluded from the ContentType picker control. | +| orderBy | PropertyFieldContentTypeOrderBy | no | Specify the property on which you want to order the retrieve set of ContentTypes. | +| webAbsoluteUrl | string | no | Absolute Web Url of target site (user requires permissions) | +| onPropertyChange | function | yes | Defines a onPropertyChange function to raise when the date gets changed. | +| properties | any | yes | Parent web part properties, this object is use to update the property value. | +| key | string | yes | An unique key that indicates the identity of this control. | +| onGetErrorMessage | function | no | The method is used to get the validation error message and determine whether the input value is valid or not. See [this documentation](https://dev.office.com/sharepoint/docs/spfx/web-parts/guidance/validate-web-part-property-values) to learn how to use it. | +| deferredValidationTime | number | no | Control will start to validate after users stop typing for `deferredValidationTime` milliseconds. Default value is 200. | +| contentTypesToExclude | string[] | no | Defines contentTypes by which should be excluded from the contentType picker control. You can specify contentType titles or IDs | +| filter | string | no | Filter contentTypes from OData query. | +| onContentTypesRetrieved | (contentType: ISPContentType[]) => PromiseLike \| ISPContentType[] | no | Callback that is called before the dropdown is populated. | + + +Enum `PropertyFieldContentTypePickerOrderBy` + +| Name | Description | +| ---- | ---- | +| Id | Sort by contentType ID | +| Title | Sort by contentType title | + +![](https://telemetry.sharepointpnp.com/sp-dev-fx-property-controls/wiki/PropertyFieldContentTypePicker) diff --git a/docs/documentation/docs/controls/PropertyFieldGrid.md b/docs/documentation/docs/controls/PropertyFieldGrid.md new file mode 100644 index 00000000..65935fd3 --- /dev/null +++ b/docs/documentation/docs/controls/PropertyFieldGrid.md @@ -0,0 +1,89 @@ +# PropertyFieldGrid control + +This control generates a Grid Control . + +**PropertyFieldGrid example usage** + +![PropertyFieldGrid example](../assets/propertyFieldGrid.png) + +## How to use this control in your solutions + +- Check that you installed the `@pnp/spfx-property-controls` dependency. Check out The [getting started](../../#getting-started) page for more information about installing the dependency. +- Import the following modules to your component: + +```TypeScript +import { PropertyFieldGrid, IItem} from '@pnp/spfx-property-controls/lib/PropertyFieldGrid'; +``` + +```TypeScript + +- define the items to show in the grid: + +const gridItems:IItem[] = [ + { + key: "1", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 1", + description: "This is the first document" + }, + { + key: "2", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 2", + description: "This is the 2 document" + }, + { + key: "3", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 3", + description: "This is the 3 document" + }, + { + key: "4", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 4", + description: "This is the 4 document" + } + ]; + +- Add the custom property Grid to the `groupFields` of the web part property pane configuration: + + PropertyFieldGrid('gridItems', { + multiSelect: true, + items: gridItems, + label: 'Grid Items', + key: 'gridFieldId', + defaultSelectedItems: this.properties.gridItems, + maxHeight: 500, + className: 'gridClass', + styles: {padding: 10}, + isVisible: true, + maxHeight: 500, + column1Label: 'File', + column2Label: 'Location', + onSelected: (item: IItem[]) => { + console.log(item); + } + ) +``` + +## Implementation + +The `PropertyFieldGrid` control can be configured with the following properties: + +| Property | Type | Required | Description | +| --------- | -------------- | -------- | ---------------------------------------------------------- | +| key | string | yes | An unique key that indicates the identity of this control. | +| styles | IButtonStyles | no | styles object (root container) | +| classname | string | no | css ClassName (root container) | +| isVisible | boolean | no | Indicate if grid is visible | +| label | string | no | label of Grid | +| defaultSelectedItems | (items:IItem[]) =>void | no | defined default Item selected | +| maxHeigth | number | no | max height of the container , default 400px | +| onSelected | item[] | no | selected Items when are selected | +| items | IItem[] | yes | Items to show | +| multiSelect | boolean | no | Enable multiSelect , default single | +| column1Label | string | no | Label for header of first grid column | +| column2Label | string | no | Label for header of second grid column | + +![](https://telemetry.sharepointpnp.com/sp-dev-fx-property-controls/wiki/PropertyFieldGrid) diff --git a/docs/documentation/docs/index.md b/docs/documentation/docs/index.md index e5011f0b..b336b2c8 100644 --- a/docs/documentation/docs/index.md +++ b/docs/documentation/docs/index.md @@ -59,6 +59,7 @@ telemetry.optOut(); The following controls are currently available: +- [PropertyFieldButton](./controls/PropertyFieldButton) (Property pane Button) - [PropertyFieldCodeEditor](./controls/PropertyFieldCodeEditor) (Property pane code editor) - [PropertyFieldCollectionData](./controls/PropertyFieldCollectionData) (Property pane collection data editor) - [PropertyFieldColorPicker](./controls/PropertyFieldColorPicker) (Property pane color picker) @@ -66,6 +67,7 @@ The following controls are currently available: - [PropertyFieldDateTimePicker](./controls/PropertyFieldDateTimePicker) (Property pane date and time selector) - [PropertyFieldFilePicker](./controls/PropertyFieldFilePicker) (Property pane file picker) - [PropertyFieldFolderPicker](./controls/PropertyFieldFolderPicker) (Property pane folder picker) +- [PropertyFieldGrid](./controls/PropertyFieldGrid) (Property pane Grid control) - [PropertyFieldGuid](./controls/PropertyFieldGuid) (Property pane GUID editor) - [PropertyFieldIconPicker](./controls/PropertyFieldIconPicker) (Property pane icon picker) - [PropertyFieldListPicker](./controls/PropertyFieldListPicker) (Property pane list selector) diff --git a/docs/documentation/mkdocs.yml b/docs/documentation/mkdocs.yml index 18fe9ec3..576bf88c 100644 --- a/docs/documentation/mkdocs.yml +++ b/docs/documentation/mkdocs.yml @@ -2,6 +2,7 @@ site_name: '@pnp/spfx-property-controls' nav: - Home: 'index.md' - Controls: + - PropertyFieldButton: 'controls/PropertyFieldButton.md' - PropertyFieldCodeEditor: 'controls/PropertyFieldCodeEditor.md' - PropertyFieldCollectionData: 'controls/PropertyFieldCollectionData.md' - PropertyFieldColorPicker: 'controls/PropertyFieldColorPicker.md' @@ -10,6 +11,7 @@ nav: - PropertyFieldEnterpriseTermPicker: 'controls/PropertyFieldEnterpriseTermPicker.md' - PropertyFieldFilePicker: 'controls/PropertyFieldFilePicker.md' - PropertyFieldFolderPicker: 'controls/PropertyFieldFolderPicker.md' + - PropertyFieldGrid: 'controls/PropertyFieldGrid.md' - PropertyFieldGuidPicker: 'controls/PropertyFieldGuid.md' - PropertyFieldIconPicker: 'controls/PropertyFieldIconPicker.md' - PropertyFieldListPicker: 'controls/PropertyFieldListPicker.md' diff --git a/fast-serve/config.json b/fast-serve/config.json index 632a692f..fbb6384c 100644 --- a/fast-serve/config.json +++ b/fast-serve/config.json @@ -1,5 +1,5 @@ { - "$schema": "https://raw.githubusercontent.com/s-KaiNet/spfx-fast-serve/master/schema/config.1.1.schema.json", + "$schema": "https://raw.githubusercontent.com/s-KaiNet/spfx-fast-serve/master/schema/config.latest.schema.json", "cli": { "isLibraryComponent": false } diff --git a/fast-serve/webpack.extend.js b/fast-serve/webpack.extend.js index 22e737e6..cf1ebcad 100644 --- a/fast-serve/webpack.extend.js +++ b/fast-serve/webpack.extend.js @@ -4,14 +4,21 @@ * This file will not be overwritten by the subsequent spfx-fast-serve calls. */ -// you can add your project related webpack configuration here, it will be merged using webpack-merge module -// i.e. plugins: [new webpack.Plugin()] +/** + * you can add your project related webpack configuration here, it will be merged using webpack-merge module + * i.e. plugins: [new webpack.Plugin()] + */ const webpackConfig = { } -// for even more fine-grained control, you can apply custom webpack settings using below function -const transformConfig = function (initialWebpackConfig) { +/** + * For even more fine-grained control, you can apply custom webpack settings using below function + * @param {object} initialWebpackConfig - initial webpack config object + * @param {object} webpack - webpack object, used by SPFx pipeline + * @returns webpack config object + */ +const transformConfig = function (initialWebpackConfig, webpack) { // transform the initial webpack config here, i.e. // initialWebpackConfig.plugins.push(new webpack.Plugin()); etc. diff --git a/package-lock.json b/package-lock.json index aeb6dbd1..3d554dc5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,16 +1,17 @@ { "name": "@pnp/spfx-property-controls", - "version": "3.15.1", + "version": "3.17.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@pnp/spfx-property-controls", - "version": "3.15.1", + "version": "3.17.0", "hasInstallScript": true, "license": "MIT", "dependencies": { "@fluentui/react": "8.106.4", + "@fluentui/react-components": "^9.48.0", "@microsoft/sp-adaptive-card-extension-base": "1.18.2", "@microsoft/sp-core-library": "1.18.2", "@microsoft/sp-lodash-subset": "1.18.2", @@ -59,7 +60,7 @@ "husky": "^6.0.0", "request-promise": "4.2.6", "sonarqube-scanner": "2.8.2", - "spfx-fast-serve-helpers": "~1.17.3", + "spfx-fast-serve-helpers": "~1.18.0", "typescript": "4.7.4", "uuid": "^9.0.1" }, @@ -77,13 +78,13 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -102,47 +103,71 @@ } }, "node_modules/@azure/core-auth": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.5.0.tgz", - "integrity": "sha512-udzoBuYG1VBoHVohDTrvKjyzel34zt77Bhp7dQntVGGD0ehVq48owENbBG8fIgkHRNUBQH5k1r0hpoMu5L8+kw==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.7.2.tgz", + "integrity": "sha512-Igm/S3fDYmnMq1uKS38Ae1/m37B3zigdlZw+kocwEhh5GjyKjPrXKO2J6rzpC1wAxrNil/jX9BJRqBshyjnF3g==", "dev": true, "dependencies": { - "@azure/abort-controller": "^1.0.0", + "@azure/abort-controller": "^2.0.0", "@azure/core-util": "^1.1.0", - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/@azure/core-auth/node_modules/@azure/abort-controller": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz", + "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==", + "dev": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/@azure/core-client": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.7.3.tgz", - "integrity": "sha512-kleJ1iUTxcO32Y06dH9Pfi9K4U+Tlb111WXEnbt7R/ne+NLRwppZiTGJuTD5VVoxTMK5NTbEtm5t2vcdNCFe2g==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.9.2.tgz", + "integrity": "sha512-kRdry/rav3fUKHl/aDLd/pDLcB+4pOFwPPTVEExuMyaI5r+JBbMWqRbCY1pn5BniDaU3lRxO9eaQ1AmSMehl/w==", "dev": true, "dependencies": { - "@azure/abort-controller": "^1.0.0", + "@azure/abort-controller": "^2.0.0", "@azure/core-auth": "^1.4.0", "@azure/core-rest-pipeline": "^1.9.1", "@azure/core-tracing": "^1.0.0", - "@azure/core-util": "^1.0.0", + "@azure/core-util": "^1.6.1", "@azure/logger": "^1.0.0", - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/@azure/core-client/node_modules/@azure/abort-controller": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz", + "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==", + "dev": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/@azure/core-client/node_modules/@azure/core-tracing": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.1.tgz", - "integrity": "sha512-I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.1.2.tgz", + "integrity": "sha512-dawW9ifvWAWmUm9/h+/UQ2jrdvjCJ7VJEuCJ6XVNudzcOwm53BFZH4Q845vjfgoUAM8ZxokvVNxNxAITc502YA==", "dev": true, "dependencies": { - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=18.0.0" } }, "node_modules/@azure/core-http": { @@ -181,62 +206,98 @@ } }, "node_modules/@azure/core-lro": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.5.4.tgz", - "integrity": "sha512-3GJiMVH7/10bulzOKGrrLeG/uCBH/9VtxqaMcB9lIqAeamI/xYQSHJL/KcsLDuH+yTjYpro/u6D/MuRe4dN70Q==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.7.2.tgz", + "integrity": "sha512-0YIpccoX8m/k00O7mDDMdJpbr6mf1yWo2dfmxt5A8XVZVVMz2SSKaEbMCeJRvgQ0IaSlqhjT47p4hVIRRy90xw==", "dev": true, "dependencies": { - "@azure/abort-controller": "^1.0.0", + "@azure/abort-controller": "^2.0.0", "@azure/core-util": "^1.2.0", "@azure/logger": "^1.0.0", - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/@azure/core-lro/node_modules/@azure/abort-controller": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz", + "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==", + "dev": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/@azure/core-paging": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.5.0.tgz", - "integrity": "sha512-zqWdVIt+2Z+3wqxEOGzR5hXFZ8MGKK52x4vFLw8n58pR6ZfKRx3EXYTxTaYxYHc/PexPUTyimcTWFJbji9Z6Iw==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.6.2.tgz", + "integrity": "sha512-YKWi9YuCU04B55h25cnOYZHxXYtEvQEbKST5vqRga7hWY9ydd3FZHdeQF8pyh+acWZvppw13M/LMGx0LABUVMA==", "dev": true, "dependencies": { - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" } }, "node_modules/@azure/core-rest-pipeline": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.12.2.tgz", - "integrity": "sha512-wLLJQdL4v1yoqYtEtjKNjf8pJ/G/BqVomAWxcKOR1KbZJyCEnCv04yks7Y1NhJ3JzxbDs307W67uX0JzklFdCg==", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.15.2.tgz", + "integrity": "sha512-BmWfpjc/QXc2ipHOh6LbUzp3ONCaa6xzIssTU0DwH9bbYNXJlGUL6tujx5TrbVd/QQknmS+vlQJGrCq2oL1gZA==", "dev": true, "dependencies": { - "@azure/abort-controller": "^1.0.0", + "@azure/abort-controller": "^2.0.0", "@azure/core-auth": "^1.4.0", "@azure/core-tracing": "^1.0.1", "@azure/core-util": "^1.3.0", "@azure/logger": "^1.0.0", - "form-data": "^4.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "tslib": "^2.2.0" + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/@azure/core-rest-pipeline/node_modules/@azure/abort-controller": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz", + "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==", + "dev": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/@azure/core-rest-pipeline/node_modules/@azure/core-tracing": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.1.tgz", - "integrity": "sha512-I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.1.2.tgz", + "integrity": "sha512-dawW9ifvWAWmUm9/h+/UQ2jrdvjCJ7VJEuCJ6XVNudzcOwm53BFZH4Q845vjfgoUAM8ZxokvVNxNxAITc502YA==", "dev": true, "dependencies": { - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/@azure/core-rest-pipeline/node_modules/https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" } }, "node_modules/@azure/core-tracing": { @@ -253,16 +314,28 @@ } }, "node_modules/@azure/core-util": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.6.1.tgz", - "integrity": "sha512-h5taHeySlsV9qxuK64KZxy4iln1BtMYlNt5jbuEFN3UFSAd1EwKg/Gjl5a6tZ/W8t6li3xPnutOx7zbDyXnPmQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.9.0.tgz", + "integrity": "sha512-AfalUQ1ZppaKuxPPMsFEUdX6GZPB3d9paR9d/TTL7Ow2De8cJaC7ibi7kWVlFAVPCYo31OcnGymc0R89DX8Oaw==", "dev": true, "dependencies": { - "@azure/abort-controller": "^1.0.0", - "tslib": "^2.2.0" + "@azure/abort-controller": "^2.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/@azure/core-util/node_modules/@azure/abort-controller": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz", + "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==", + "dev": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/@azure/identity": { @@ -293,15 +366,15 @@ } }, "node_modules/@azure/identity/node_modules/@azure/core-tracing": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.1.tgz", - "integrity": "sha512-I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.1.2.tgz", + "integrity": "sha512-dawW9ifvWAWmUm9/h+/UQ2jrdvjCJ7VJEuCJ6XVNudzcOwm53BFZH4Q845vjfgoUAM8ZxokvVNxNxAITc502YA==", "dev": true, "dependencies": { - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=12.0.0" + "node": ">=18.0.0" } }, "node_modules/@azure/identity/node_modules/uuid": { @@ -314,15 +387,15 @@ } }, "node_modules/@azure/logger": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.4.tgz", - "integrity": "sha512-ustrPY8MryhloQj7OWGe+HrYx+aoiOxzbXTtgblbV3xwCqpzUK36phH3XNHQKj3EPonyFUuDTfR3qFhTEAuZEg==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.1.2.tgz", + "integrity": "sha512-l170uE7bsKpIU6B/giRc9i4NI0Mj+tANMMMxf7Zi/5cKzEqPayP7+X1WPrG7e+91JgY8N+7K7nF2WOi7iVhXvg==", "dev": true, "dependencies": { - "tslib": "^2.2.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" } }, "node_modules/@azure/msal-browser": { @@ -398,114 +471,43 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz", - "integrity": "sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/code-frame/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/code-frame/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/code-frame/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/compat-data": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.3.tgz", - "integrity": "sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.3.tgz", - "integrity": "sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.3", - "@babel/helper-compilation-targets": "^7.22.15", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.2", - "@babel/parser": "^7.23.3", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.3", - "@babel/types": "^7.23.3", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -536,14 +538,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.4.tgz", - "integrity": "sha512-esuS49Cga3HcThFNebGhlgsrVLkvhqvYDTzgjfFFlHJcIfLe5jFmRRfCQ1KuBfc4Jrtn3ndLgKWAKjBE+IraYQ==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", "dev": true, "dependencies": { - "@babel/types": "^7.23.4", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -551,14 +553,14 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -610,12 +612,12 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -641,9 +643,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", "dev": true, "engines": { "node": ">=6.9.0" @@ -674,9 +676,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -692,37 +694,38 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.4.tgz", - "integrity": "sha512-HfcMizYz10cr3h29VqyfGL6ZWIjTwWfvYBMsBVGwpcbhNGe3wQ1ZXZRPzZoAHhd9OqHadHqjQ89iVKINXnbzuw==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.4", - "@babel/types": "^7.23.4" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -800,9 +803,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.4.tgz", - "integrity": "sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -944,10 +947,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.4.tgz", - "integrity": "sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==", - "peer": true, + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.4.tgz", + "integrity": "sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==", "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -956,34 +958,34 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.4.tgz", - "integrity": "sha512-IYM8wSUwunWTB6tFC2dkKZhxbIjHoWemdK+3f8/wq8aKhbUscxD5MX72ubd90fxvFknaLPeGw5ycU84V1obHJg==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.4", - "@babel/generator": "^7.23.4", + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.4", - "@babel/types": "^7.23.4", - "debug": "^4.1.0", + "@babel/parser": "^7.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -991,9 +993,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.4.tgz", - "integrity": "sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.23.4", @@ -1044,6 +1046,11 @@ "node": ">=10.0.0" } }, + "node_modules/@emotion/hash": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", + "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==" + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -1114,9 +1121,9 @@ "dev": true }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -1129,9 +1136,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -1179,44 +1186,74 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@floating-ui/core": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz", + "integrity": "sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==", + "dependencies": { + "@floating-ui/utils": "^0.2.1" + } + }, + "node_modules/@floating-ui/devtools": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@floating-ui/devtools/-/devtools-0.2.1.tgz", + "integrity": "sha512-8PHJLbD6VhBh+LJ1uty/Bz30qs02NXCE5u8WpOhSewlYXUWl03GNXknr9AS2yaAWJEQaY27x7eByJs44gODBcw==", + "peerDependencies": { + "@floating-ui/dom": ">=1.5.4" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.3.tgz", + "integrity": "sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==", + "dependencies": { + "@floating-ui/core": "^1.0.0", + "@floating-ui/utils": "^0.2.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz", + "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==" + }, "node_modules/@fluentui/date-time-utilities": { - "version": "8.5.14", - "resolved": "https://registry.npmjs.org/@fluentui/date-time-utilities/-/date-time-utilities-8.5.14.tgz", - "integrity": "sha512-Kc64ZBj0WiaSW/Bsh4fMy9oM2FIk1TgIqBV6+OgOtdKx9cXwLdmgGk8zuQTcuRnwv5WCk2M6wvW1M+eK3sNRGA==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/@fluentui/date-time-utilities/-/date-time-utilities-8.6.2.tgz", + "integrity": "sha512-crnqghb98phv/votLTamTRY+2JXfBvoQHWGt7sUtWpWoiYXDTw8gPis/+wZVBZKZvzHICXO4+m/ts+JLiJC+UQ==", "dependencies": { - "@fluentui/set-version": "^8.2.12", + "@fluentui/set-version": "^8.2.16", "tslib": "^2.1.0" } }, "node_modules/@fluentui/dom-utilities": { - "version": "2.2.12", - "resolved": "https://registry.npmjs.org/@fluentui/dom-utilities/-/dom-utilities-2.2.12.tgz", - "integrity": "sha512-safCKQPJTnshYG13/U2Zx1KWhOhU4vl5RAKqW7HEBfLOHds/fAR+EzTvKgO6OgxJq59JAKJvpH2QujkLXZZQ3A==", + "version": "2.2.16", + "resolved": "https://registry.npmjs.org/@fluentui/dom-utilities/-/dom-utilities-2.2.16.tgz", + "integrity": "sha512-ucavfISaFmavZIrFLukOyRCVyzXYe06KFvtAbv3jCm7cXGlO483pC3pJJhoc+qEFIEe0W6WBQLYcNmXHTDdQDQ==", "dependencies": { - "@fluentui/set-version": "^8.2.12", + "@fluentui/set-version": "^8.2.16", "tslib": "^2.1.0" } }, "node_modules/@fluentui/font-icons-mdl2": { - "version": "8.5.27", - "resolved": "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.5.27.tgz", - "integrity": "sha512-u6J9SmdWsr3WjC7zog930IWWySA+mxLfIqfyux9oATJQPUs+76juYYbolDTJTvndVEmb+piA7qBhEubUoaXJjQ==", + "version": "8.5.36", + "resolved": "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.5.36.tgz", + "integrity": "sha512-yy+1U2cxJdc88qVhFXnhdZXqoNlzNknPrSHcIFdDNQOwri3B5M0v78CV0fnBCv8UUJsmBAALXChdh+RMHxTeYw==", "dependencies": { - "@fluentui/set-version": "^8.2.12", - "@fluentui/style-utilities": "^8.9.20", - "@fluentui/utilities": "^8.13.21", + "@fluentui/set-version": "^8.2.16", + "@fluentui/style-utilities": "^8.10.7", + "@fluentui/utilities": "^8.15.2", "tslib": "^2.1.0" } }, "node_modules/@fluentui/foundation-legacy": { - "version": "8.2.47", - "resolved": "https://registry.npmjs.org/@fluentui/foundation-legacy/-/foundation-legacy-8.2.47.tgz", - "integrity": "sha512-El/8/makZh2fqd2YdLSTy3T2oJ3N6WCsPzkud9CdMF98Oby0jny4EAtzjBNRbAwL4/gppOYIIchVuzRL4V2rcw==", - "dependencies": { - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/set-version": "^8.2.12", - "@fluentui/style-utilities": "^8.9.20", - "@fluentui/utilities": "^8.13.21", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/@fluentui/foundation-legacy/-/foundation-legacy-8.4.2.tgz", + "integrity": "sha512-zBVMPcIMzRqGmDqdeKCkr3i75MXHNB4AnuSVHoo4armKn74x2VmN59Zh6sE4oSpHnu0JnqPHVTlLGF/TC9WRmg==", + "dependencies": { + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/set-version": "^8.2.16", + "@fluentui/style-utilities": "^8.10.7", + "@fluentui/utilities": "^8.15.2", "tslib": "^2.1.0" }, "peerDependencies": { @@ -1225,22 +1262,38 @@ } }, "node_modules/@fluentui/keyboard-key": { - "version": "0.4.12", - "resolved": "https://registry.npmjs.org/@fluentui/keyboard-key/-/keyboard-key-0.4.12.tgz", - "integrity": "sha512-9nPglM58ThbOEQ88KijdYl64hiTAQQ0o60HRc0vboibmr41mJ322FoBz5Q5S5QLIEbBZajrAkrDMs3PKW4CCSw==", + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/@fluentui/keyboard-key/-/keyboard-key-0.4.16.tgz", + "integrity": "sha512-jN9KJqWc4eGrbM9sRVRVwTg450jcxb2zxHN7AfXXWkcsmy/HGcS+igUVGLrftVAY33Jk1sZ9YoLGeqnDInGWmQ==", "dependencies": { "tslib": "^2.1.0" } }, + "node_modules/@fluentui/keyboard-keys": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/@fluentui/keyboard-keys/-/keyboard-keys-9.0.7.tgz", + "integrity": "sha512-vaQ+lOveQTdoXJYqDQXWb30udSfTVcIuKk1rV0X0eGAgcHeSDeP1HxMy+OgHOQZH3OiBH4ZYeWxb+tmfiDiygQ==", + "dependencies": { + "@swc/helpers": "^0.5.1" + } + }, "node_modules/@fluentui/merge-styles": { - "version": "8.5.13", - "resolved": "https://registry.npmjs.org/@fluentui/merge-styles/-/merge-styles-8.5.13.tgz", - "integrity": "sha512-ocgwNlQcQwn5mNlZKFazrFVbYDEQ6BptoW4GyEv6U5TEHE8HKKYuPRf340NXCRGiacSpz3vLkyDjp+L431qUXg==", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/@fluentui/merge-styles/-/merge-styles-8.6.2.tgz", + "integrity": "sha512-Lq/s3qnryqUJjAIS+x4ZfaS9iCgJVAvc970kIn5W5Rixan+gmWzXwG8AuYSGJtI3wvtinz+2yEr+Nqh7zPeH1g==", "dependencies": { - "@fluentui/set-version": "^8.2.12", + "@fluentui/set-version": "^8.2.16", "tslib": "^2.1.0" } }, + "node_modules/@fluentui/priority-overflow": { + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@fluentui/priority-overflow/-/priority-overflow-9.1.11.tgz", + "integrity": "sha512-sdrpavvKX2kepQ1d6IaI3ObLq5SAQBPRHPGx2+wiMWL7cEx9vGGM0fmeicl3soqqmM5uwCmWnZk9QZv9XOY98w==", + "dependencies": { + "@swc/helpers": "^0.5.1" + } + }, "node_modules/@fluentui/react": { "version": "8.106.4", "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.106.4.tgz", @@ -1268,16 +1321,413 @@ "react-dom": ">=16.8.0 <19.0.0" } }, + "node_modules/@fluentui/react-accordion": { + "version": "9.3.49", + "resolved": "https://registry.npmjs.org/@fluentui/react-accordion/-/react-accordion-9.3.49.tgz", + "integrity": "sha512-hIRHpa11fryxBJpmp93CTgMKPRBmzgGnMYmPWtkIS4aWBL1GxC+nuk3wIOFVYOeWR1U6VjL+2sdkmPd5iakedQ==", + "dependencies": { + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-alert": { + "version": "9.0.0-beta.116", + "resolved": "https://registry.npmjs.org/@fluentui/react-alert/-/react-alert-9.0.0-beta.116.tgz", + "integrity": "sha512-nuVakH++XoujtA+Ao2Yy5ytigVDD2AsNsMUDsvCF7kHnc65yvWmcn+oNrrB5UjDT7VKyhVYXd3C9tllxnJ+NFA==", + "dependencies": { + "@fluentui/react-avatar": "^9.6.21", + "@fluentui/react-button": "^9.3.75", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-aria": { + "version": "9.10.4", + "resolved": "https://registry.npmjs.org/@fluentui/react-aria/-/react-aria-9.10.4.tgz", + "integrity": "sha512-tetLvxPizMLdtOOaAfBB95MqPJxXj0hdCCctfEDHFtCzNAprMDMoLICGeQrIPKOLUAi2CxXGJldKoBQizJNwnw==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-utilities": "^9.18.6", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-avatar": { + "version": "9.6.21", + "resolved": "https://registry.npmjs.org/@fluentui/react-avatar/-/react-avatar-9.6.21.tgz", + "integrity": "sha512-9Npj4xp4oO4pS/cSbctCpMgf65h7hiJ9Ns3wNCUOvmDCFOaF9IJ236Vh3FGRXOshriDxCTVsP2tRIMdE9Ay6Xw==", + "dependencies": { + "@fluentui/react-badge": "^9.2.31", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-popover": "^9.9.4", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-tooltip": "^9.4.23", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-badge": { + "version": "9.2.31", + "resolved": "https://registry.npmjs.org/@fluentui/react-badge/-/react-badge-9.2.31.tgz", + "integrity": "sha512-l4pNuAGZ+jJks8Zz2cxY1rdgersTXAQE5G6clZlkNbuFoS9iSLPZuq5Ipqpt9WwP6iYHu/lPVPf5xJJ5t5k0AQ==", + "dependencies": { + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-breadcrumb": { + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/@fluentui/react-breadcrumb/-/react-breadcrumb-9.0.21.tgz", + "integrity": "sha512-iDDYDr6ohtAF1Txbz3PxhdkGFoV6nxFuCdTSs0eoy+vzZNOYc46FLOAtJvhKfbrfctStqZD7nZ9Fw4+3K5rccg==", + "dependencies": { + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-button": "^9.3.75", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-link": "^9.2.17", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-button": { + "version": "9.3.75", + "resolved": "https://registry.npmjs.org/@fluentui/react-button/-/react-button-9.3.75.tgz", + "integrity": "sha512-L3yc1QyLmoGsDmPVk7ZRG/WNlYiGwY7dIyTAmEkHnIo+2pZ4EMXzRQMevAp/wrXvq/H3J388KHo6kyblj1oEHg==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-card": { + "version": "9.0.74", + "resolved": "https://registry.npmjs.org/@fluentui/react-card/-/react-card-9.0.74.tgz", + "integrity": "sha512-VGh7rjMdPLmDfaGJNip8Cf4oAfCteB8Lo7MCdYpmrwbponDsyr5Ftb6dSzDDTepsZUFZDV2whEm7b7YQqGxTmw==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-checkbox": { + "version": "9.2.20", + "resolved": "https://registry.npmjs.org/@fluentui/react-checkbox/-/react-checkbox-9.2.20.tgz", + "integrity": "sha512-P5PI2k/uXJMxahqlgW8q+45F30r8Yy41vkPnhduxBd0H+34iEMo7FWEPRlFc99MVR3oqOxzduqd/wvWVAQ6sTQ==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-combobox": { + "version": "9.10.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-combobox/-/react-combobox-9.10.0.tgz", + "integrity": "sha512-kZZGID0RuMkSKyUneYYW2JMQf0KLHe1VYIFWaXj92U2iKJ4KpQHagIbcEhrVNBUgNz7Yl2jUi3HVOVLg6XGr1Q==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-portal": "^9.4.20", + "@fluentui/react-positioning": "^9.14.3", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-components": { + "version": "9.48.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-components/-/react-components-9.48.0.tgz", + "integrity": "sha512-jPy0qAlFkOryza4T3Kgsa2DR9rua7sEl98FMBw//Kl45xxlFhYogDIbu3Wa3JffL0ApevARkge8+xj+wJeMsrw==", + "dependencies": { + "@fluentui/react-accordion": "^9.3.49", + "@fluentui/react-alert": "9.0.0-beta.116", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-avatar": "^9.6.21", + "@fluentui/react-badge": "^9.2.31", + "@fluentui/react-breadcrumb": "^9.0.21", + "@fluentui/react-button": "^9.3.75", + "@fluentui/react-card": "^9.0.74", + "@fluentui/react-checkbox": "^9.2.20", + "@fluentui/react-combobox": "^9.10.0", + "@fluentui/react-dialog": "^9.10.0", + "@fluentui/react-divider": "^9.2.66", + "@fluentui/react-drawer": "^9.1.11", + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-image": "^9.1.63", + "@fluentui/react-infobutton": "9.0.0-beta.100", + "@fluentui/react-infolabel": "^9.0.28", + "@fluentui/react-input": "^9.4.71", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-link": "^9.2.17", + "@fluentui/react-menu": "^9.13.7", + "@fluentui/react-message-bar": "^9.0.26", + "@fluentui/react-overflow": "^9.1.16", + "@fluentui/react-persona": "^9.2.80", + "@fluentui/react-popover": "^9.9.4", + "@fluentui/react-portal": "^9.4.20", + "@fluentui/react-positioning": "^9.14.3", + "@fluentui/react-progress": "^9.1.71", + "@fluentui/react-provider": "^9.13.19", + "@fluentui/react-radio": "^9.2.15", + "@fluentui/react-rating": "^9.0.3", + "@fluentui/react-search": "9.0.0", + "@fluentui/react-select": "^9.1.71", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-skeleton": "^9.0.59", + "@fluentui/react-slider": "^9.1.77", + "@fluentui/react-spinbutton": "^9.2.71", + "@fluentui/react-spinner": "^9.4.4", + "@fluentui/react-switch": "^9.1.77", + "@fluentui/react-table": "^9.14.0", + "@fluentui/react-tabs": "^9.4.16", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-tags": "^9.3.0", + "@fluentui/react-text": "^9.4.15", + "@fluentui/react-textarea": "^9.3.71", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-toast": "^9.3.37", + "@fluentui/react-toolbar": "^9.1.78", + "@fluentui/react-tooltip": "^9.4.23", + "@fluentui/react-tree": "^9.4.38", + "@fluentui/react-utilities": "^9.18.6", + "@fluentui/react-virtualizer": "9.0.0-alpha.74", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-context-selector": { + "version": "9.1.57", + "resolved": "https://registry.npmjs.org/@fluentui/react-context-selector/-/react-context-selector-9.1.57.tgz", + "integrity": "sha512-cxUBg7GFnhYzOTpY3bhwR8jFA/74cqnKyE3YwNmN3HNjwCjj6c5qBRmHTl0B9NsXkEzXiDqa7P+xhb0H7/3y0g==", + "dependencies": { + "@fluentui/react-utilities": "^9.18.6", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0", + "scheduler": ">=0.19.0 <=0.23.0" + } + }, + "node_modules/@fluentui/react-dialog": { + "version": "9.10.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-dialog/-/react-dialog-9.10.0.tgz", + "integrity": "sha512-l1Ly2xQlZKnUS10sKLB9px4H7NQOpQBAA07alWINAVBRSfmaGfoPRBsWkHn8WXWVEWa4hoFdMJ1M4JhMYsW0GA==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-portal": "^9.4.20", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1", + "react-transition-group": "^4.4.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-divider": { + "version": "9.2.66", + "resolved": "https://registry.npmjs.org/@fluentui/react-divider/-/react-divider-9.2.66.tgz", + "integrity": "sha512-8syTKPiyvXygwELw7S3uX/KHE8AFfLbv0bfmwMSfKwayUMuxQhLJongRFYBK30djEVwKLnh7/PwuCz26ul1B/A==", + "dependencies": { + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-drawer": { + "version": "9.1.11", + "resolved": "https://registry.npmjs.org/@fluentui/react-drawer/-/react-drawer-9.1.11.tgz", + "integrity": "sha512-l7nc494UkPG0I8zxxRGSkkaYYkGiprYntl567+pLeOAVGrXHxsoJA/wDx88nf4SBpDR/ndy4U+k0Wc1TdsqBAg==", + "dependencies": { + "@fluentui/react-dialog": "^9.10.0", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-motion-preview": "^0.5.18", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-field": { + "version": "9.1.61", + "resolved": "https://registry.npmjs.org/@fluentui/react-field/-/react-field-9.1.61.tgz", + "integrity": "sha512-rbwTL+rzK0fSq9GIR4nAABPr77Usw7ZxVJR4Mr6YjE20+SnTXw00FgSHH4HfPXaAz0onWsEJc1ieSp2hUHwczw==", + "dependencies": { + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, "node_modules/@fluentui/react-focus": { - "version": "8.8.34", - "resolved": "https://registry.npmjs.org/@fluentui/react-focus/-/react-focus-8.8.34.tgz", - "integrity": "sha512-GNi8MqQRdoIaYpiz5kWIQaX1mNzFz3X+UShezA3gohrXnkONUvrPBuFDyYgQXoqk67juEZ+oGxl2PpKjz08HCA==", - "dependencies": { - "@fluentui/keyboard-key": "^0.4.12", - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/set-version": "^8.2.12", - "@fluentui/style-utilities": "^8.9.20", - "@fluentui/utilities": "^8.13.21", + "version": "8.8.44", + "resolved": "https://registry.npmjs.org/@fluentui/react-focus/-/react-focus-8.8.44.tgz", + "integrity": "sha512-eBFC06I8UdsPRgnl+h1bp7+37NLpdb3zQ5PRGlPazXl5SgYoQxV5WAwsGP1MPuef6xiB5cq9oydVRRvQsgL6Pg==", + "dependencies": { + "@fluentui/keyboard-key": "^0.4.16", + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/set-version": "^8.2.16", + "@fluentui/style-utilities": "^8.10.7", + "@fluentui/utilities": "^8.15.2", "tslib": "^2.1.0" }, "peerDependencies": { @@ -1286,13 +1736,13 @@ } }, "node_modules/@fluentui/react-hooks": { - "version": "8.6.33", - "resolved": "https://registry.npmjs.org/@fluentui/react-hooks/-/react-hooks-8.6.33.tgz", - "integrity": "sha512-3P9RA34QhhjFwHwCvfOqMDgCwvks4hgMsEGvQVTdrcya4uskxBx4FqCLzoMxkXcAJjJCiTJmPx/mZQqQpgoyoA==", + "version": "8.7.2", + "resolved": "https://registry.npmjs.org/@fluentui/react-hooks/-/react-hooks-8.7.2.tgz", + "integrity": "sha512-bUYiLKBG202a9yZT9ZSwKGDIzUEXFgps67/9RKmBDcxzsKbmaPOVe7Y5+Lh2oR22Hey6dy+jK5MiYsW7gkQ1Cg==", "dependencies": { - "@fluentui/react-window-provider": "^2.2.16", - "@fluentui/set-version": "^8.2.12", - "@fluentui/utilities": "^8.13.21", + "@fluentui/react-window-provider": "^2.2.20", + "@fluentui/set-version": "^8.2.16", + "@fluentui/utilities": "^8.15.2", "tslib": "^2.1.0" }, "peerDependencies": { @@ -1300,11 +1750,834 @@ "react": ">=16.8.0 <19.0.0" } }, + "node_modules/@fluentui/react-icons": { + "version": "2.0.235", + "resolved": "https://registry.npmjs.org/@fluentui/react-icons/-/react-icons-2.0.235.tgz", + "integrity": "sha512-8uZPBncO+dTHuZyke+KXv4bSF4ZtHyniVOVWXnbFClqMmarb4qRul06qCqq2bbqz/7xFtP5YujypKn+d2i+vEg==", + "dependencies": { + "@griffel/react": "^1.0.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": ">=16.8.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-image": { + "version": "9.1.63", + "resolved": "https://registry.npmjs.org/@fluentui/react-image/-/react-image-9.1.63.tgz", + "integrity": "sha512-52LSN84DYYhX5Q4AimNjrAD7lNFlKsNRbQwnSr+7Qo0liBJv7Qz0Hdo1AjEXqVdbmHA9i6b8GFtj0idHaoy9tA==", + "dependencies": { + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-infobutton": { + "version": "9.0.0-beta.100", + "resolved": "https://registry.npmjs.org/@fluentui/react-infobutton/-/react-infobutton-9.0.0-beta.100.tgz", + "integrity": "sha512-gvcewG9PegxGF9LQfXaWfRwZqLWPbehRmDxdJmOAwstCH2dqj7gRZHXEE8UMh0QZPQjYc6vHIRFeGSxb2nPSfQ==", + "dependencies": { + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-popover": "^9.9.4", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-infolabel": { + "version": "9.0.28", + "resolved": "https://registry.npmjs.org/@fluentui/react-infolabel/-/react-infolabel-9.0.28.tgz", + "integrity": "sha512-EFZamhzmvnW4WVUm2ZifX5BVtu8TugEnM/2KQBUSrpp9CC66q4OWX5RI40r8zVZVYk/YzQJAbcufRc0x3eORSw==", + "dependencies": { + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-popover": "^9.9.4", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.8.0 <19.0.0", + "@types/react-dom": ">=16.8.0 <19.0.0", + "react": ">=16.8.0 <19.0.0", + "react-dom": ">=16.8.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-input": { + "version": "9.4.71", + "resolved": "https://registry.npmjs.org/@fluentui/react-input/-/react-input-9.4.71.tgz", + "integrity": "sha512-v58SQgFCWqh3LsRBiSUSIIk9EN/lC2jF+TGxDa/bDncrKFYXimtMPNowyvcs7NKDFvL7IYge5/jTlfkvnNWv4A==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-jsx-runtime": { + "version": "9.0.35", + "resolved": "https://registry.npmjs.org/@fluentui/react-jsx-runtime/-/react-jsx-runtime-9.0.35.tgz", + "integrity": "sha512-UDLN0nqTfnc3i809F/6pn15CslU8l71zY8nBBF14PHht/5fsp529hABOjF/QXUZsHGUTVWolMJnVXt2SmNFD4w==", + "dependencies": { + "@fluentui/react-utilities": "^9.18.6", + "@swc/helpers": "^0.5.1", + "react-is": "^17.0.2" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "react": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-jsx-runtime/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/@fluentui/react-label": { + "version": "9.1.67", + "resolved": "https://registry.npmjs.org/@fluentui/react-label/-/react-label-9.1.67.tgz", + "integrity": "sha512-TiFrx9hIdnIrPg9vGSvAGt9jNiX2tmAr7INQmuXOuIMcnMWdkwmJxvTgft4oh906DjglHq2mfJbsVrCOMRKBoA==", + "dependencies": { + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-link": { + "version": "9.2.17", + "resolved": "https://registry.npmjs.org/@fluentui/react-link/-/react-link-9.2.17.tgz", + "integrity": "sha512-YodfBnTO2ATBaViu7pwcn+WMgFjLrY2sVtrQEtdJyjLO5Re+Wdg0wkgmrvybcjiPJmT3ic9eoQTOekeOpTPArQ==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-menu": { + "version": "9.13.7", + "resolved": "https://registry.npmjs.org/@fluentui/react-menu/-/react-menu-9.13.7.tgz", + "integrity": "sha512-pPVY46X7BC5yLIa731E8OkVghtI0DxuYeQ8U8Q2uYGuZ78klejWNuYgYK6Ebziqa48DjXejqX3iqCkZlzb5Q0g==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-portal": "^9.4.20", + "@fluentui/react-positioning": "^9.14.3", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-message-bar": { + "version": "9.0.26", + "resolved": "https://registry.npmjs.org/@fluentui/react-message-bar/-/react-message-bar-9.0.26.tgz", + "integrity": "sha512-OQPcwkkgxEBijL4QlH6R3cRZz7zMk/eJNgPdRKiG0/rQ4wjKAD//hixvh71025D+M8i19DuurTbz8atAYfkRLg==", + "dependencies": { + "@fluentui/react-button": "^9.3.75", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1", + "react-transition-group": "^4.4.1" + }, + "peerDependencies": { + "@types/react": ">=16.8.0 <19.0.0", + "@types/react-dom": ">=16.8.0 <19.0.0", + "react": ">=16.8.0 <19.0.0", + "react-dom": ">=16.8.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-motion-preview": { + "version": "0.5.18", + "resolved": "https://registry.npmjs.org/@fluentui/react-motion-preview/-/react-motion-preview-0.5.18.tgz", + "integrity": "sha512-UfD0f1CSWOrQOgIiO4a41hVwAYcITc3UgcjLy0Gh0Nw5+Vv1/ERKAD9XPiniN7dC4N3z7v89NzWvxTA5ZVMDig==", + "dependencies": { + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-overflow": { + "version": "9.1.16", + "resolved": "https://registry.npmjs.org/@fluentui/react-overflow/-/react-overflow-9.1.16.tgz", + "integrity": "sha512-mBDZDBIthlWLj3aW7qh+PQiVzeUWBzM4U1PRsZ2XhiGWqcYVu/YrY20ilV8u6W26Zlj9r88M6j/qin1euu+2Dw==", + "dependencies": { + "@fluentui/priority-overflow": "^9.1.11", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-persona": { + "version": "9.2.80", + "resolved": "https://registry.npmjs.org/@fluentui/react-persona/-/react-persona-9.2.80.tgz", + "integrity": "sha512-hGgMvH6Rvzr3PvaovvNKySC8Nwh7J5nKp0zcIcWVehc/qJB4nwR2mB3Nd/aZK30hSTdUKLKTVvr321Uy0q9K4A==", + "dependencies": { + "@fluentui/react-avatar": "^9.6.21", + "@fluentui/react-badge": "^9.2.31", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-popover": { + "version": "9.9.4", + "resolved": "https://registry.npmjs.org/@fluentui/react-popover/-/react-popover-9.9.4.tgz", + "integrity": "sha512-6nmoLk7XtaGWyS1r1Grm1KPWVaCl7AiCmxXChovbrKAhPric2uuupcH41mXAz+zQ7QcUj/2Knl+Ns+cwjHlqIg==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-portal": "^9.4.20", + "@fluentui/react-positioning": "^9.14.3", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-portal": { + "version": "9.4.20", + "resolved": "https://registry.npmjs.org/@fluentui/react-portal/-/react-portal-9.4.20.tgz", + "integrity": "sha512-0UBOYDQn4zHCiORrW+tDFO4lysqZjcIsT8ssAZIxK7eHz3uJLQNoUc2v9iLQH9evgntEmW65FYc1uvIKWgA7MA==", + "dependencies": { + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1", + "use-disposable": "^1.0.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, "node_modules/@fluentui/react-portal-compat-context": { - "version": "9.0.10", - "resolved": "https://registry.npmjs.org/@fluentui/react-portal-compat-context/-/react-portal-compat-context-9.0.10.tgz", - "integrity": "sha512-l38C+tGb76yyFQ9sxUrY8DDyp2hoYru3pISFivPitFgkP6nqlnZPNd8yPE48RuVWjMhTKQ/1uCdE6ymBH9wBZQ==", + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@fluentui/react-portal-compat-context/-/react-portal-compat-context-9.0.11.tgz", + "integrity": "sha512-ubvW/ej0O+Pago9GH3mPaxzUgsNnBoqvghNamWjyKvZIViyaXUG6+sgcAl721R+qGAFac+A20akI5qDJz/xtdg==", + "dependencies": { + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "react": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-positioning": { + "version": "9.14.3", + "resolved": "https://registry.npmjs.org/@fluentui/react-positioning/-/react-positioning-9.14.3.tgz", + "integrity": "sha512-8u91AfNzEGhZJnx+Y/4EC5dMgHnHPYzMrg86FawmLyoA8MyGuTzznC38bFKG20Bti3MxfFuLASUrrGOO0oo+nw==", + "dependencies": { + "@floating-ui/devtools": "0.2.1", + "@floating-ui/dom": "^1.2.0", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-progress": { + "version": "9.1.71", + "resolved": "https://registry.npmjs.org/@fluentui/react-progress/-/react-progress-9.1.71.tgz", + "integrity": "sha512-jskWg5RQYTHpVy1rTWDqGIj1q0/fSqLBd4eTjEZKZS3wRefLTBMACM8QBl4U9ZUjdgO4SXXE8lKOyUG7uZhS8A==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-provider": { + "version": "9.13.19", + "resolved": "https://registry.npmjs.org/@fluentui/react-provider/-/react-provider-9.13.19.tgz", + "integrity": "sha512-2fJ1Upxwf7Ae0AfsJ0EWIsP60h08ehd57qSgoRAOtMbXyuz1nip8rp/fFiY4BIdfhMLcwffwDmaIiR2R2LkRBA==", + "dependencies": { + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/core": "^1.14.1", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-radio": { + "version": "9.2.15", + "resolved": "https://registry.npmjs.org/@fluentui/react-radio/-/react-radio-9.2.15.tgz", + "integrity": "sha512-ELqvEmggI7j/P44e6JhKifB0mnJud0SYqAPQ5AHtLGrVoMqmV2l+F0g+flNaUUYJ0xojkw7MaFeIu6ikzO1gJw==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-rating": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/@fluentui/react-rating/-/react-rating-9.0.3.tgz", + "integrity": "sha512-VlqTdKe6fqh8S6umNbSCYQ3OZbcJqHSBA1j66ZmetY4yoTac6NSaO2ooNb8le0B27CZmyzPQwcClPDizESoLOA==", + "dependencies": { + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.8.0 <19.0.0", + "@types/react-dom": ">=16.8.0 <19.0.0", + "react": ">=16.8.0 <19.0.0", + "react-dom": ">=16.8.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-search": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-search/-/react-search-9.0.0.tgz", + "integrity": "sha512-SGermxIgOTPmIX4Cp+0qWHO6q+wJNVLZGnbPOgf+nff78/qHtHXevnCzhYgRGrJhqZO9B9aSe1odfENfTHCosg==", + "dependencies": { + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-input": "^9.4.71", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-select": { + "version": "9.1.71", + "resolved": "https://registry.npmjs.org/@fluentui/react-select/-/react-select-9.1.71.tgz", + "integrity": "sha512-fHQ+mMcg5G1rfHtV5cwBsI9sbb7yNw9wE8TFk14sKYEjKYSBCjGhV9xlHePTqZUYybJUh0w85uN2q8tGYkbeUg==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-shared-contexts": { + "version": "9.16.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-shared-contexts/-/react-shared-contexts-9.16.0.tgz", + "integrity": "sha512-KUfjbVKQOK3bEZ4ImZZDMtEQWQToRqfmLVGilKV9m5ksfcgk/B5v0ny08LCFPRSmtCW/WB1N+eaMLYQm6y9vkA==", + "dependencies": { + "@fluentui/react-theme": "^9.1.19", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "react": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-skeleton": { + "version": "9.0.59", + "resolved": "https://registry.npmjs.org/@fluentui/react-skeleton/-/react-skeleton-9.0.59.tgz", + "integrity": "sha512-agzbuKpMKd3tfWInbqyrAb10qszrE7aVfR22cGGBu0r0UErN9c9/D02jPBGaqtopO15z+E1+fwOINOMrRCjGCA==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-slider": { + "version": "9.1.77", + "resolved": "https://registry.npmjs.org/@fluentui/react-slider/-/react-slider-9.1.77.tgz", + "integrity": "sha512-5blsvJ1CiHrGwgJEQVeolVa2g4Gs1wgKNkMoOvkvPq51e1Mmu09VOxicC8saAdwRUcr1IkUiSZ/jWCIFRnmcsQ==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-spinbutton": { + "version": "9.2.71", + "resolved": "https://registry.npmjs.org/@fluentui/react-spinbutton/-/react-spinbutton-9.2.71.tgz", + "integrity": "sha512-tfZ/AG0hi9I5xAf03WmQ2A5KjfO3oWPgLHP4bRrlpZ9alXAlqfMTQKDBdim0i/41KIFOuuudArbEXBXuZftvRA==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-spinner": { + "version": "9.4.4", + "resolved": "https://registry.npmjs.org/@fluentui/react-spinner/-/react-spinner-9.4.4.tgz", + "integrity": "sha512-J3KLak5Wc1WBBdExI63/us5KeGObGXgM0tP8y5UJLKO7hM6MgysDocwH1d+HcrzXJBZzo5OFycGpKIkfL5q1ow==", + "dependencies": { + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-switch": { + "version": "9.1.77", + "resolved": "https://registry.npmjs.org/@fluentui/react-switch/-/react-switch-9.1.77.tgz", + "integrity": "sha512-rlhQriQAPyS5QS7ACaXXdDHFiUMcLWATxV5Lew1WPoj/KV0T3sMIsDOCzZgDxCF9pWYrC8ydbfbut361TU2iAA==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-label": "^9.1.67", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-table": { + "version": "9.14.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-table/-/react-table-9.14.0.tgz", + "integrity": "sha512-k2yQUF+dL0SYVUxlD0sdqQCMgsAHniw5kIcyAAA0up9rIZtgQbQktyuPwIeLgzQSFDRmlNCfiIJ+QCDTvxqPVg==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-avatar": "^9.6.21", + "@fluentui/react-checkbox": "^9.2.20", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-radio": "^9.2.15", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-tabs": { + "version": "9.4.16", + "resolved": "https://registry.npmjs.org/@fluentui/react-tabs/-/react-tabs-9.4.16.tgz", + "integrity": "sha512-8+XFkswmSwrDMsYXCOCR+XiSJNsAlp/ioxwvARS11DfN6N98WrJ6xsKLlCNpPuIvvD5Lm3JAUJcztKX8OEeV6w==", + "dependencies": { + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-tabster": { + "version": "9.20.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-tabster/-/react-tabster-9.20.0.tgz", + "integrity": "sha512-jgbY5mF7vMHHkGr5rtrZ31y47Q4s/ns4IuAxqSlaptwxBK5hNOykjXc1IVRCAX2MWat/u5ipkmZXw/ZS8+Khdw==", "dependencies": { + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1", + "keyborg": "^2.5.0", + "tabster": "^7.1.0" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-tags": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@fluentui/react-tags/-/react-tags-9.3.0.tgz", + "integrity": "sha512-Z7y/IGpZWnhym3EBV9QN6T7yITmVEEAYMjJBgEpVfQMoNs/eSUBBadevWFEOz4ldi4Ygkr2zB+Zhd9CaGucUqw==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-avatar": "^9.6.21", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-text": { + "version": "9.4.15", + "resolved": "https://registry.npmjs.org/@fluentui/react-text/-/react-text-9.4.15.tgz", + "integrity": "sha512-sm2DflTLAwppfC0zt+Ev0uXgLQOEyN/Gaccp2v1618ghtwu+i6O9AaRB74dErsIRvqsKGmk0tlm3RswNpEaHmA==", + "dependencies": { + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-textarea": { + "version": "9.3.71", + "resolved": "https://registry.npmjs.org/@fluentui/react-textarea/-/react-textarea-9.3.71.tgz", + "integrity": "sha512-0P+B2k14BnzZTJ2E4r08EwUx4ce3QpMykdprVq6jMHjczW3T2dEjq1VKlevmHM8QG1I5Ls/efs5s76yVxtXPJA==", + "dependencies": { + "@fluentui/react-field": "^9.1.61", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-theme": { + "version": "9.1.19", + "resolved": "https://registry.npmjs.org/@fluentui/react-theme/-/react-theme-9.1.19.tgz", + "integrity": "sha512-mrVhKbr4o9UKERPxgghIRDU59S7gRizrgz3/wwyMt7elkr8Sw+OpwKIeEw9x6P0RTcFDC00nggaMJhBGs7Xo4A==", + "dependencies": { + "@fluentui/tokens": "1.0.0-alpha.16", + "@swc/helpers": "^0.5.1" + } + }, + "node_modules/@fluentui/react-toast": { + "version": "9.3.37", + "resolved": "https://registry.npmjs.org/@fluentui/react-toast/-/react-toast-9.3.37.tgz", + "integrity": "sha512-3GAiSYHo8c2d5sZK9qChR0DduXPi3CkmNFBuIVc7C3WJgHQdD/aKjr9xX2jqoi3Pf73mUOusvNgvii5vKmWuAw==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-portal": "^9.4.20", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1", + "react-transition-group": "^4.4.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-toolbar": { + "version": "9.1.78", + "resolved": "https://registry.npmjs.org/@fluentui/react-toolbar/-/react-toolbar-9.1.78.tgz", + "integrity": "sha512-KLlX1Q/DSUr71sZxZOfAYnnFl+gPvJKnzKXVXUmZ7eN8x2i3+5u5DKkX5M92RiT0CLjqWZlEqtCkzxdP30AMcQ==", + "dependencies": { + "@fluentui/react-button": "^9.3.75", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-divider": "^9.2.66", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-radio": "^9.2.15", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-tooltip": { + "version": "9.4.23", + "resolved": "https://registry.npmjs.org/@fluentui/react-tooltip/-/react-tooltip-9.4.23.tgz", + "integrity": "sha512-KM+UttCUK4Pbm8g4+8RGEmZlcdgnWTrak1k21vf/spLC7DPDktUikxwsAF06Ywmb9+vqSlMF7/a4e8pvbS+DNg==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-portal": "^9.4.20", + "@fluentui/react-positioning": "^9.14.3", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-tree": { + "version": "9.4.38", + "resolved": "https://registry.npmjs.org/@fluentui/react-tree/-/react-tree-9.4.38.tgz", + "integrity": "sha512-L4LW9VGCVdJK0/S/ZWm+i2Njpi670ol/ZoE3HkTWzv7vcJzc2csVij60SacvYlUM2F1XW0A5ZidCr2/5Q9YcOw==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-aria": "^9.10.4", + "@fluentui/react-avatar": "^9.6.21", + "@fluentui/react-button": "^9.3.75", + "@fluentui/react-checkbox": "^9.2.20", + "@fluentui/react-context-selector": "^9.1.57", + "@fluentui/react-icons": "^2.0.235", + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-radio": "^9.2.15", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-tabster": "^9.20.0", + "@fluentui/react-theme": "^9.1.19", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, + "node_modules/@fluentui/react-utilities": { + "version": "9.18.6", + "resolved": "https://registry.npmjs.org/@fluentui/react-utilities/-/react-utilities-9.18.6.tgz", + "integrity": "sha512-TLWL0jqArzZXZLLzA/Mi7gMDBr8tc7LcCnCnZBIHniVB/eESMKgTYl6EwbepHfkkcPfp+amH9U4CbXADNqQQsw==", + "dependencies": { + "@fluentui/keyboard-keys": "^9.0.7", + "@fluentui/react-shared-contexts": "^9.16.0", "@swc/helpers": "^0.5.1" }, "peerDependencies": { @@ -1312,12 +2585,30 @@ "react": ">=16.14.0 <19.0.0" } }, + "node_modules/@fluentui/react-virtualizer": { + "version": "9.0.0-alpha.74", + "resolved": "https://registry.npmjs.org/@fluentui/react-virtualizer/-/react-virtualizer-9.0.0-alpha.74.tgz", + "integrity": "sha512-f6Cck3Fh6ov+zKSAblLpOdaM8Sq/SW2OKnQmBZQBCj4e8feyhx5eoaJo8be8afteqAczsovt2QB049a+NtaFhw==", + "dependencies": { + "@fluentui/react-jsx-runtime": "^9.0.35", + "@fluentui/react-shared-contexts": "^9.16.0", + "@fluentui/react-utilities": "^9.18.6", + "@griffel/react": "^1.5.14", + "@swc/helpers": "^0.5.1" + }, + "peerDependencies": { + "@types/react": ">=16.14.0 <19.0.0", + "@types/react-dom": ">=16.9.0 <19.0.0", + "react": ">=16.14.0 <19.0.0", + "react-dom": ">=16.14.0 <19.0.0" + } + }, "node_modules/@fluentui/react-window-provider": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/@fluentui/react-window-provider/-/react-window-provider-2.2.16.tgz", - "integrity": "sha512-4gkUMSAUjo3cgCGt+0VvTbMy9qbF6zo/cmmfYtfqbSFtXz16lKixSCMIf66gXdKjovqRGVFC/XibqfrXM2QLuw==", + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/@fluentui/react-window-provider/-/react-window-provider-2.2.20.tgz", + "integrity": "sha512-Ec3pcYVxVShdtonZpzIC2CYUSb1idoFWgNitybpr1J6jIDQJmFMEOiU71+NVjKpJIjLCL84vrdlncBLEarAW0Q==", "dependencies": { - "@fluentui/set-version": "^8.2.12", + "@fluentui/set-version": "^8.2.16", "tslib": "^2.1.0" }, "peerDependencies": { @@ -1331,22 +2622,22 @@ "integrity": "sha512-W+IzEBw8a6LOOfRJM02dTT7BDZijxm+Z7lhtOAz1+y9vQm1Kdz9jlAO+qCEKsfxtUOmKilW8DIRqFw2aUgKeGg==" }, "node_modules/@fluentui/set-version": { - "version": "8.2.12", - "resolved": "https://registry.npmjs.org/@fluentui/set-version/-/set-version-8.2.12.tgz", - "integrity": "sha512-I4uXIg9xkL2Heotf1+7CyGcHQskdtMSH0B5mSV0TL3w7WI2qpnzrpKuP2Kq6DHZN6Xrsg4ORFNJSjLxq/s9cUQ==", + "version": "8.2.16", + "resolved": "https://registry.npmjs.org/@fluentui/set-version/-/set-version-8.2.16.tgz", + "integrity": "sha512-g7t5m8Ad48FpCYEfjQwe/QVOBGOz9zpukTYtWH8MI4XCa3DEg5laQRt7HUuzfEKU8QKjNVVHnKXoW29Jgyipdg==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@fluentui/style-utilities": { - "version": "8.9.20", - "resolved": "https://registry.npmjs.org/@fluentui/style-utilities/-/style-utilities-8.9.20.tgz", - "integrity": "sha512-oj0ghn21DnqCardlcEp+zob3IEAfA/Z7ZjzuYqlHuPUItwRqGmpr1wErssRC4R1kHsH6gq9ALxVgMa4/FvdzGg==", - "dependencies": { - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/set-version": "^8.2.12", - "@fluentui/theme": "^2.6.38", - "@fluentui/utilities": "^8.13.21", + "version": "8.10.7", + "resolved": "https://registry.npmjs.org/@fluentui/style-utilities/-/style-utilities-8.10.7.tgz", + "integrity": "sha512-dTNlEdomE4lsQtbwvRTxgeC5q1Vj3RPy4UtFlBjkfn9Fk0RKojpWMvWZko3UipNx9P0J8jGk6Uw4PO/mSPVEzg==", + "dependencies": { + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/set-version": "^8.2.16", + "@fluentui/theme": "^2.6.45", + "@fluentui/utilities": "^8.15.2", "@microsoft/load-themed-styles": "^1.10.26", "tslib": "^2.1.0" } @@ -1357,13 +2648,13 @@ "integrity": "sha512-W+IzEBw8a6LOOfRJM02dTT7BDZijxm+Z7lhtOAz1+y9vQm1Kdz9jlAO+qCEKsfxtUOmKilW8DIRqFw2aUgKeGg==" }, "node_modules/@fluentui/theme": { - "version": "2.6.38", - "resolved": "https://registry.npmjs.org/@fluentui/theme/-/theme-2.6.38.tgz", - "integrity": "sha512-LObK/mZOQFb3aTcDlKBSLpPV0BOp5BOuNqg0Wps51b1RlisI6oS3STmw3BkcAe6jOi/p4cgLpwHMkYHh2o8PmQ==", + "version": "2.6.45", + "resolved": "https://registry.npmjs.org/@fluentui/theme/-/theme-2.6.45.tgz", + "integrity": "sha512-XhpitHtLJuGiHPZr6SBLt7D+9ie/630UzGDiAX0PATaxaz3eG86WWzZThRBo6O1XUX5HAsc1d5rQhN/xRq0bLg==", "dependencies": { - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/set-version": "^8.2.12", - "@fluentui/utilities": "^8.13.21", + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/set-version": "^8.2.16", + "@fluentui/utilities": "^8.15.2", "tslib": "^2.1.0" }, "peerDependencies": { @@ -1371,14 +2662,22 @@ "react": ">=16.8.0 <19.0.0" } }, + "node_modules/@fluentui/tokens": { + "version": "1.0.0-alpha.16", + "resolved": "https://registry.npmjs.org/@fluentui/tokens/-/tokens-1.0.0-alpha.16.tgz", + "integrity": "sha512-Gr9G8LIlUhZYX5j6CfDQrofQqsWAz/q54KabWn1tWV/1083WwyoTZXiG1k6b37NnK7Feye7D7Nz+4MNqoKpXGw==", + "dependencies": { + "@swc/helpers": "^0.5.1" + } + }, "node_modules/@fluentui/utilities": { - "version": "8.13.21", - "resolved": "https://registry.npmjs.org/@fluentui/utilities/-/utilities-8.13.21.tgz", - "integrity": "sha512-YPWsRAL1jgbPxf+wAY8p6LjIG4em0NReqgU8ZCFnQx9wpQbe/ZRjQcaU06pD1tYtRGvyCutwhnWDaQHDw843Xg==", + "version": "8.15.2", + "resolved": "https://registry.npmjs.org/@fluentui/utilities/-/utilities-8.15.2.tgz", + "integrity": "sha512-hs2y6ksWpTQcoHV5rYDGAClq8NPJnJ1xiT0nnqipZnQc1eusLSv1oCf/xudy1NmrlxNF9/atB5VSfz3/YrShTg==", "dependencies": { - "@fluentui/dom-utilities": "^2.2.12", - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/set-version": "^8.2.12", + "@fluentui/dom-utilities": "^2.2.16", + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/set-version": "^8.2.16", "tslib": "^2.1.0" }, "peerDependencies": { @@ -1392,6 +2691,39 @@ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", "dev": true }, + "node_modules/@griffel/core": { + "version": "1.15.3", + "resolved": "https://registry.npmjs.org/@griffel/core/-/core-1.15.3.tgz", + "integrity": "sha512-5ksBpOjFJ75HijGehQ06Ri9cQjhd/rqQ0N/jJzXDDXQFYdOOzib/QL7BXNwhkLtTyHvN391cD4/BqcTdynfLUg==", + "dependencies": { + "@emotion/hash": "^0.9.0", + "@griffel/style-types": "^1.0.4", + "csstype": "^3.1.3", + "rtl-css-js": "^1.16.1", + "stylis": "^4.2.0", + "tslib": "^2.1.0" + } + }, + "node_modules/@griffel/react": { + "version": "1.5.21", + "resolved": "https://registry.npmjs.org/@griffel/react/-/react-1.5.21.tgz", + "integrity": "sha512-7wuY9uFSt/0E7kLAKX//ue8NILx0IGoOtIx6WVuavEUFJXPCrvFn4uCDgnJC0211LZtJ+XH7zZGPNUtSb7nijw==", + "dependencies": { + "@griffel/core": "^1.15.3", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "react": ">=16.8.0 <19.0.0" + } + }, + "node_modules/@griffel/style-types": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@griffel/style-types/-/style-types-1.0.4.tgz", + "integrity": "sha512-geZomjQTIHXoQZFFB811PUMXYAr8LuBNOMPcR2YJAl1pslbHYYiZKCa2FgZCw00hnQFP4uB4JIJ2CiPJqKZYmw==", + "dependencies": { + "csstype": "^3.1.3" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.9.5", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", @@ -1739,45 +3071,45 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", - "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, "node_modules/@jridgewell/sourcemap-codec": { @@ -1787,9 +3119,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -1797,9 +3129,9 @@ } }, "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", "dev": true }, "node_modules/@microsoft/api-extractor": { @@ -2139,9 +3471,9 @@ } }, "node_modules/@microsoft/eslint-config-spfx/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -2306,9 +3638,9 @@ } }, "node_modules/@microsoft/load-themed-styles": { - "version": "2.0.88", - "resolved": "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-2.0.88.tgz", - "integrity": "sha512-RIE3RAFvpy4uwps5+q5LlAWGqOa4XWVHcOX2goqNcKhxxrYmQULYW0IcAfqR97gJgoNrfpr/6n/9Ufr+qv9xIg==", + "version": "2.0.116", + "resolved": "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-2.0.116.tgz", + "integrity": "sha512-bHzCfkwlHMMAgm6ac5C/UJFnd/4yuMkA6WXsFmj85BVacNmF2EZDQHK97P5XXQaFVzi3Ulz/cirxCg43jSvWFg==", "dev": true, "peer": true }, @@ -2896,9 +4228,9 @@ } }, "node_modules/@microsoft/rush-stack-compiler-4.5/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -3256,9 +4588,9 @@ } }, "node_modules/@microsoft/rush-stack-compiler-4.7/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -3600,22 +4932,22 @@ } }, "node_modules/@microsoft/sp-component-base/node_modules/@fluentui/react": { - "version": "8.112.9", - "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.112.9.tgz", - "integrity": "sha512-mSu++f/TA+en+pIiWJE8s2+L6TtIdUpULkh4/knsQ+4NTBjvFnve0bK936VBHK8ff6ypLa0HqiQKFIMlQyH/iw==", - "dependencies": { - "@fluentui/date-time-utilities": "^8.5.14", - "@fluentui/font-icons-mdl2": "^8.5.27", - "@fluentui/foundation-legacy": "^8.2.47", - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/react-focus": "^8.8.34", - "@fluentui/react-hooks": "^8.6.33", - "@fluentui/react-portal-compat-context": "^9.0.10", - "@fluentui/react-window-provider": "^2.2.16", - "@fluentui/set-version": "^8.2.12", - "@fluentui/style-utilities": "^8.9.20", - "@fluentui/theme": "^2.6.38", - "@fluentui/utilities": "^8.13.21", + "version": "8.117.5", + "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.117.5.tgz", + "integrity": "sha512-3kb1sJ7rEnZhtugd/6smrMz35NkqxNTMBaBGuYM5LsET6YeQxfciGBUeukSK7gulXtUl3WkLEK8+vLHsSClO3A==", + "dependencies": { + "@fluentui/date-time-utilities": "^8.6.2", + "@fluentui/font-icons-mdl2": "^8.5.36", + "@fluentui/foundation-legacy": "^8.4.2", + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/react-focus": "^8.8.44", + "@fluentui/react-hooks": "^8.7.2", + "@fluentui/react-portal-compat-context": "^9.0.11", + "@fluentui/react-window-provider": "^2.2.20", + "@fluentui/set-version": "^8.2.16", + "@fluentui/style-utilities": "^8.10.7", + "@fluentui/theme": "^2.6.45", + "@fluentui/utilities": "^8.15.2", "@microsoft/load-themed-styles": "^1.10.26", "tslib": "^2.1.0" }, @@ -3829,6 +5161,12 @@ "node": ">=10" } }, + "node_modules/@microsoft/sp-css-loader/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "node_modules/@microsoft/sp-css-loader/node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -4063,22 +5401,22 @@ } }, "node_modules/@microsoft/sp-loader/node_modules/@fluentui/react": { - "version": "8.112.9", - "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.112.9.tgz", - "integrity": "sha512-mSu++f/TA+en+pIiWJE8s2+L6TtIdUpULkh4/knsQ+4NTBjvFnve0bK936VBHK8ff6ypLa0HqiQKFIMlQyH/iw==", - "dependencies": { - "@fluentui/date-time-utilities": "^8.5.14", - "@fluentui/font-icons-mdl2": "^8.5.27", - "@fluentui/foundation-legacy": "^8.2.47", - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/react-focus": "^8.8.34", - "@fluentui/react-hooks": "^8.6.33", - "@fluentui/react-portal-compat-context": "^9.0.10", - "@fluentui/react-window-provider": "^2.2.16", - "@fluentui/set-version": "^8.2.12", - "@fluentui/style-utilities": "^8.9.20", - "@fluentui/theme": "^2.6.38", - "@fluentui/utilities": "^8.13.21", + "version": "8.117.5", + "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.117.5.tgz", + "integrity": "sha512-3kb1sJ7rEnZhtugd/6smrMz35NkqxNTMBaBGuYM5LsET6YeQxfciGBUeukSK7gulXtUl3WkLEK8+vLHsSClO3A==", + "dependencies": { + "@fluentui/date-time-utilities": "^8.6.2", + "@fluentui/font-icons-mdl2": "^8.5.36", + "@fluentui/foundation-legacy": "^8.4.2", + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/react-focus": "^8.8.44", + "@fluentui/react-hooks": "^8.7.2", + "@fluentui/react-portal-compat-context": "^9.0.11", + "@fluentui/react-window-provider": "^2.2.20", + "@fluentui/set-version": "^8.2.16", + "@fluentui/style-utilities": "^8.10.7", + "@fluentui/theme": "^2.6.45", + "@fluentui/utilities": "^8.15.2", "@microsoft/load-themed-styles": "^1.10.26", "tslib": "^2.1.0" }, @@ -4336,22 +5674,22 @@ } }, "node_modules/@microsoft/sp-property-pane/node_modules/@fluentui/react": { - "version": "8.112.9", - "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.112.9.tgz", - "integrity": "sha512-mSu++f/TA+en+pIiWJE8s2+L6TtIdUpULkh4/knsQ+4NTBjvFnve0bK936VBHK8ff6ypLa0HqiQKFIMlQyH/iw==", - "dependencies": { - "@fluentui/date-time-utilities": "^8.5.14", - "@fluentui/font-icons-mdl2": "^8.5.27", - "@fluentui/foundation-legacy": "^8.2.47", - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/react-focus": "^8.8.34", - "@fluentui/react-hooks": "^8.6.33", - "@fluentui/react-portal-compat-context": "^9.0.10", - "@fluentui/react-window-provider": "^2.2.16", - "@fluentui/set-version": "^8.2.12", - "@fluentui/style-utilities": "^8.9.20", - "@fluentui/theme": "^2.6.38", - "@fluentui/utilities": "^8.13.21", + "version": "8.117.5", + "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.117.5.tgz", + "integrity": "sha512-3kb1sJ7rEnZhtugd/6smrMz35NkqxNTMBaBGuYM5LsET6YeQxfciGBUeukSK7gulXtUl3WkLEK8+vLHsSClO3A==", + "dependencies": { + "@fluentui/date-time-utilities": "^8.6.2", + "@fluentui/font-icons-mdl2": "^8.5.36", + "@fluentui/foundation-legacy": "^8.4.2", + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/react-focus": "^8.8.44", + "@fluentui/react-hooks": "^8.7.2", + "@fluentui/react-portal-compat-context": "^9.0.11", + "@fluentui/react-window-provider": "^2.2.20", + "@fluentui/set-version": "^8.2.16", + "@fluentui/style-utilities": "^8.10.7", + "@fluentui/theme": "^2.6.45", + "@fluentui/utilities": "^8.15.2", "@microsoft/load-themed-styles": "^1.10.26", "tslib": "^2.1.0" }, @@ -4410,22 +5748,22 @@ } }, "node_modules/@microsoft/sp-webpart-base/node_modules/@fluentui/react": { - "version": "8.112.9", - "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.112.9.tgz", - "integrity": "sha512-mSu++f/TA+en+pIiWJE8s2+L6TtIdUpULkh4/knsQ+4NTBjvFnve0bK936VBHK8ff6ypLa0HqiQKFIMlQyH/iw==", - "dependencies": { - "@fluentui/date-time-utilities": "^8.5.14", - "@fluentui/font-icons-mdl2": "^8.5.27", - "@fluentui/foundation-legacy": "^8.2.47", - "@fluentui/merge-styles": "^8.5.13", - "@fluentui/react-focus": "^8.8.34", - "@fluentui/react-hooks": "^8.6.33", - "@fluentui/react-portal-compat-context": "^9.0.10", - "@fluentui/react-window-provider": "^2.2.16", - "@fluentui/set-version": "^8.2.12", - "@fluentui/style-utilities": "^8.9.20", - "@fluentui/theme": "^2.6.38", - "@fluentui/utilities": "^8.13.21", + "version": "8.117.5", + "resolved": "https://registry.npmjs.org/@fluentui/react/-/react-8.117.5.tgz", + "integrity": "sha512-3kb1sJ7rEnZhtugd/6smrMz35NkqxNTMBaBGuYM5LsET6YeQxfciGBUeukSK7gulXtUl3WkLEK8+vLHsSClO3A==", + "dependencies": { + "@fluentui/date-time-utilities": "^8.6.2", + "@fluentui/font-icons-mdl2": "^8.5.36", + "@fluentui/foundation-legacy": "^8.4.2", + "@fluentui/merge-styles": "^8.6.2", + "@fluentui/react-focus": "^8.8.44", + "@fluentui/react-hooks": "^8.7.2", + "@fluentui/react-portal-compat-context": "^9.0.11", + "@fluentui/react-window-provider": "^2.2.20", + "@fluentui/set-version": "^8.2.16", + "@fluentui/style-utilities": "^8.10.7", + "@fluentui/theme": "^2.6.45", + "@fluentui/utilities": "^8.15.2", "@microsoft/load-themed-styles": "^1.10.26", "tslib": "^2.1.0" }, @@ -4905,6 +6243,12 @@ "node": ">= 0.8" } }, + "node_modules/@microsoft/spfx-heft-plugins/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "node_modules/@microsoft/spfx-heft-plugins/node_modules/qs": { "version": "6.10.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", @@ -5231,9 +6575,9 @@ } }, "node_modules/@opentelemetry/api": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.7.0.tgz", - "integrity": "sha512-AdY5wvN0P2vXBi3b29hxZgSFvdhdxPB9+f0B6s//P9Q8nibRWeA3cHm8UmLpio9ABigkVHJ5NMPk+Mz8VCCyrw==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.8.0.tgz", + "integrity": "sha512-I/s6F7yKUDdtMsoBWXJe8Qz40Tui5vsuKCWJEWVL+5q9sSWRzzx6v2KeNsOBEwd94j0eWkpWCH4yB6rZg9Mf0w==", "dev": true, "engines": { "node": ">=8.0.0" @@ -5541,13 +6885,13 @@ } }, "node_modules/@pnpm/dependency-path": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@pnpm/dependency-path/-/dependency-path-2.1.5.tgz", - "integrity": "sha512-Ki7v96NDlUzkIkgujSl+3sDY/nMjujOaDOTmjEeBebPiow53Y9Bw/UnxI8C2KKsnm/b7kUJPeFVbOhg3HMp7/Q==", + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@pnpm/dependency-path/-/dependency-path-2.1.8.tgz", + "integrity": "sha512-ywBaTjy0iSEF7lH3DlF8UXrdL2bw4AQFV2tTOeNeY7wc1W5CE+RHSJhf9MXBYcZPesqGRrPiU7Pimj3l05L9VA==", "dev": true, "dependencies": { "@pnpm/crypto.base32-hash": "2.0.0", - "@pnpm/types": "9.4.0", + "@pnpm/types": "9.4.2", "encode-registry": "^3.0.1", "semver": "^7.5.4" }, @@ -5571,9 +6915,9 @@ } }, "node_modules/@pnpm/dependency-path/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -5761,9 +7105,9 @@ "dev": true }, "node_modules/@pnpm/types": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/@pnpm/types/-/types-9.4.0.tgz", - "integrity": "sha512-IRDuIuNobLRQe0UyY2gbrrTzYS46tTNvOEfL6fOf0Qa8NyxUzeXz946v7fQuQE3LSBf8ENBC5SXhRmDl+mBEqA==", + "version": "9.4.2", + "resolved": "https://registry.npmjs.org/@pnpm/types/-/types-9.4.2.tgz", + "integrity": "sha512-g1hcF8Nv4gd76POilz9gD4LITAPXOe5nX4ijgr8ixCbLQZfcpYiMfJ+C1RlMNRUDo8vhlNB4O3bUlxmT6EAQXA==", "dev": true, "engines": { "node": ">=16.14" @@ -6082,9 +7426,9 @@ } }, "node_modules/@rushstack/eslint-plugin-packlets/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -6240,9 +7584,9 @@ } }, "node_modules/@rushstack/eslint-plugin-security/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -6385,9 +7729,9 @@ } }, "node_modules/@rushstack/eslint-plugin/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -7579,9 +8923,9 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/ast": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", - "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dev": true, "optional": true, "peer": true, @@ -7599,9 +8943,9 @@ "peer": true }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", "dev": true, "optional": true, "peer": true @@ -7615,17 +8959,17 @@ "peer": true }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", - "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dev": true, "optional": true, "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" + "@webassemblyjs/wasm-gen": "1.12.1" } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/ieee754": { @@ -7659,32 +9003,32 @@ "peer": true }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", - "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, "optional": true, "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", - "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, "optional": true, "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", "@webassemblyjs/leb128": "1.11.6", @@ -7692,28 +9036,28 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", - "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dev": true, "optional": true, "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", - "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, "optional": true, "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-api-error": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", @@ -7722,14 +9066,14 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", - "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, "optional": true, "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, @@ -7773,9 +9117,9 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", "dev": true, "optional": true, "peer": true, @@ -7905,9 +9249,9 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "optional": true, "peer": true, @@ -7933,18 +9277,18 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/terser-webpack-plugin": { - "version": "5.3.9", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", - "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", "dev": true, "optional": true, "peer": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", + "@jridgewell/trace-mapping": "^0.3.20", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", "serialize-javascript": "^6.0.1", - "terser": "^5.16.8" + "terser": "^5.26.0" }, "engines": { "node": ">= 10.13.0" @@ -7978,9 +9322,9 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", "dev": true, "optional": true, "peer": true, @@ -7993,36 +9337,36 @@ } }, "node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/webpack": { - "version": "5.89.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", - "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", + "version": "5.91.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz", + "integrity": "sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==", "dev": true, "optional": true, "peer": true, "dependencies": { "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", "acorn": "^8.7.1", "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.14.5", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.15.0", + "enhanced-resolve": "^5.16.0", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" }, "bin": { @@ -8708,9 +10052,9 @@ } }, "node_modules/@swc/helpers": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.3.tgz", - "integrity": "sha512-FaruWX6KdudYloq1AHD/4nU+UsMTdNE8CKyrseXWEcgjDAbvkwJg2QGPAnfIJLIWsjZOSPLOAykK6fuYp4vp4A==", + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.10.tgz", + "integrity": "sha512-CU+RF9FySljn7HVSkkjiB84hWkvTaI3rtLvF433+jRSBL2hMu3zX5bGhHS8C80SM++h4xy8hBSnUHFQHmRXSBw==", "dependencies": { "tslib": "^2.4.0" } @@ -8727,15 +10071,6 @@ "node": ">=6" } }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, "node_modules/@trysound/sax": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", @@ -8775,9 +10110,9 @@ } }, "node_modules/@types/babel__generator": { - "version": "7.6.7", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.7.tgz", - "integrity": "sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==", + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", "dev": true, "dependencies": { "@babel/types": "^7.0.0" @@ -8794,9 +10129,9 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.4.tgz", - "integrity": "sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", "dev": true, "dependencies": { "@babel/types": "^7.20.7" @@ -8861,10 +10196,19 @@ "@types/webpack": "^4" } }, + "node_modules/@types/cross-spawn": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cross-spawn/-/cross-spawn-6.0.3.tgz", + "integrity": "sha512-BDAkU7WHHRHnvBf5z89lcvACsvkz/n7Tv+HyD/uW76O29HoH1Tk/W6iQrepaZVbisvlEek4ygwT8IW7ow9XLAA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/eslint": { - "version": "8.44.7", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.7.tgz", - "integrity": "sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==", + "version": "8.56.9", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.9.tgz", + "integrity": "sha512-W4W3KcqzjJ0sHg2vAq9vfml6OhsJ53TcUjUqfzzZf/EChUtwspszj/S0pzMxnfRcO55/iGq47dscXw71Fxc4Zg==", "dev": true, "optional": true, "peer": true, @@ -8904,9 +10248,9 @@ } }, "node_modules/@types/express-serve-static-core": { - "version": "4.17.41", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.41.tgz", - "integrity": "sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", "dev": true, "dependencies": { "@types/node": "*", @@ -9379,9 +10723,9 @@ } }, "node_modules/@types/node-forge": { - "version": "1.3.10", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.10.tgz", - "integrity": "sha512-y6PJDYN4xYBxwd22l+OVH35N+1fCYWiuC3aiP2SlXVE6Lo7SS+rSx9r89hLxrP4pn6n1lBGhHJ12pj3F3Mpttw==", + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", "dev": true, "dependencies": { "@types/node": "*" @@ -9435,9 +10779,9 @@ "dev": true }, "node_modules/@types/prop-types": { - "version": "15.7.11", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", - "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" + "version": "15.7.12", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/q": { "version": "1.5.8", @@ -9446,9 +10790,9 @@ "dev": true }, "node_modules/@types/qs": { - "version": "6.9.10", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.10.tgz", - "integrity": "sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==", + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", "dev": true }, "node_modules/@types/range-parser": { @@ -9486,9 +10830,9 @@ } }, "node_modules/@types/react-addons-test-utils/node_modules/@types/react": { - "version": "15.7.27", - "resolved": "https://registry.npmjs.org/@types/react/-/react-15.7.27.tgz", - "integrity": "sha512-jLB0GLKJXo9uDjsucKzO32lMENh4fnE2tp8lWp6VfLshKoCeJt+GNERuSlucwY8zIlkqS5CA53IyeHwCaY+p3w==", + "version": "15.7.30", + "resolved": "https://registry.npmjs.org/@types/react/-/react-15.7.30.tgz", + "integrity": "sha512-jPeEJc8FcLZBVcOOcEqiGAxc6OIVb9dQ8Lhwr+VoNeKvMEVsaYY9++fo9MOibZsylHq6L1l0q9iwMAMVd3U7/w==", "dev": true }, "node_modules/@types/react-addons-update": { @@ -9520,9 +10864,9 @@ "dev": true }, "node_modules/@types/scheduler": { - "version": "0.16.8", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", - "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-YIoDCTH3Af6XM5VuwGG/QL/CJqga1Zm3NkU3HZ4ZHK2fRMPYP1VczsTUqtsf43PH/iJNVlPHAo2oWX7BSdB2Hw==" }, "node_modules/@types/semver": { "version": "7.3.5", @@ -9550,14 +10894,14 @@ } }, "node_modules/@types/serve-static": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz", - "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==", + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dev": true, "dependencies": { "@types/http-errors": "*", - "@types/mime": "*", - "@types/node": "*" + "@types/node": "*", + "@types/send": "*" } }, "node_modules/@types/sockjs": { @@ -9627,9 +10971,9 @@ } }, "node_modules/@types/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-Hm/T0kV3ywpJyMGNbsItdivRhYNCQQf1IIsYsXnoVPES4t+FMLyDe0/K+Ea7ahWtMtSNb22ZdY7MIyoD9rqARg==", + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.5.tgz", + "integrity": "sha512-TU+fZFBTBcXj/GpDpDaBmgWk/gn96kMZ+uocaFUlV2f8a6WdMzzI44QBCmGcCiYR0Y6ZlNRiyUyKKt5nl/lbzQ==", "dev": true, "dependencies": { "source-map": "^0.6.1" @@ -9979,9 +11323,9 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -10066,9 +11410,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -10110,9 +11454,9 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/@types/semver": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", - "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==", + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", "dev": true }, "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { @@ -10219,9 +11563,9 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -10368,72 +11712,59 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@vue/compiler-core": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.8.tgz", - "integrity": "sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.23.tgz", + "integrity": "sha512-HAFmuVEwNqNdmk+w4VCQ2pkLk1Vw4XYiiyxEp3z/xvl14aLTUBw2OfVH3vBcx+FtGsynQLkkhK410Nah1N2yyQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.8", + "@babel/parser": "^7.24.1", + "@vue/shared": "3.4.23", + "entities": "^4.5.0", "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz", - "integrity": "sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.23.tgz", + "integrity": "sha512-t0b9WSTnCRrzsBGrDd1LNR5HGzYTr7LX3z6nNBG+KGvZLqrT0mY6NsMzOqlVMBKKXKVuusbbB5aOOFgTY+senw==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8" + "@vue/compiler-core": "3.4.23", + "@vue/shared": "3.4.23" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz", - "integrity": "sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.23.tgz", + "integrity": "sha512-fSDTKTfzaRX1kNAUiaj8JB4AokikzStWgHooMhaxyjZerw624L+IAP/fvI4ZwMpwIh8f08PVzEnu4rg8/Npssw==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/compiler-dom": "3.3.8", - "@vue/compiler-ssr": "3.3.8", - "@vue/reactivity-transform": "3.3.8", - "@vue/shared": "3.3.8", + "@babel/parser": "^7.24.1", + "@vue/compiler-core": "3.4.23", + "@vue/compiler-dom": "3.4.23", + "@vue/compiler-ssr": "3.4.23", + "@vue/shared": "3.4.23", "estree-walker": "^2.0.2", - "magic-string": "^0.30.5", - "postcss": "^8.4.31", - "source-map-js": "^1.0.2" + "magic-string": "^0.30.8", + "postcss": "^8.4.38", + "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz", - "integrity": "sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.23.tgz", + "integrity": "sha512-hb6Uj2cYs+tfqz71Wj6h3E5t6OKvb4MVcM2Nl5i/z1nv1gjEhw+zYaNOV+Xwn+SSN/VZM0DgANw5TuJfxfezPg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.8", - "@vue/shared": "3.3.8" - } - }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz", - "integrity": "sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5" + "@vue/compiler-dom": "3.4.23", + "@vue/shared": "3.4.23" } }, "node_modules/@vue/shared": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.8.tgz", - "integrity": "sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==", + "version": "3.4.23", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.23.tgz", + "integrity": "sha512-wBQ0gvf+SMwsCQOyusNw/GoXPV47WGd1xB5A1Pgzy0sQ3Bi5r5xm3n+92y3gCnB3MWqnRDdvfkRGxhKtbBRNgg==", "dev": true }, "node_modules/@webassemblyjs/ast": { @@ -10712,6 +12043,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz", "integrity": "sha512-I+Wi+qiE2kUXyrRhNsWv6XsjUTBJjSoVSctKNBfLG5zG/Xe7Rjbxf13+vqYHNTwHaFU+FtSlVxOCTiMEVtPv0A==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", "dev": true }, "node_modules/accepts": { @@ -10728,14 +12060,14 @@ } }, "node_modules/ace-builds": { - "version": "1.31.2", - "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.31.2.tgz", - "integrity": "sha512-IeZI9ytPA6mB+goPxPkUPW4vXBoLuaBl5czu2tjtKrMi7mdRgyIUA/8e5JlrI1mqKoMeWHoUujzMTWkyutTdBw==" + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.33.0.tgz", + "integrity": "sha512-PDvytkZNvAfuh+PaP5Oy3l3sBGd7xMk4NsB+4w/w1e3gjBqEOGeJwcX+wF/SB6mLtT3VfJLrhDNPT3eaCjtR3w==" }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -10813,15 +12145,15 @@ } }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", "dev": true, "dependencies": { - "debug": "4" + "debug": "^4.3.4" }, "engines": { - "node": ">= 6.0.0" + "node": ">= 14" } }, "node_modules/aggregate-error": { @@ -10960,18 +12292,6 @@ "node": ">=0.10.0" } }, - "node_modules/ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha512-JoAxEa1DfP9m2xfB/y2r/aKcwXNlltr4+0QSBC4TrLfcxyvepX2Pv0t/xpgGV5bGsDzCYV8SzjWgyCW0T9yYbA==", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, "node_modules/ansi-html-community": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", @@ -11121,13 +12441,16 @@ } }, "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -11167,15 +12490,16 @@ "dev": true }, "node_modules/array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", "is-string": "^1.0.7" }, "engines": { @@ -11318,17 +12642,18 @@ } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", "is-shared-array-buffer": "^1.0.2" }, "engines": { @@ -11363,15 +12688,14 @@ } }, "node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "dev": true, "dependencies": { "bn.js": "^4.0.0", "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" + "minimalistic-assert": "^1.0.0" } }, "node_modules/asn1.js/node_modules/bn.js": { @@ -11544,6 +12868,12 @@ "url": "https://tidelift.com/funding/github/npm/autoprefixer" } }, + "node_modules/autoprefixer/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "node_modules/autoprefixer/node_modules/postcss": { "version": "7.0.39", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", @@ -11562,10 +12892,13 @@ } }, "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -11837,12 +13170,15 @@ } }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/bindings": { @@ -11980,23 +13316,15 @@ } }, "node_modules/bonjour-service": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz", - "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", "dev": true, "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", "fast-deep-equal": "^3.1.3", "multicast-dns": "^7.2.5" } }, - "node_modules/bonjour-service/node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, "node_modules/bonjour/node_modules/array-flatten": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", @@ -12196,37 +13524,24 @@ } }, "node_modules/browserify-sign": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.2.tgz", - "integrity": "sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz", + "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==", "dev": true, "dependencies": { "bn.js": "^5.2.1", "browserify-rsa": "^4.1.0", "create-hash": "^1.2.0", "create-hmac": "^1.1.7", - "elliptic": "^6.5.4", + "elliptic": "^6.5.5", + "hash-base": "~3.0", "inherits": "^2.0.4", - "parse-asn1": "^5.1.6", - "readable-stream": "^3.6.2", + "parse-asn1": "^5.1.7", + "readable-stream": "^2.3.8", "safe-buffer": "^5.2.1" }, "engines": { - "node": ">= 4" - } - }, - "node_modules/browserify-sign/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "node": ">= 0.12" } }, "node_modules/browserify-sign/node_modules/safe-buffer": { @@ -12259,9 +13574,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "funding": [ { @@ -12278,9 +13593,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, "bin": { @@ -12562,14 +13877,19 @@ } }, "node_modules/call-bind": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", - "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dev": true, "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.1", - "set-function-length": "^1.1.1" + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -12728,9 +14048,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001564", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz", - "integrity": "sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==", + "version": "1.0.30001610", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz", + "integrity": "sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA==", "dev": true, "funding": [ { @@ -12942,9 +14262,9 @@ } }, "node_modules/cli-spinners": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.1.tgz", - "integrity": "sha512-jHgecW0pxkonBJdrKsqxgRX9AcG+u/5k0Q7WPDfi8AogLAdwxEkyYYNWwZ5GvVFoFx2uiY1eNcSK00fh+1+FyQ==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", "dev": true, "engines": { "node": ">=6" @@ -13231,9 +14551,9 @@ "dev": true }, "node_modules/colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", "dev": true }, "node_modules/colors": { @@ -13646,9 +14966,9 @@ } }, "node_modules/copy-webpack-plugin/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -13687,9 +15007,9 @@ } }, "node_modules/core-js-pure": { - "version": "3.33.3", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.33.3.tgz", - "integrity": "sha512-taJ00IDOP+XYQEA2dAe4ESkmHt1fL8wzYDo3mRWQey8uO9UojlBFMneA65kMyxfYP7106c6LzWaq7/haDT6BCQ==", + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.37.0.tgz", + "integrity": "sha512-d3BrpyFr5eD4KcbRvQ3FTUx/KWmaDesr7+a3+1+P46IUnNoEt+oiLijPINZMEon7w9oGkIINWxrBAU9DEciwFQ==", "dev": true, "hasInstallScript": true, "funding": { @@ -13849,6 +15169,12 @@ "webpack": "^4.0.0 || ^5.0.0" } }, + "node_modules/css-loader/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "node_modules/css-loader/node_modules/postcss": { "version": "7.0.39", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", @@ -14244,9 +15570,9 @@ } }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, "node_modules/cyclist": { "version": "1.0.2", @@ -14255,13 +15581,16 @@ "dev": true }, "node_modules/d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", + "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", "dev": true, "dependencies": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" + "es5-ext": "^0.10.64", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/dashdash": { @@ -14291,6 +15620,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", "dev": true }, "node_modules/data-urls/node_modules/whatwg-url": { @@ -14304,6 +15634,57 @@ "webidl-conversions": "^4.0.2" } }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/dateformat": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz", @@ -14713,17 +16094,20 @@ "dev": true }, "node_modules/define-data-property": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", - "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/define-lazy-prop": { @@ -14920,9 +16304,9 @@ } }, "node_modules/depcheck/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -14998,9 +16382,9 @@ } }, "node_modules/depcheck/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -15246,6 +16630,15 @@ "node": ">=6.0.0" } }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, "node_modules/dom-serializer": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", @@ -15260,6 +16653,15 @@ "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/dom7": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", @@ -15295,6 +16697,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "deprecated": "Use your platform's native DOMException instead", "dev": true, "dependencies": { "webidl-conversions": "^4.0.2" @@ -15440,15 +16843,15 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.591", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.591.tgz", - "integrity": "sha512-vLv/P7wwAPKQoY+CVMyyI6rsTp+A14KGtPXx92oz1FY41AAqa9l6Wkizcixg0LDuJgyeo8xgNN9+9hsnGp66UA==", + "version": "1.4.738", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.738.tgz", + "integrity": "sha512-lwKft2CLFztD+vEIpesrOtCrko/TFnEJlHFdRhazU7Y/jx5qc4cqsocfVrBg4So4gGe9lvxnbLIoev47WMpg+A==", "dev": true }, "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz", + "integrity": "sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==", "dev": true, "dependencies": { "bn.js": "^4.11.9", @@ -15547,6 +16950,7 @@ "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", "dev": true, + "peer": true, "dependencies": { "ansi-colors": "^4.1.1", "strip-ansi": "^6.0.1" @@ -15560,23 +16964,27 @@ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", "dev": true, + "peer": true, "engines": { "node": ">=6" } }, "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, + "engines": { + "node": ">=0.12" + }, "funding": { "url": "https://github.com/fb55/entities?sponsor=1" } }, "node_modules/envinfo": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.11.0.tgz", - "integrity": "sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg==", + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.12.0.tgz", + "integrity": "sha512-Iw9rQJBGpJRd3rwXm9ft/JiGoAZmLxxJZELYDQoPRZ4USVhkKtIcNBPw6U+/K2mBpaqM25JSV6Yl4Az9vO2wJg==", "dev": true, "bin": { "envinfo": "dist/cli.js" @@ -15625,50 +17033,57 @@ } }, "node_modules/es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", "globalthis": "^1.0.3", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", + "is-shared-array-buffer": "^1.0.3", "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", + "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", "object-inspect": "^1.13.1", "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" + "which-typed-array": "^1.1.15" }, "engines": { "node": ">= 0.4" @@ -15677,23 +17092,56 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-module-lexer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", - "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz", + "integrity": "sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==", "dev": true, "optional": true, "peer": true }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -15726,14 +17174,15 @@ } }, "node_modules/es5-ext": { - "version": "0.10.62", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", - "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "version": "0.10.64", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", + "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", "dev": true, "hasInstallScript": true, "dependencies": { "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.3", + "esniff": "^2.0.1", "next-tick": "^1.1.0" }, "engines": { @@ -15757,13 +17206,16 @@ "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" }, "node_modules/es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", + "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", "dev": true, "dependencies": { - "d": "^1.0.1", - "ext": "^1.1.2" + "d": "^1.0.2", + "ext": "^1.7.0" + }, + "engines": { + "node": ">=0.12" } }, "node_modules/es6-templates": { @@ -15789,9 +17241,9 @@ } }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true, "engines": { "node": ">=6" @@ -16239,9 +17691,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -16254,9 +17706,9 @@ } }, "node_modules/eslint/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -16292,6 +17744,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/esniff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", + "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", + "dev": true, + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/espree": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", @@ -16379,6 +17846,16 @@ "node": ">= 0.6" } }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", @@ -16576,12 +18053,6 @@ "type": "^2.7.2" } }, - "node_modules/ext/node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", - "dev": true - }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -16753,9 +18224,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -16795,6 +18266,7 @@ "version": "3.5.2", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "deprecated": "This module is no longer supported.", "dev": true }, "node_modules/figures": { @@ -17201,9 +18673,9 @@ } }, "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, "node_modules/flush-write-stream": { @@ -17217,9 +18689,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", - "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true, "funding": [ { @@ -17684,16 +19156,20 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", - "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, "dependencies": { + "es-errors": "^1.3.0", "function-bind": "^1.1.2", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", "hasown": "^2.0.0" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -17735,13 +19211,14 @@ } }, "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -19005,21 +20482,21 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", - "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.2" + "es-define-property": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "dev": true, "engines": { "node": ">= 0.4" @@ -19041,12 +20518,12 @@ } }, "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -19128,53 +20605,18 @@ } }, "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", "dev": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" }, "engines": { "node": ">=4" } }, - "node_modules/hash-base/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/hash-base/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", @@ -19186,9 +20628,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { "function-bind": "^1.1.2" }, @@ -19368,9 +20810,9 @@ } }, "node_modules/html-entities": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz", - "integrity": "sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", "dev": true, "funding": [ { @@ -19477,17 +20919,16 @@ } }, "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/http-proxy-middleware": { @@ -19552,6 +20993,18 @@ "node": ">= 6" } }, + "node_modules/https-proxy-agent/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, "node_modules/human-signals": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", @@ -19603,6 +21056,12 @@ "node": ">= 6" } }, + "node_modules/icss-utils/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "node_modules/icss-utils/node_modules/postcss": { "version": "7.0.39", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", @@ -19671,9 +21130,9 @@ "dev": true }, "node_modules/immutable": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", - "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", "dev": true }, "node_modules/import-fresh": { @@ -19977,12 +21436,12 @@ } }, "node_modules/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.2", + "es-errors": "^1.3.0", "hasown": "^2.0.0", "side-channel": "^1.0.4" }, @@ -20009,9 +21468,9 @@ } }, "node_modules/ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz", + "integrity": "sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==", "dev": true }, "node_modules/ip-regex": { @@ -20083,14 +21542,16 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -20195,6 +21656,21 @@ "node": ">= 0.4" } }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dev": true, + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-date-object": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", @@ -20342,9 +21818,9 @@ } }, "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "dev": true, "engines": { "node": ">= 0.4" @@ -20478,12 +21954,15 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -20544,12 +22023,12 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dev": true, "dependencies": { - "which-typed-array": "^1.1.11" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -20673,9 +22152,9 @@ } }, "node_modules/isomorphic-fetch/node_modules/whatwg-fetch": { - "version": "3.6.19", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.19.tgz", - "integrity": "sha512-d67JP4dHSbm2TrpFj8AbO8DnL1JXL5J9u0Kq2xW6d0TFDbCA3Muhdt8orXC22utleTVj7Prqt82baN6RBvnEgw==" + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", + "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==" }, "node_modules/isstream": { "version": "0.1.2", @@ -20758,9 +22237,9 @@ } }, "node_modules/istanbul-lib-report/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -20793,9 +22272,9 @@ } }, "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -20975,6 +22454,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", "dev": true }, "node_modules/jest-config/node_modules/acorn": { @@ -21223,6 +22703,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", "dev": true }, "node_modules/jest-environment-jsdom/node_modules/acorn": { @@ -22019,9 +23500,9 @@ "dev": true }, "node_modules/json-stable-stringify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.1.0.tgz", - "integrity": "sha512-zfA+5SuwYN2VWqN1/5HZaDzQKLJHaBVMZIIM+wuYjdptkaQsqzDdqjqf+lZZJUuJq1aanHiY8LhH8LmH+qBYJA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.1.1.tgz", + "integrity": "sha512-SU/971Kt5qVQfJpyDveVhQ/vya+5hvrjClFOcr8c0Fq5aODJjMwutrOfCU+eCnVD5gpx1Q3fEqkyom77zH1iIg==", "dev": true, "dependencies": { "call-bind": "^1.0.5", @@ -22142,9 +23623,9 @@ } }, "node_modules/jsonwebtoken/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -22231,6 +23712,11 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/keyborg": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/keyborg/-/keyborg-2.5.0.tgz", + "integrity": "sha512-nb4Ji1suqWqj6VXb61Jrs4ab/UWgtGph4wDch2NIZDfLBUObmLcZE0aiDjZY49ghtu03fvwxDNvS9ZB0XMz6/g==" + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -22797,9 +24283,9 @@ } }, "node_modules/loglevel": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", - "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.9.1.tgz", + "integrity": "sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg==", "dev": true, "engines": { "node": ">= 0.6.0" @@ -22854,9 +24340,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", - "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", + "version": "0.30.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.9.tgz", + "integrity": "sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -23847,9 +25333,9 @@ } }, "node_modules/nan": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.18.0.tgz", - "integrity": "sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==", + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.19.0.tgz", + "integrity": "sha512-nO1xXxfh/RWNxfd/XPfbIfFk5vgLsAxUR9y5O0cHMJu/AW9U95JLXqthYHjEp+8gQ5p96K9jUp8nbVOxCdRbtw==", "dev": true, "optional": true }, @@ -24171,9 +25657,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "node_modules/normalize-package-data": { @@ -24386,9 +25872,9 @@ } }, "node_modules/npm-check/node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -24632,13 +26118,13 @@ } }, "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -24669,13 +26155,13 @@ } }, "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, @@ -24702,28 +26188,29 @@ } }, "node_modules/object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", + "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" } }, "node_modules/object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -24733,13 +26220,17 @@ } }, "node_modules/object.hasown": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", - "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz", + "integrity": "sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==", "dev": true, "dependencies": { - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -24784,14 +26275,14 @@ } }, "node_modules/object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -25264,18 +26755,42 @@ } }, "node_modules/parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz", + "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==", "dev": true, "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "asn1.js": "^4.10.1", + "browserify-aes": "^1.2.0", + "evp_bytestokey": "^1.0.3", + "hash-base": "~3.0", + "pbkdf2": "^3.1.2", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" } }, + "node_modules/parse-asn1/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", @@ -25465,9 +26980,9 @@ "dev": true }, "node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", "dev": true }, "node_modules/picomatch": { @@ -25681,10 +27196,19 @@ "node": ">=0.10.0" } }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, "funding": [ { @@ -25701,9 +27225,9 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" @@ -26015,9 +27539,9 @@ } }, "node_modules/postcss-modules-local-by-default": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz", - "integrity": "sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", "dev": true, "dependencies": { "icss-utils": "^5.0.0", @@ -26085,6 +27609,12 @@ "postcss": "^8.1.0" } }, + "node_modules/postcss-modules/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, "node_modules/postcss-modules/node_modules/postcss": { "version": "7.0.39", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", @@ -26296,9 +27826,9 @@ } }, "node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -26345,16 +27875,10 @@ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", "dev": true }, - "node_modules/postcss/node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, "node_modules/preferred-pm": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.2.tgz", - "integrity": "sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.3.tgz", + "integrity": "sha512-MkXsENfftWSRpzCzImcp4FRsCc3y1opwB73CfCNWyzMqArju2CrlMHlqB7VexKiPEOjGMbttv1r9fSCn5S610w==", "dev": true, "dependencies": { "find-up": "^5.0.0", @@ -26848,6 +28372,21 @@ "typescript": "^4" } }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, "node_modules/read": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", @@ -27270,10 +28809,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", - "peer": true + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/regex-not": { "version": "1.0.2", @@ -27326,14 +28864,15 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -27885,6 +29424,14 @@ "node": "6.* || >= 7.*" } }, + "node_modules/rtl-css-js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.16.1.tgz", + "integrity": "sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==", + "dependencies": { + "@babel/runtime": "^7.1.2" + } + }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -27945,13 +29492,13 @@ "dev": true }, "node_modules/safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -27984,15 +29531,18 @@ } }, "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", "is-regex": "^1.1.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -28722,29 +30272,32 @@ "dev": true }, "node_modules/set-function-length": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", - "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dev": true, "dependencies": { - "define-data-property": "^1.1.1", - "get-intrinsic": "^1.2.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" } }, "node_modules/set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, "dependencies": { - "define-data-property": "^1.0.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -28866,14 +30419,18 @@ "dev": true }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -29268,9 +30825,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -29304,6 +30861,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", "dev": true }, "node_modules/source-map-loader/node_modules/ajv": { @@ -29432,9 +30990,9 @@ } }, "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "dev": true }, "node_modules/spdx-expression-parse": { @@ -29448,9 +31006,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", - "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", "dev": true }, "node_modules/spdy": { @@ -29504,22 +31062,25 @@ "dev": true }, "node_modules/spfx-fast-serve-helpers": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/spfx-fast-serve-helpers/-/spfx-fast-serve-helpers-1.17.6.tgz", - "integrity": "sha512-aXbFTlKkZYdgs3rghd04W+nLoYN5BB2L8qKevAeuT+jg//KTqiS5OYQOwU+jxtLsm9XVZDjh6keNAS8gUXSEDw==", + "version": "1.18.11", + "resolved": "https://registry.npmjs.org/spfx-fast-serve-helpers/-/spfx-fast-serve-helpers-1.18.11.tgz", + "integrity": "sha512-hSsvuPYIlHf7r7IvEPYCzHFChlVxXMxGm3sCungQy52BzFhbD8YASSKx36mlhQb/qiwHbB1IYfoHdtDMwvppog==", "dev": true, "dependencies": { - "@microsoft/loader-load-themed-styles": "2.0.27", - "@microsoft/spfx-heft-plugins": "1.17.4", + "@microsoft/loader-load-themed-styles": "2.1.7", + "@microsoft/spfx-heft-plugins": "1.18.2", "@pmmmwh/react-refresh-webpack-plugin": "0.5.7", "@types/copy-webpack-plugin": "6.4.3", + "@types/cross-spawn": "6.0.3", "@types/loader-utils": "2.0.2", "@types/webpack-dev-server": "3.11.4", "@types/yargs": "6.6.0", "autoprefixer": "9.8.8", "clean-css-loader": "3.0.0", "colors": "1.4.0", + "commander": "11.1.0", "copy-webpack-plugin": "6.4.0", + "cross-spawn": "7.0.3", "css-loader": "5.2.4", "del": "6.0.0", "eslint-webpack-plugin": "2.5.4", @@ -29530,8 +31091,8 @@ "kill-port": "1.6.1", "loader-utils": "2.0.0", "node-fetch": "2.6.1", - "postcss": "7.0.38", - "postcss-loader": "4.2.0", + "postcss": "8.4.33", + "postcss-loader": "4.3.0", "react-refresh": "0.14.0", "react-refresh-typescript": "2.0.6", "sass": "1.44.0", @@ -29541,9 +31102,9 @@ "ts-loader": "8.1.0", "tsconfig": "7.0.0", "tsconfig-paths-webpack-plugin": "3.5.2", - "webpack": "4.44.2", - "webpack-cli": "4.6.0", - "webpack-dev-server": "3.11.2", + "webpack": "4.47.0", + "webpack-cli": "4.10.0", + "webpack-dev-server": "3.11.3", "webpack-merge": "5.7.3", "yargs": "4.6.0" }, @@ -29607,1677 +31168,315 @@ "node": ">=10.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/loader-load-themed-styles": { - "version": "2.0.27", - "resolved": "https://registry.npmjs.org/@microsoft/loader-load-themed-styles/-/loader-load-themed-styles-2.0.27.tgz", - "integrity": "sha512-TVr737vb95u/d6F3D0k1IAh5VNkBY9VFfYsrV3zIH1HRYrD/D8CpEF9kV6yk5jwg6LgS2JrxhJtBKlIiTvA9Yg==", + "node_modules/spfx-fast-serve-helpers/node_modules/@types/eslint": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==", "dev": true, "dependencies": { - "loader-utils": "1.4.2" - }, - "peerDependencies": { - "@microsoft/load-themed-styles": "^2.0.29", - "@types/webpack": "^4" - }, - "peerDependenciesMeta": { - "@types/webpack": { - "optional": true - } + "@types/estree": "*", + "@types/json-schema": "*" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/loader-load-themed-styles/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "node_modules/spfx-fast-serve-helpers/node_modules/@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", "dev": true, "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" + "@types/minimatch": "*", + "@types/node": "*" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/loader-load-themed-styles/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "node_modules/spfx-fast-serve-helpers/node_modules/@types/yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha512-021+XKlD4/hDZkkdgGhgtDGKlcTIXrII1lrCLp/ZNPoU0AHN9HmTNe+i1eKRxcZisFObX3ItTncemegEACgnsw==", + "dev": true + }, + "node_modules/spfx-fast-serve-helpers/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "peer": true, + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">=4.0.0" + "node": ">=0.4.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/rush-lib": { - "version": "5.93.1", - "resolved": "https://registry.npmjs.org/@microsoft/rush-lib/-/rush-lib-5.93.1.tgz", - "integrity": "sha512-8ZCSW4He9VPAAsF2T/OxVaTN06wLbzeEveOvEuwNJ5h6AQYPTtlH0yv8cDDuZqSEVgOv/gK4D+kAExOszYm06A==", + "node_modules/spfx-fast-serve-helpers/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "dependencies": { - "@pnpm/link-bins": "~5.3.7", - "@rushstack/heft-config-file": "0.11.9", - "@rushstack/node-core-library": "3.55.2", - "@rushstack/package-deps-hash": "4.0.8", - "@rushstack/rig-package": "0.3.18", - "@rushstack/rush-amazon-s3-build-cache-plugin": "5.93.1", - "@rushstack/rush-azure-storage-build-cache-plugin": "5.93.1", - "@rushstack/stream-collator": "4.0.227", - "@rushstack/terminal": "0.5.2", - "@rushstack/ts-command-line": "4.13.2", - "@types/node-fetch": "2.6.2", - "@yarnpkg/lockfile": "~1.0.2", - "builtin-modules": "~3.1.0", - "cli-table": "~0.3.1", - "colors": "~1.2.1", - "dependency-path": "~9.2.8", - "figures": "3.0.0", - "git-repo-info": "~2.1.0", - "glob": "~7.0.5", - "glob-escape": "~0.0.2", - "https-proxy-agent": "~5.0.0", - "ignore": "~5.1.6", - "inquirer": "~7.3.3", - "js-yaml": "~3.13.1", - "jszip": "~3.8.0", - "lodash": "~4.17.15", - "node-fetch": "2.6.7", - "npm-check": "~6.0.1", - "npm-package-arg": "~6.1.0", - "npm-packlist": "~2.1.2", - "read-package-tree": "~5.1.5", - "resolve": "~1.22.1", - "rxjs": "~6.6.7", - "semver": "~7.3.0", - "ssri": "~8.0.0", - "strict-uri-encode": "~2.0.0", - "tapable": "2.2.1", - "tar": "~6.1.11", - "true-case-path": "~2.2.1" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "engines": { - "node": ">=5.6.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/rush-lib/node_modules/colors": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz", - "integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==", - "dev": true, - "engines": { - "node": ">=0.1.90" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/rush-lib/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "ajv": "^6.9.1" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/rush-lib/node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "node_modules/spfx-fast-serve-helpers/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/@microsoft/sp-css-loader/-/sp-css-loader-1.17.4.tgz", - "integrity": "sha512-HBzv+/cu1Mxc5j0LA04EhoXndaNhCGk4Xhqy1KZioNSZgz5DbrsEWtNklexy0wXoJP+dbro+mtZYb/B07EvV6Q==", + "node_modules/spfx-fast-serve-helpers/node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, "dependencies": { - "@microsoft/load-themed-styles": "1.10.292", - "@rushstack/node-core-library": "3.55.2", - "autoprefixer": "9.7.1", - "css-loader": "3.4.2", - "cssnano": "~5.1.14", - "loader-utils": "^1.4.2", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "~3.0.0", - "postcss-modules-local-by-default": "~4.0.0", - "postcss-modules-scope": "~3.0.0", - "postcss-modules-values": "~4.0.0", - "webpack": "~4.44.2" + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/@microsoft/load-themed-styles": { - "version": "1.10.292", - "resolved": "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.292.tgz", - "integrity": "sha512-LQWGImtpv2zHKIPySLalR1aFXumXfOq8UuJvR15mIZRKXIoM+KuN9wZq+ved2FyeuePjQSJGOxYynxtCLLwDBA==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/spfx-fast-serve-helpers/node_modules/anymatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/autoprefixer": { - "version": "9.7.1", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.1.tgz", - "integrity": "sha512-w3b5y1PXWlhYulevrTJ0lizkQ5CyqfeU6BIRDbuhsMupstHQOeb1Ur80tcB1zxSu7AwyY/qCQ7Vvqklh31ZBFw==", + "node_modules/spfx-fast-serve-helpers/node_modules/anymatch/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, - "dependencies": { - "browserslist": "^4.7.2", - "caniuse-lite": "^1.0.30001006", - "chalk": "^2.4.2", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.21", - "postcss-value-parser": "^4.0.2" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, "engines": { - "node": ">=6.0.0" + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/autoprefixer/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "node_modules/spfx-fast-serve-helpers/node_modules/anymatch/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" }, "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/anymatch/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "remove-trailing-separator": "^1.0.1" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/css-loader": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.4.2.tgz", - "integrity": "sha512-jYq4zdZT0oS0Iykt+fqnzVLRIeiPWhka+7BqPn+oSIpWJAHak5tmB/WZrJ2a21JhCeFyNnnlroSl8c+MtVndzA==", + "node_modules/spfx-fast-serve-helpers/node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.23", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.1.1", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.0.2", - "schema-utils": "^2.6.0" - }, "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "node": ">=8" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/css-loader/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "node_modules/spfx-fast-serve-helpers/node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": ">=8" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/css-loader/node_modules/postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true, - "dependencies": { - "postcss": "^7.0.5" - }, "engines": { - "node": ">= 6" + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/css-loader/node_modules/postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "node_modules/spfx-fast-serve-helpers/node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", "dev": true, "dependencies": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 6" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/css-loader/node_modules/postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "engines": { - "node": ">= 6" + "ms": "2.0.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/css-loader/node_modules/postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "node_modules/spfx-fast-serve-helpers/node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/spfx-fast-serve-helpers/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "dependencies": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/spfx-fast-serve-helpers/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">= 0.8" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "node_modules/spfx-fast-serve-helpers/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, - "dependencies": { - "minimist": "^1.2.0" + "engines": { + "node": ">=10" }, - "bin": { - "json5": "lib/cli.js" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "node_modules/spfx-fast-serve-helpers/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, + "peer": true, "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" }, - "engines": { - "node": "^10 || ^12 || >=14" + "optionalDependencies": { + "fsevents": "^1.2.7" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/postcss/node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-css-loader/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/spfx-fast-serve-helpers/node_modules/chokidar/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/sp-module-interfaces": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/@microsoft/sp-module-interfaces/-/sp-module-interfaces-1.17.4.tgz", - "integrity": "sha512-+tVV2O9B5i2RXdziEvg9FnKTBc2FgFn1XxbCfpmUj+F/Gh3PMtG0XyquBFY12jjxObEIv78J0A0fK2x0shZMLw==", + "node_modules/spfx-fast-serve-helpers/node_modules/chokidar/node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", "dev": true, "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "z-schema": "4.2.4" + "is-extglob": "^2.1.0" }, "engines": { - "node": ">=12.13.0 <13.0.0 || >=14.15.0 <15.0.0 || >=16.13.0 <17.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/@microsoft/spfx-heft-plugins/-/spfx-heft-plugins-1.17.4.tgz", - "integrity": "sha512-BOTYm5H1coXpgp529PbI1XtrNGSI42c2EwxuR48ZThM20N8OagQeto5wpQh4z2wqdUhDpFVLu5gFqAEmG5v1Bg==", - "dev": true, - "dependencies": { - "@azure/storage-blob": "~12.11.0", - "@microsoft/load-themed-styles": "1.10.292", - "@microsoft/loader-load-themed-styles": "2.0.27", - "@microsoft/rush-lib": "5.93.1", - "@microsoft/sp-css-loader": "1.17.4", - "@microsoft/sp-module-interfaces": "1.17.4", - "@rushstack/heft-config-file": "0.11.9", - "@rushstack/localization-utilities": "0.8.46", - "@rushstack/node-core-library": "3.55.2", - "@rushstack/rig-package": "0.3.18", - "@rushstack/set-webpack-public-path-plugin": "3.3.91", - "@rushstack/terminal": "0.5.2", - "@rushstack/webpack4-localization-plugin": "0.17.2", - "@rushstack/webpack4-module-minifier-plugin": "0.9.40", - "@types/tapable": "1.0.6", - "autoprefixer": "9.7.1", - "colors": "~1.2.1", - "copy-webpack-plugin": "~6.0.3", - "css-loader": "3.4.2", - "cssnano": "~5.1.14", - "express": "4.18.1", - "file-loader": "6.1.0", - "git-repo-info": "~2.1.1", - "glob": "~7.0.5", - "html-loader": "~0.5.1", - "jszip": "3.5.0", - "lodash": "4.17.21", - "mime": "2.5.2", - "postcss": "^8.4.19", - "postcss-loader": "^4.2.0", - "resolve": "~1.17.0", - "sass": "1.49.11", - "source-map": "0.6.1", - "source-map-loader": "1.1.3", - "tapable": "1.1.3", - "true-case-path": "~2.2.1", - "uuid": "~3.1.0", - "webpack": "~4.44.2", - "webpack-dev-server": "~4.9.3", - "webpack-sources": "1.4.3", - "xml": "~1.0.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/@microsoft/load-themed-styles": { - "version": "1.10.292", - "resolved": "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.292.tgz", - "integrity": "sha512-LQWGImtpv2zHKIPySLalR1aFXumXfOq8UuJvR15mIZRKXIoM+KuN9wZq+ved2FyeuePjQSJGOxYynxtCLLwDBA==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/@rushstack/webpack4-module-minifier-plugin": { - "version": "0.9.40", - "resolved": "https://registry.npmjs.org/@rushstack/webpack4-module-minifier-plugin/-/webpack4-module-minifier-plugin-0.9.40.tgz", - "integrity": "sha512-QOoeFPTPlKaIkMBTB/zqYZGbvVYAc07/xRQlGTSEwDY07IbIXy/HEq8vvMXAXGtofqBVP8s8wZtfR6z0kAt9Xw==", - "dev": true, - "dependencies": { - "@rushstack/module-minifier": "0.1.41", - "@rushstack/worker-pool": "0.1.41", - "@types/node": "12.20.24", - "@types/tapable": "1.0.6", - "tapable": "1.1.3" - }, - "engines": { - "node": ">=10.17.1" - }, - "peerDependencies": { - "@types/webpack": "*", - "@types/webpack-sources": "*", - "webpack": "^4.31.0", - "webpack-sources": "~1.4.3" - }, - "peerDependenciesMeta": { - "@types/webpack": { - "optional": true - }, - "@types/webpack-sources": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/autoprefixer": { - "version": "9.7.1", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.1.tgz", - "integrity": "sha512-w3b5y1PXWlhYulevrTJ0lizkQ5CyqfeU6BIRDbuhsMupstHQOeb1Ur80tcB1zxSu7AwyY/qCQ7Vvqklh31ZBFw==", - "dev": true, - "dependencies": { - "browserslist": "^4.7.2", - "caniuse-lite": "^1.0.30001006", - "chalk": "^2.4.2", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.21", - "postcss-value-parser": "^4.0.2" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/autoprefixer/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/colors": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz", - "integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/copy-webpack-plugin": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.0.4.tgz", - "integrity": "sha512-zCazfdYAh3q/O4VzZFiadWGpDA2zTs6FC6D7YTHD6H1J40pzo0H4z22h1NYMCl4ArQP4CK8y/KWqPrJ4rVkZ5A==", - "dev": true, - "dependencies": { - "cacache": "^15.0.5", - "fast-glob": "^3.2.4", - "find-cache-dir": "^3.3.1", - "glob-parent": "^5.1.1", - "globby": "^11.0.1", - "loader-utils": "^2.0.0", - "normalize-path": "^3.0.0", - "p-limit": "^3.0.2", - "schema-utils": "^2.7.0", - "serialize-javascript": "^4.0.0", - "webpack-sources": "^1.4.3" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/css-loader": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.4.2.tgz", - "integrity": "sha512-jYq4zdZT0oS0Iykt+fqnzVLRIeiPWhka+7BqPn+oSIpWJAHak5tmB/WZrJ2a21JhCeFyNnnlroSl8c+MtVndzA==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.23", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.1.1", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.0.2", - "schema-utils": "^2.6.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/css-loader/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/css-loader/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/file-loader": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.1.0.tgz", - "integrity": "sha512-26qPdHyTsArQ6gU4P1HJbAbnFTyT2r0pG7czh1GFAd9TZbj0n94wWbupgixZH/ET/meqi2/5+F7DhW4OAXD+Lg==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/jszip": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.5.0.tgz", - "integrity": "sha512-WRtu7TPCmYePR1nazfrtuF216cIVon/3GWOvHS9QR5bIwSbnxtdpma6un3jyGGNhHsKCSzn5Ypk+EkDRvTGiFA==", - "dev": true, - "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-extract-imports/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "dependencies": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-local-by-default/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-scope/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "dependencies": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss-modules-values/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/postcss/node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/sass": { - "version": "1.49.11", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.11.tgz", - "integrity": "sha512-wvS/geXgHUGs6A/4ud5BFIWKO1nKd7wYIGimDk4q4GFkJicILActpv9ueMT4eRGSsp1BdKHuw1WwAHXbhsJELQ==", - "dev": true, - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@microsoft/spfx-heft-plugins/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/heft-config-file": { - "version": "0.11.9", - "resolved": "https://registry.npmjs.org/@rushstack/heft-config-file/-/heft-config-file-0.11.9.tgz", - "integrity": "sha512-01JFmD+G44v5btO0fVIbVBJCfGWLTN2l4Y/+IVU8D9eR14+wYJjV5CO25uxydDynMr334URFcITuzG21L9L0GA==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "@rushstack/rig-package": "0.3.18", - "jsonpath-plus": "~4.0.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/localization-utilities": { - "version": "0.8.46", - "resolved": "https://registry.npmjs.org/@rushstack/localization-utilities/-/localization-utilities-0.8.46.tgz", - "integrity": "sha512-CjSQ+gYSefFLOpulTeoeYfSTqZh84KiCQxcb5BeefChAdhcHpYMVxmLsWQrA0WX2Al1Tw/NZ/QahYytl4E6kXw==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "@rushstack/typings-generator": "0.10.2", - "pseudolocale": "~1.1.0", - "xmldoc": "~1.1.2" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/module-minifier": { - "version": "0.1.41", - "resolved": "https://registry.npmjs.org/@rushstack/module-minifier/-/module-minifier-0.1.41.tgz", - "integrity": "sha512-dvj/QSknUY+Q54Vv398BbX/CynobE2h8V4F/mnWi3nXX848NFOcgGHSe8UhH1cMdsz7EGrBcUG4kJctMvsXJ3A==", - "dev": true, - "dependencies": { - "@rushstack/worker-pool": "0.1.41", - "@types/node": "12.20.24", - "serialize-javascript": "6.0.0", - "source-map": "~0.7.3", - "terser": "5.9.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/module-minifier/node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/module-minifier/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/node-core-library": { - "version": "3.55.2", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.55.2.tgz", - "integrity": "sha512-SaLe/x/Q/uBVdNFK5V1xXvsVps0y7h1sN7aSJllQyFbugyOaxhNRF25bwEDnicARNEjJw0pk0lYnJQ9Kr6ev0A==", - "dev": true, - "dependencies": { - "colors": "~1.2.1", - "fs-extra": "~7.0.1", - "import-lazy": "~4.0.0", - "jju": "~1.4.0", - "resolve": "~1.22.1", - "semver": "~7.3.0", - "z-schema": "~5.0.2" - }, - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/node-core-library/node_modules/colors": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz", - "integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/node-core-library/node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true, - "optional": true, - "engines": { - "node": "^12.20.0 || >=14" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/node-core-library/node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/node-core-library/node_modules/z-schema": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.5.tgz", - "integrity": "sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==", - "dev": true, - "dependencies": { - "lodash.get": "^4.4.2", - "lodash.isequal": "^4.5.0", - "validator": "^13.7.0" - }, - "bin": { - "z-schema": "bin/z-schema" - }, - "engines": { - "node": ">=8.0.0" - }, - "optionalDependencies": { - "commander": "^9.4.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/package-deps-hash": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@rushstack/package-deps-hash/-/package-deps-hash-4.0.8.tgz", - "integrity": "sha512-ad2ZnGWLlcga4GVRVo3mibkTrrnDs8xvABTr79z7zwA43htaVbddwFs3Y+tyqaPo8s92Tqh47jzrGDJTqm6Vyg==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/rig-package": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.3.18.tgz", - "integrity": "sha512-SGEwNTwNq9bI3pkdd01yCaH+gAsHqs0uxfGvtw9b0LJXH52qooWXnrFTRRLG1aL9pf+M2CARdrA9HLHJys3jiQ==", - "dev": true, - "dependencies": { - "resolve": "~1.22.1", - "strip-json-comments": "~3.1.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/rig-package/node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/rush-amazon-s3-build-cache-plugin": { - "version": "5.93.1", - "resolved": "https://registry.npmjs.org/@rushstack/rush-amazon-s3-build-cache-plugin/-/rush-amazon-s3-build-cache-plugin-5.93.1.tgz", - "integrity": "sha512-urEQ+u7oSdfQnbuuVURbTE3RaJVh7rOSyB8RN2xAYh88HveYMeduq3EU5/0afHKnRs/UJG/iwt6EqCbXRR0J+w==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "@rushstack/rush-sdk": "5.93.1", - "https-proxy-agent": "~5.0.0", - "node-fetch": "2.6.7" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/rush-amazon-s3-build-cache-plugin/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/rush-azure-storage-build-cache-plugin": { - "version": "5.93.1", - "resolved": "https://registry.npmjs.org/@rushstack/rush-azure-storage-build-cache-plugin/-/rush-azure-storage-build-cache-plugin-5.93.1.tgz", - "integrity": "sha512-urbl28yUit+GJ4cgU9iAfWEhu6bP0/kdBaQEsOTYoLYRGnF0uBJ6O+46aMOp4WsqxAk+K+xL6ixw1ZE1BTix6g==", - "dev": true, - "dependencies": { - "@azure/identity": "~2.1.0", - "@azure/storage-blob": "~12.11.0", - "@rushstack/node-core-library": "3.55.2", - "@rushstack/rush-sdk": "5.93.1", - "@rushstack/terminal": "0.5.2" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/rush-sdk": { - "version": "5.93.1", - "resolved": "https://registry.npmjs.org/@rushstack/rush-sdk/-/rush-sdk-5.93.1.tgz", - "integrity": "sha512-rHfGvxyiR6nO5nqruqz/0N3GpAIi4P565FYcadnHsK791ncoh60lBHvQU9b9oRdpZjl2dHjoAQrr+pgSgOY/vw==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "@types/node-fetch": "2.6.2", - "tapable": "2.2.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/set-webpack-public-path-plugin": { - "version": "3.3.91", - "resolved": "https://registry.npmjs.org/@rushstack/set-webpack-public-path-plugin/-/set-webpack-public-path-plugin-3.3.91.tgz", - "integrity": "sha512-2Bvac24WHZagQC+zLk+eksqxfeX2OhMH+eLPXEWvpuYceWYbqphckGLotj0WeAmSvjNTrTxxDfhTCHTWLIOAjw==", - "dev": true, - "dependencies": { - "@rushstack/webpack-plugin-utilities": "0.1.56" - }, - "peerDependencies": { - "@types/webpack": "^4.39.8", - "webpack": "^5.35.1" - }, - "peerDependenciesMeta": { - "@types/webpack": { - "optional": true - }, - "webpack": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/set-webpack-public-path-plugin/node_modules/@rushstack/webpack-plugin-utilities": { - "version": "0.1.56", - "resolved": "https://registry.npmjs.org/@rushstack/webpack-plugin-utilities/-/webpack-plugin-utilities-0.1.56.tgz", - "integrity": "sha512-PaSnWl0rU0CqB8PYh6ATBkM94FlC37tDm904ywBADPeQj/ZiykaIHhRLeFz93vcUBsJvmofFScMYHuPhpNx2qA==", - "dev": true, - "peerDependencies": { - "@types/webpack": "^4.39.8", - "webpack": "^5.35.1" - }, - "peerDependenciesMeta": { - "@types/webpack": { - "optional": true - }, - "webpack": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/stream-collator": { - "version": "4.0.227", - "resolved": "https://registry.npmjs.org/@rushstack/stream-collator/-/stream-collator-4.0.227.tgz", - "integrity": "sha512-SLHwjWqUlEfqA6KfLkSmZSr28/2Z5BxWnqtXqtLDFndZUuHUiUDg85w8GtS9MyZXMOfAjj9pS7Xi764bjsOKBA==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "@rushstack/terminal": "0.5.2" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/terminal": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.5.2.tgz", - "integrity": "sha512-zyzUQLUkDhRdKIvEk94WforJHCITedizbr1215pSONRwWS8MQEMTcDY+dBz+U8Ar4s/4oJAtFuT5cHP/uTYYdw==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "wordwrap": "~1.0.0" - }, - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/ts-command-line": { - "version": "4.13.2", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.13.2.tgz", - "integrity": "sha512-bCU8qoL9HyWiciltfzg7GqdfODUeda/JpI0602kbN5YH22rzTxyqYvv7aRLENCM7XCQ1VRs7nMkEqgJUOU8Sag==", - "dev": true, - "dependencies": { - "@types/argparse": "1.0.38", - "argparse": "~1.0.9", - "colors": "~1.2.1", - "string-argv": "~0.3.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/ts-command-line/node_modules/colors": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz", - "integrity": "sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/typings-generator": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@rushstack/typings-generator/-/typings-generator-0.10.2.tgz", - "integrity": "sha512-0T0dkv3QNnpGLHjdogn+7wTw+4aRJVlMPIpWIr30DlGQ62XxcbP5sVUN45JcWRtYXriUurXi9dgzSQZv94nJwg==", - "dev": true, - "dependencies": { - "@rushstack/node-core-library": "3.55.2", - "chokidar": "~3.4.0", - "glob": "~7.0.5" - }, - "peerDependencies": { - "@types/node": "*" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/webpack4-localization-plugin": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/@rushstack/webpack4-localization-plugin/-/webpack4-localization-plugin-0.17.2.tgz", - "integrity": "sha512-CRVWQUPqtXPvpGkCC5OYRVdDM9iVCK7NO294MNx0LG8P7+b24M0o9a8hvYAv8802gyONdkEDvObT29RvhwQYhA==", - "dev": true, - "dependencies": { - "@rushstack/localization-utilities": "0.8.46", - "@rushstack/node-core-library": "3.55.2", - "@types/tapable": "1.0.6", - "loader-utils": "1.4.2", - "lodash": "~4.17.15", - "minimatch": "~3.0.3" - }, - "peerDependencies": { - "@rushstack/set-webpack-public-path-plugin": "^3.3.91", - "@types/node": "*", - "@types/webpack": "^4.39.0", - "webpack": "^4.31.0" - }, - "peerDependenciesMeta": { - "@rushstack/set-webpack-public-path-plugin": { - "optional": true - }, - "@types/node": { - "optional": true - }, - "@types/webpack": { - "optional": true - } - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/webpack4-localization-plugin/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/webpack4-localization-plugin/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@rushstack/worker-pool": { - "version": "0.1.41", - "resolved": "https://registry.npmjs.org/@rushstack/worker-pool/-/worker-pool-0.1.41.tgz", - "integrity": "sha512-n2NC9Pr/VLs2iYNA4oB+/usl5iBIu0n3s3Mf4DT4UHSREJz8NJuxtGgLxCsJgINkCGz2VSEImZniNeIkNF1jpQ==", - "dev": true, - "dependencies": { - "@types/node": "12.20.24" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@types/eslint": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz", - "integrity": "sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", - "dev": true, - "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@types/node": { - "version": "12.20.24", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.24.tgz", - "integrity": "sha512-yxDeaQIAJlMav7fH5AQqPH1u8YIuhYJXYBzxaQ4PifsU0GDO38MSdmEDeRlIxrKbC6NbEaaEHDanWb+y30U8SQ==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/@types/yargs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-6.6.0.tgz", - "integrity": "sha512-021+XKlD4/hDZkkdgGhgtDGKlcTIXrII1lrCLp/ZNPoU0AHN9HmTNe+i1eKRxcZisFObX3ItTncemegEACgnsw==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "peer": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "peer": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=0.10.0" } }, "node_modules/spfx-fast-serve-helpers/node_modules/cliui": { @@ -31327,12 +31526,6 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "node_modules/spfx-fast-serve-helpers/node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, "node_modules/spfx-fast-serve-helpers/node_modules/colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", @@ -31343,10 +31536,22 @@ } }, "node_modules/spfx-fast-serve-helpers/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, + "node_modules/spfx-fast-serve-helpers/node_modules/connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true, + "engines": { + "node": ">=0.8" + } }, "node_modules/spfx-fast-serve-helpers/node_modules/content-disposition": { "version": "0.5.4", @@ -31361,9 +31566,9 @@ } }, "node_modules/spfx-fast-serve-helpers/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "dev": true, "engines": { "node": ">= 0.6" @@ -31398,24 +31603,6 @@ "webpack": "^4.37.0 || ^5.0.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/css-loader": { "version": "5.2.4", "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.2.4.tgz", @@ -31445,82 +31632,6 @@ "webpack": "^4.27.0 || ^5.0.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/css-loader/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/css-loader/node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/css-loader/node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/css-loader/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/css-loader/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", @@ -31700,24 +31811,6 @@ "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/eslint-webpack-plugin/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/eslint/node_modules/ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -31753,27 +31846,18 @@ "node": ">=4" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dev": true, "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.0", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -31789,7 +31873,7 @@ "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", "proxy-addr": "~2.0.7", - "qs": "6.10.3", + "qs": "6.11.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", "send": "0.18.0", @@ -31839,24 +31923,6 @@ "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/file-loader/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", @@ -31918,23 +31984,48 @@ } }, "node_modules/spfx-fast-serve-helpers/node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2", "dev": true, "hasInstallScript": true, "optional": true, "os": [ "darwin" ], + "dependencies": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + }, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">= 4.0" + } + }, + "node_modules/spfx-fast-serve-helpers/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/spfx-fast-serve-helpers/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "peer": true, "dependencies": { @@ -31976,6 +32067,12 @@ "node": ">=4" } }, + "node_modules/spfx-fast-serve-helpers/node_modules/html-entities": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", + "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", + "dev": true + }, "node_modules/spfx-fast-serve-helpers/node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -32007,27 +32104,28 @@ "node": ">=4.0.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/http-proxy-middleware/node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "node_modules/spfx-fast-serve-helpers/node_modules/http-proxy-middleware/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "dev": true, "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "engines": { "node": ">=0.10.0" } }, + "node_modules/spfx-fast-serve-helpers/node_modules/http-proxy-middleware/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/spfx-fast-serve-helpers/node_modules/http-proxy-middleware/node_modules/micromatch": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", @@ -32052,19 +32150,6 @@ "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/http-proxy-middleware/node_modules/micromatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -32077,6 +32162,18 @@ "node": ">=0.10.0" } }, + "node_modules/spfx-fast-serve-helpers/node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, "node_modules/spfx-fast-serve-helpers/node_modules/import-local": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", @@ -32093,13 +32190,16 @@ "node": ">=6" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/ipaddr.js": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz", - "integrity": "sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", "dev": true, + "dependencies": { + "binary-extensions": "^1.0.0" + }, "engines": { - "node": ">= 10" + "node": ">=0.10.0" } }, "node_modules/spfx-fast-serve-helpers/node_modules/is-descriptor": { @@ -32136,25 +32236,13 @@ "node": ">=4" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "dev": true, "dependencies": { - "is-buffer": "^1.1.5" + "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" @@ -32202,18 +32290,6 @@ "node": ">=8" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -32247,10 +32323,13 @@ "dev": true }, "node_modules/spfx-fast-serve-helpers/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, "engines": { "node": ">=0.10.0" } @@ -32301,6 +32380,18 @@ "node": ">= 8" } }, + "node_modules/spfx-fast-serve-helpers/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/spfx-fast-serve-helpers/node_modules/mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -32376,6 +32467,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/spfx-fast-serve-helpers/node_modules/p-retry": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", + "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "dev": true, + "dependencies": { + "retry": "^0.12.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/spfx-fast-serve-helpers/node_modules/path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", @@ -32398,104 +32501,121 @@ } }, "node_modules/spfx-fast-serve-helpers/node_modules/postcss": { - "version": "7.0.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.38.tgz", - "integrity": "sha512-wNrSHWjHDQJR/IZL5IKGxRtFgrYNaAA/UrkW2WqbtZO6uxSLMxMN+s2iqUMwnAWm3fMROlDYZB41dr0Mt7vBwQ==", + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "nanocolors": "^0.2.2", - "source-map": "^0.6.1" + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": "^10 || ^12 || >=14" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/postcss-loader": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-4.2.0.tgz", - "integrity": "sha512-mqgScxHqbiz1yxbnNcPdKYo/6aVt+XExURmEbQlviFVWogDbM4AJ0A/B+ZBpYsJrTRxKw7HyRazg9x0Q9SWwLA==", + "node_modules/spfx-fast-serve-helpers/node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", "dev": true, "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.4", - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0", - "semver": "^7.3.4" + "side-channel": "^1.0.4" }, "engines": { - "node": ">= 10.13.0" + "node": ">=0.6" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^4.0.0 || ^5.0.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/postcss-loader/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "node_modules/spfx-fast-serve-helpers/node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">= 0.8" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "node_modules/spfx-fast-serve-helpers/node_modules/readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "dependencies": { - "side-channel": "^1.0.4" + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" }, "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "node_modules/spfx-fast-serve-helpers/node_modules/readdirp/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "dev": true, "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/spfx-fast-serve-helpers/node_modules/readdirp/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spfx-fast-serve-helpers/node_modules/readdirp/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "dependencies": { - "picomatch": "^2.2.1" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" }, "engines": { - "node": ">=8.10.0" + "node": ">=0.10.0" } }, "node_modules/spfx-fast-serve-helpers/node_modules/require-main-filename": { @@ -32554,6 +32674,33 @@ } ] }, + "node_modules/spfx-fast-serve-helpers/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/spfx-fast-serve-helpers/node_modules/selfsigned": { + "version": "1.10.14", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", + "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", + "dev": true, + "dependencies": { + "node-forge": "^0.10.0" + } + }, "node_modules/spfx-fast-serve-helpers/node_modules/send": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", @@ -32679,32 +32826,6 @@ "node": ">=6" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/terser": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", - "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", - "dev": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.7.2", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/terser/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/to-regex-range": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", @@ -32718,12 +32839,6 @@ "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, "node_modules/spfx-fast-serve-helpers/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -32737,87 +32852,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/uuid": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", - "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/validator": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-13.11.0.tgz", - "integrity": "sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack": { - "version": "4.44.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.2.tgz", - "integrity": "sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/wasm-edit": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "acorn": "^6.4.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.3.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.3", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.7.4", - "webpack-sources": "^1.4.1" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=6.11.5" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - }, - "webpack-command": { - "optional": true - } - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server": { - "version": "3.11.2", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.2.tgz", - "integrity": "sha512-A80BkuHRQfCiNtGBS1EMf2ChTUs0x+B3wGDFmOeT4rmJOHhHTCH2naNxIHhmkr0/UillP4U3yeIyv1pNp+QDLQ==", + "version": "3.11.3", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz", + "integrity": "sha512-3x31rjbEQWKMNzacUZRE6wXvUFuGpH7vr0lIEbYpMAG9BOxi0928QU1BBswOAP3kg3H1O4hiS+sq4YyAn6ANnA==", "dev": true, "dependencies": { - "ansi-html": "0.0.7", + "ansi-html-community": "0.0.8", "bonjour": "^3.5.0", "chokidar": "^2.1.8", "compression": "^1.7.4", @@ -32866,28 +32907,6 @@ } } }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "dependencies": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/anymatch/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/array-union": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", @@ -32900,59 +32919,6 @@ "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", - "dev": true, - "dependencies": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - }, - "optionalDependencies": { - "fsevents": "^1.2.7" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/del": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", @@ -32980,67 +32946,6 @@ "node": ">=6" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "deprecated": "The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "dependencies": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", - "dev": true, - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/globby": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", @@ -33057,73 +32962,6 @@ "node": ">=0.10.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/html-entities": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", - "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", - "dev": true - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", - "dev": true, - "dependencies": { - "binary-extensions": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/micromatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/p-map": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", @@ -33133,32 +32971,6 @@ "node": ">=6" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/p-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", - "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", - "dev": true, - "dependencies": { - "retry": "^0.12.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "engines": { - "node": ">=0.10" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -33185,15 +32997,6 @@ "node": ">= 4" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/selfsigned": { - "version": "1.10.14", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", - "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", - "dev": true, - "dependencies": { - "node-forge": "^0.10.0" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/webpack-dev-server/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -33264,148 +33067,6 @@ "yargs-parser": "^13.1.2" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/acorn": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", - "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "dependencies": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/micromatch/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/webpack/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/spfx-fast-serve-helpers/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/spfx-fast-serve-helpers/node_modules/which-module": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", @@ -33484,24 +33145,13 @@ "decamelize": "^1.2.0" } }, - "node_modules/spfx-fast-serve-helpers/node_modules/z-schema": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.4.tgz", - "integrity": "sha512-YvBeW5RGNeNzKOUJs3rTL4+9rpcvHXt5I051FJbOcitV8bl40pEfcG0Q+dWSwS0/BIYrMZ/9HHoqLllMkFhD0w==", + "node_modules/spfx-fast-serve-helpers/node_modules/yargs-parser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, - "dependencies": { - "lodash.get": "^4.4.2", - "lodash.isequal": "^4.5.0", - "validator": "^13.6.0" - }, - "bin": { - "z-schema": "bin/z-schema" - }, "engines": { - "node": ">=6.0.0" - }, - "optionalDependencies": { - "commander": "^2.7.1" + "node": ">=6" } }, "node_modules/split-string": { @@ -33737,9 +33387,9 @@ } }, "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", + "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==", "dev": true }, "node_modules/strict-uri-encode": { @@ -33830,34 +33480,41 @@ } }, "node_modules/string.prototype.matchall": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", - "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", + "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "regexp.prototype.flags": "^1.5.0", - "set-function-name": "^2.0.0", - "side-channel": "^1.0.4" + "internal-slot": "^1.0.7", + "regexp.prototype.flags": "^1.5.2", + "set-function-name": "^2.0.2", + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trim": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", - "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -33867,28 +33524,31 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", - "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", - "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -34002,6 +33662,11 @@ "postcss": "^8.2.15" } }, + "node_modules/stylis": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", + "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==" + }, "node_modules/sudo": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sudo/-/sudo-1.0.3.tgz", @@ -34092,12 +33757,6 @@ "node": ">= 10" } }, - "node_modules/svgo/node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, "node_modules/swiper": { "version": "8.4.7", "resolved": "https://registry.npmjs.org/swiper/-/swiper-8.4.7.tgz", @@ -34135,9 +33794,9 @@ "dev": true }, "node_modules/table": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", - "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz", + "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==", "dev": true, "peer": true, "dependencies": { @@ -34175,6 +33834,15 @@ "dev": true, "peer": true }, + "node_modules/tabster": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/tabster/-/tabster-7.1.0.tgz", + "integrity": "sha512-/saGl9AYqgjAe5yZWQsnbtBwXTK+tDXm93ipxAARxhX0jP2xiQbPgykybzU7li6H4mJtTw0GnK51w6A0mMvx3Q==", + "dependencies": { + "keyborg": "2.5.0", + "tslib": "^2.3.1" + } + }, "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -34285,9 +33953,9 @@ } }, "node_modules/terser": { - "version": "5.24.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", - "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", + "version": "5.30.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.3.tgz", + "integrity": "sha512-STdUgOUx8rLbMGO9IOwHLpCqolkDITFFQSMYYwKE1N2lY6MVSaeoi10z/EhWxRc6ybqoVmKSkhKYH/XUpl7vSA==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -34731,13 +34399,38 @@ } }, "node_modules/through2-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", - "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.1.0.tgz", + "integrity": "sha512-VhZsTsfrIJjyUi6GeecnwcOJlmoqgIdGFDjqnV5ape+F1DN8GejfPO66XyIhoinxmxGImiUTrq9RwpTN5yszGA==", "dev": true, "dependencies": { - "through2": "~2.0.0", - "xtend": "~4.0.0" + "through2": "^4.0.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/through2-filter/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/through2-filter/node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "dependencies": { + "readable-stream": "3" } }, "node_modules/thunky": { @@ -35103,9 +34796,9 @@ } }, "node_modules/tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", "dev": true, "dependencies": { "@types/json5": "^0.0.29", @@ -35142,9 +34835,9 @@ } }, "node_modules/tsconfig-paths-webpack-plugin/node_modules/enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -35253,9 +34946,9 @@ "dev": true }, "node_modules/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==", "dev": true }, "node_modules/type-check": { @@ -35305,29 +34998,30 @@ } }, "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -35337,16 +35031,17 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -35356,14 +35051,20 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -35660,12 +35361,6 @@ "browserslist": ">= 4.21.0" } }, - "node_modules/update-browserslist-db/node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, "node_modules/update-notifier": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", @@ -35780,12 +35475,12 @@ "dev": true }, "node_modules/url/node_modules/qs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", - "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "version": "6.12.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.12.1.tgz", + "integrity": "sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ==", "dev": true, "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -35803,6 +35498,17 @@ "node": ">=0.10.0" } }, + "node_modules/use-disposable": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/use-disposable/-/use-disposable-1.0.2.tgz", + "integrity": "sha512-UMaXVlV77dWOu4GqAFNjRzHzowYKUKbJBQfCexvahrYeIz4OkUYUjna4Tjjdf92NH8Nm8J7wEfFRgTIwYjO5jg==", + "peerDependencies": { + "@types/react": ">=16.8.0 <19.0.0", + "@types/react-dom": ">=16.8.0 <19.0.0", + "react": ">=16.8.0 <19.0.0", + "react-dom": ">=16.8.0 <19.0.0" + } + }, "node_modules/util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", @@ -36481,24 +36187,22 @@ } }, "node_modules/webpack-cli": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.6.0.tgz", - "integrity": "sha512-9YV+qTcGMjQFiY7Nb1kmnupvb1x40lfpj8pwdO/bom+sQiP4OBMKjHq29YQrlDWDPZO9r/qWaRRywKaRDKqBTA==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", + "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", "dev": true, "dependencies": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.0.2", - "@webpack-cli/info": "^1.2.3", - "@webpack-cli/serve": "^1.3.1", - "colorette": "^1.2.1", + "@webpack-cli/configtest": "^1.2.0", + "@webpack-cli/info": "^1.5.0", + "@webpack-cli/serve": "^1.7.0", + "colorette": "^2.0.14", "commander": "^7.0.0", - "enquirer": "^2.3.6", - "execa": "^5.0.0", + "cross-spawn": "^7.0.3", "fastest-levenshtein": "^1.0.12", "import-local": "^3.0.2", "interpret": "^2.2.0", "rechoir": "^0.7.0", - "v8-compile-cache": "^2.2.0", "webpack-merge": "^5.7.3" }, "bin": { @@ -36507,6 +36211,10 @@ "engines": { "node": ">=10.13.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, "peerDependencies": { "webpack": "4.x.x || 5.x.x" }, @@ -36534,50 +36242,6 @@ "node": ">= 10" } }, - "node_modules/webpack-cli/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/webpack-cli/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/webpack-cli/node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, "node_modules/webpack-cli/node_modules/interpret": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", @@ -36600,9 +36264,9 @@ } }, "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", "dev": true, "dependencies": { "colorette": "^2.0.10", @@ -36650,12 +36314,6 @@ "ajv": "^8.8.2" } }, - "node_modules/webpack-dev-middleware/node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -36765,13 +36423,13 @@ } }, "node_modules/webpack-dev-server/node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", "dev": true, "dependencies": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -36779,7 +36437,7 @@ "iconv-lite": "0.4.24", "on-finished": "2.4.1", "qs": "6.11.0", - "raw-body": "2.5.1", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" }, @@ -36798,16 +36456,10 @@ } }, "node_modules/webpack-dev-server/node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -36820,16 +36472,13 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } }, - "node_modules/webpack-dev-server/node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, "node_modules/webpack-dev-server/node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -36843,9 +36492,9 @@ } }, "node_modules/webpack-dev-server/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "dev": true, "engines": { "node": ">= 0.6" @@ -36880,17 +36529,17 @@ } }, "node_modules/webpack-dev-server/node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dev": true, "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -37078,9 +36727,9 @@ } }, "node_modules/webpack-dev-server/node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, "dependencies": { "bytes": "3.1.2", @@ -37204,9 +36853,9 @@ } }, "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", "dev": true, "engines": { "node": ">=10.0.0" @@ -37675,16 +37324,16 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", - "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -37732,12 +37381,6 @@ "node": ">=0.10.0" } }, - "node_modules/wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - "dev": true - }, "node_modules/worker-farm": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", diff --git a/package.json b/package.json index 01bb3001..52b05cb8 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@pnp/spfx-property-controls", "description": "Reusable property pane controls for SharePoint Framework solutions", - "version": "3.16.0", + "version": "3.17.0", "engines": { "node": ">=16.13.0 <17.0.0 || >=18.17.1 <19.0.0" }, @@ -21,6 +21,7 @@ }, "dependencies": { "@fluentui/react": "8.106.4", + "@fluentui/react-components": "^9.48.0", "@microsoft/sp-adaptive-card-extension-base": "1.18.2", "@microsoft/sp-core-library": "1.18.2", "@microsoft/sp-lodash-subset": "1.18.2", @@ -69,7 +70,7 @@ "husky": "^6.0.0", "request-promise": "4.2.6", "sonarqube-scanner": "2.8.2", - "spfx-fast-serve-helpers": "~1.17.3", + "spfx-fast-serve-helpers": "~1.18.0", "typescript": "4.7.4", "uuid": "^9.0.1" }, @@ -80,6 +81,8 @@ "license": "MIT", "keywords": [ "sharepoint", + "microsoft365", + "m365", "office365", "tools", "spfx", @@ -90,17 +93,6 @@ }, "homepage": "https://pnp.github.io/sp-dev-fx-property-controls/", "main": "lib/index.js", - "maintainers": [ - { - "name": "estruyf", - "email": "elio@struyfconsulting.be" - } - ], - "contributors": [ - "Gove, Russell ", - "Kent, Chris <>", - "Opdendries, David <>", - "Struyf, Elio ", - "Terentiev, Alex <>" - ] + "maintainers": [], + "contributors": [] } diff --git a/src/PropertyFieldButton.ts b/src/PropertyFieldButton.ts new file mode 100644 index 00000000..4513e9d6 --- /dev/null +++ b/src/PropertyFieldButton.ts @@ -0,0 +1 @@ +export * from './propertyFields/propertyFieldButton/index'; \ No newline at end of file diff --git a/src/PropertyFieldContentTypePicker.ts b/src/PropertyFieldContentTypePicker.ts new file mode 100644 index 00000000..3eb4dd95 --- /dev/null +++ b/src/PropertyFieldContentTypePicker.ts @@ -0,0 +1,2 @@ +export * from './propertyFields/contentTypePicker/index'; +export * from './propertyFields/contentTypePicker/index'; \ No newline at end of file diff --git a/src/common/telemetry/version.ts b/src/common/telemetry/version.ts index 7c110cac..d30aa27b 100644 --- a/src/common/telemetry/version.ts +++ b/src/common/telemetry/version.ts @@ -1 +1 @@ -export const version: string = "3.16.0"; \ No newline at end of file +export const version: string = "3.17.0"; \ No newline at end of file diff --git a/src/helpers/GeneralHelper.ts b/src/helpers/GeneralHelper.ts index e43e773e..9a288136 100644 --- a/src/helpers/GeneralHelper.ts +++ b/src/helpers/GeneralHelper.ts @@ -356,5 +356,5 @@ export const toRelativeUrl = (absoluteUrl: string): string => { return ''; } - return absoluteUrl.replace(/^(?:\/\/|[^/]+)*\//, '/'); + return new URL(absoluteUrl).pathname; }; diff --git a/src/index.ts b/src/index.ts index e9916e34..a0be0425 100644 --- a/src/index.ts +++ b/src/index.ts @@ -27,4 +27,5 @@ export * from './PropertyFieldFolderPicker'; export * from './PropertyFieldColumnPicker'; export * from './PropertyFieldMonacoEditor'; -export * from './PropertyFieldMessage'; \ No newline at end of file +export * from './PropertyFieldMessage'; +export * from './PropertyFieldButton'; \ No newline at end of file diff --git a/src/loc/ar-sa.js b/src/loc/ar-sa.js index 9107ed77..7f1a11b7 100644 --- a/src/loc/ar-sa.js +++ b/src/loc/ar-sa.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "أنت مسؤول عن احترام حقوق الآخرين ، بما في ذلك حقوق النشر.", "CreativeCommonsMessage": "يتم تمييز هذه النتائج بتراخيص المشاع الإبداعي. راجع التراخيص للتأكد من التزامك بها.", "DateFormat": "مم / يوم / سنة حه: مم أ", + "DeleteSelectedFileButtonLabel": "حذف الملف المحدد", "DocumentLabelTemplate": "{0},مستند,معدل {1},تم التعديل بواسطة {2},خاص", "DocumentLibraries": "مكتبات المستندات", "EditedByNamePlate": "حررت بواسطة ", diff --git a/src/loc/bg-bg.js b/src/loc/bg-bg.js index 3e2e4b8d..9d46cad3 100644 --- a/src/loc/bg-bg.js +++ b/src/loc/bg-bg.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Вие носите отговорност за зачитането на правата на другите, включително авторските права.", "CreativeCommonsMessage": "Тези резултати са маркирани с лицензи на Криейтив Енъли. Прегледайте лицензите, за да се уверите, че спазвате.", "DateFormat": "2000 mm/дд/гггг чч: ммА", + "DeleteSelectedFileButtonLabel": "Изтрий избрания файл", "DocumentLabelTemplate": "{0}, Документ, Модифициран {1}, редактиран от {2}, Лично", "DocumentLibraries": "Библиотеки с документи", "EditedByNamePlate": "редактирани от ", diff --git a/src/loc/ca-es.js b/src/loc/ca-es.js index f9358fc9..1c2d6248 100644 --- a/src/loc/ca-es.js +++ b/src/loc/ca-es.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Vostè és responsable de respectar els drets dels altres, inclosos els drets d'autor.", "CreativeCommonsMessage": "Aquests resultats estan etiquetats amb llicències Creative Commons. Reviseu les llicències per assegurar-vos que compliu.", "DateFormat": "MM / DD / YYYY hh: mm A", + "DeleteSelectedFileButtonLabel": "Suprimeix el fitxer seleccionat", "DocumentLabelTemplate": "{0}, Document, Modificat {1}, editat per {2}, Privat", "DocumentLibraries": "Biblioteques de documents", "EditedByNamePlate": "editat per ", diff --git a/src/loc/cs-cz.js b/src/loc/cs-cz.js index faab04e4..db3ef42c 100644 --- a/src/loc/cs-cz.js +++ b/src/loc/cs-cz.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Jste odpovědní za respektování práv ostatních včetně autorských práv.", "CreativeCommonsMessage": "Výsledky jsou označeny licencemi Creative Commons. Zkontrolujte licence abyste se ujistili, že vyhovujete.", "DateFormat": "MM/DD/RRRR hh:mm A", + "DeleteSelectedFileButtonLabel": "Smazat vybraný soubor", "DocumentLabelTemplate": "{0}, dokument, upraven {1}, upravil {2}, soukromé", "DocumentLibraries": "Knihovny dokumentů", "EditedByNamePlate": "editoval", diff --git a/src/loc/da-dk.js b/src/loc/da-dk.js index 3c00ee4f..372966b9 100644 --- a/src/loc/da-dk.js +++ b/src/loc/da-dk.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Du er ansvarlig for at respektere andres rettigheder, herunder ophavsret.", "CreativeCommonsMessage": "Disse resultater er mærket med Creative Commons-licenser. Gennemgå licenserne for at sikre, at du overholder reglerne.", "DateFormat": "MM/DD/ÅÅÅÅÅ hh:mm A", + "DeleteSelectedFileButtonLabel": "Slet valgte fil", "DocumentLabelTemplate": "{0}, Dokument, Ændret {1}, redigeret af {2}, Privat", "DocumentLibraries": "Dokumentbiblioteker", "EditedByNamePlate": "redigeret af ", diff --git a/src/loc/de-de.js b/src/loc/de-de.js index 1cf1a807..c76d56b2 100644 --- a/src/loc/de-de.js +++ b/src/loc/de-de.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Sie sind für die Achtung der Rechte anderer verantwortlich, einschließlich des Urheberrechts.", "CreativeCommonsMessage": "Diese Ergebnisse sind mit Creative Commons-Lizenzen gekennzeichnet. Überprüfen Sie die Lizenzen, um sicherzustellen, dass Sie die Anforderungen erfüllen.", "DateFormat": "MM/TT/JJJJ hh:mm A", + "DeleteSelectedFileButtonLabel": "Ausgewählte Datei löschen", "DocumentLabelTemplate": "{0}, Dokument, Geändertes {1}, bearbeitet von {2}, Privat", "DocumentLibraries": "Dokumentbibliotheken", "EditedByNamePlate": "bearbeitet von ", diff --git a/src/loc/el-gr.js b/src/loc/el-gr.js index 541bebed..7fa3e8aa 100644 --- a/src/loc/el-gr.js +++ b/src/loc/el-gr.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Είστε υπεύθυνοι για το σεβασμό των δικαιωμάτων των άλλων, συμπεριλαμβανομένων των πνευματικών δικαιωμάτων.", "CreativeCommonsMessage": "Αυτά τα αποτελέσματα επισημαίνονται με άδειες Creative Commons. Ελέγξτε τις άδειες χρήσης για να βεβαιωθείτε ότι συμμορφώνεστε.", "DateFormat": "ΜΜ/ΗΗ/ΕΕΕΕ ωω", + "DeleteSelectedFileButtonLabel": "Διαγραφή επιλεγμένου αρχείου", "DocumentLabelTemplate": "{0}, Έγγραφο, Τροποποιημένο {1}, επεξεργασμένο από {2}, Ιδιωτικό", "DocumentLibraries": "Βιβλιοθήκες εγγράφων", "EditedByNamePlate": "επεξεργασία από ", diff --git a/src/loc/en-gb.js b/src/loc/en-gb.js index 4bfdf082..64e58fd8 100644 --- a/src/loc/en-gb.js +++ b/src/loc/en-gb.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "You are responsible for respecting others' rights, including copyright.", "CreativeCommonsMessage": "These results are tagged with Creative Commons licenses. Review the licenses to ensure you comply.", "DateFormat": "DD/MM/YYYY hh:mm A", + "DeleteSelectedFileButtonLabel": "Delete selected file", "DocumentLabelTemplate": "{0}, Document, Modified {1}, edited by {2}, Private", "DocumentLibraries": "Document libraries", "EditedByNamePlate": "edited by ", diff --git a/src/loc/en-us.js b/src/loc/en-us.js index 3170e86e..07b832ab 100644 --- a/src/loc/en-us.js +++ b/src/loc/en-us.js @@ -100,6 +100,7 @@ define([], function () { CopyrightWarning: "You are responsible for respecting others' rights, including copyright.", CreativeCommonsMessage: "These results are tagged with Creative Commons licenses. Review the licenses to ensure you comply.", DateFormat: "MM/DD/YYYY hh:mm A", + DeleteSelectedFileButtonLabel: "Delete selected file", DocumentLabelTemplate: "{0}, Document, Modified {1}, edited by {2}, Private", DocumentLibraries: "Document libraries", EditedByNamePlate: "edited by ", @@ -263,6 +264,8 @@ define([], function () { redError: 'Red must be between 0 and 255', greenError: 'Green must be between 0 and 255', blueError: 'Blue must be between 0 and 255' - } + }, + gridControlColumn1Label: "Title", + gridControlColumn2Label: "Description", } }); diff --git a/src/loc/es-es.js b/src/loc/es-es.js index e8771a7a..b56cc5cc 100644 --- a/src/loc/es-es.js +++ b/src/loc/es-es.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Usted es responsable de respetar los derechos de los demás, incluidos los derechos de autor.", "CreativeCommonsMessage": "Estos resultados se etiquetan con licencias Creative Commons. Revise las licencias para asegurarse de que cumple.", "DateFormat": "MM/DD/AAAA hh:mm A", + "DeleteSelectedFileButtonLabel": "Eliminar archivo seleccionado", "DocumentLabelTemplate": "{0}, Documento, {1} modificada, editado por {2}, Privado", "DocumentLibraries": "Bibliotecas de documentos", "EditedByNamePlate": "editado por ", diff --git a/src/loc/et-ee.js b/src/loc/et-ee.js index a0449dc9..973ed3a2 100644 --- a/src/loc/et-ee.js +++ b/src/loc/et-ee.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Teie vastutate teiste õiguste, sealhulgas autoriõiguse austamise eest.", "CreativeCommonsMessage": "Need tulemused on sildistatud Creative Commons i litsentsidega. Vaadake litsentsid üle, et tagada nende järgimine.", "DateFormat": "KK/PP/AAAA hh:mm A", + "DeleteSelectedFileButtonLabel": "Kustuta valitud fail", "DocumentLabelTemplate": "{0}, Dokument, Muudetud {1}, redigeeritud {2}, Private", "DocumentLibraries": "Dokumenditeegid", "EditedByNamePlate": "toimetanud: ", diff --git a/src/loc/fi-fi.js b/src/loc/fi-fi.js index 4a4eed8d..ff9d9767 100644 --- a/src/loc/fi-fi.js +++ b/src/loc/fi-fi.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Olet vastuussa muiden oikeuksien, myös tekijänoikeuksien, kunnioittamisesta.", "CreativeCommonsMessage": "Nämä tulokset on merkitty Creative Commons -lisensseillä. Tarkista käyttöoikeudet varmistaaksesi, että noudatat sääntöjä.", "DateFormat": "KK/PP/VVVV hh:mm A", + "DeleteSelectedFileButtonLabel": "Poista valittu tiedosto", "DocumentLabelTemplate": "{0}, Asiakirja, Muokattu {1}, muokannut {2}, Yksityinen", "DocumentLibraries": "Asiakirjakirjastojen", "EditedByNamePlate": "muokannut ", diff --git a/src/loc/fr-fr.js b/src/loc/fr-fr.js index a7935cb4..e67bf8b5 100644 --- a/src/loc/fr-fr.js +++ b/src/loc/fr-fr.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Vous êtes responsable du respect des droits des autres, y compris le droit d’auteur.", "CreativeCommonsMessage": "Ces résultats sont marqués avec les licences Creative Commons. Examinez les licences pour vous assurer de vous conformer.", "DateFormat": "MM/JJ/AAAA hh:mm A", + "DeleteSelectedFileButtonLabel": "Supprimer le fichier sélectionné", "DocumentLabelTemplate": "{0}, Document, Modified {1}, édité par {2}, Private", "DocumentLibraries": "Bibliothèques de documents", "EditedByNamePlate": "édité par ", diff --git a/src/loc/it-it.js b/src/loc/it-it.js index 0da89a41..a35a9e5a 100644 --- a/src/loc/it-it.js +++ b/src/loc/it-it.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "L'utente è responsabile del rispetto dei diritti al di per gli altri, incluso il diritto d'autore.", "CreativeCommonsMessage": "Questi risultati sono contrassegnati con licenze Creative Commons. Esaminare le licenze per assicurarsi che siano conformi.", "DateFormat": "MM/GG/AAAA hh:mm A", + "DeleteSelectedFileButtonLabel": "Elimina file selezionato", "DocumentLabelTemplate": "{0}, Documento, {1} modificato, {2} da", "DocumentLibraries": "Raccolte documenti", "EditedByNamePlate": "a modifica di ", diff --git a/src/loc/ja-jp.js b/src/loc/ja-jp.js index 040e3ac4..b9830149 100644 --- a/src/loc/ja-jp.js +++ b/src/loc/ja-jp.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "著作権を含め、他人の権利を尊重する責任があります。", "CreativeCommonsMessage": "これらの結果にはクリエイティブ・コモンズのライセンスがタグ付けされます。ライセンスを確認して、準拠していることを確認します。", "DateFormat": "MM/DD/YYYY hh:mm A", + "DeleteSelectedFileButtonLabel": "選択したファイルを削除", "DocumentLabelTemplate": "{0}, ドキュメント, 修正{1}, 編集: {2}, プライベート", "DocumentLibraries": "ドキュメント ライブラリ", "EditedByNamePlate": "編集日時:", diff --git a/src/loc/lt-lt.js b/src/loc/lt-lt.js index b14b53cb..1ee34d95 100644 --- a/src/loc/lt-lt.js +++ b/src/loc/lt-lt.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Jūs esate atsakingi už pagarbą kitų teisėms, įskaitant autorių teises.", "CreativeCommonsMessage": "Šie rezultatai pažymėti Creative Commons licencijomis. Peržiūrėkite licencijas, kad įsitikintumėte, jog laikotės reikalavimų.", "DateFormat": "MM/DD/MMMM:mm A", + "DeleteSelectedFileButtonLabel": "Ištrinti pasirinktą failą", "DocumentLabelTemplate": "{0}, dokumentas, modifikuotas {1}, redaguotas {2}, Privatus", "DocumentLibraries": "Dokumentų bibliotekos", "EditedByNamePlate": "redagavo ", diff --git a/src/loc/lv-lv.js b/src/loc/lv-lv.js index 9d84398c..08a741bd 100644 --- a/src/loc/lv-lv.js +++ b/src/loc/lv-lv.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Jūs esat atbildīgs par citu tiesību, tostarp autortiesību, ievērošanu.", "CreativeCommonsMessage": "Šie rezultāti ir atzīmēti ar Creative Commons licencēm. Pārskatiet licences, lai nodrošinātu atbilstību.", "DateFormat": "MM/DD/GGGG hh:mm A", + "DeleteSelectedFileButtonLabel": "Izdzēst atlasīto failu", "DocumentLabelTemplate": "{0}, dokuments, modificēts {1}, rediģējis {2}, Privāts", "DocumentLibraries": "Dokumentu bibliotēkas", "EditedByNamePlate": "rediģējis ", diff --git a/src/loc/mystrings.d.ts b/src/loc/mystrings.d.ts index 5ad055bd..093dd1f3 100644 --- a/src/loc/mystrings.d.ts +++ b/src/loc/mystrings.d.ts @@ -1,5 +1,4 @@ declare interface IPropertyControlStrings { - DescriptionLabel: string; MoreInfoLabel: string; @@ -109,7 +108,6 @@ declare interface IPropertyControlStrings { TeamPickerNoResults: string; TeamPickerSitesChosen: string; - //FilePicker // File picker AddFileButtonLabel: string; AddImageButtonLabel: string; @@ -124,6 +122,7 @@ declare interface IPropertyControlStrings { CopyrightWarning: string; CreativeCommonsMessage: string; DateFormat: string; + DeleteSelectedFileButtonLabel: string; DocumentLabelTemplate: string; DocumentLibraries: string; EditedByNamePlate: string; @@ -237,6 +236,10 @@ declare interface IPropertyControlStrings { // Fluent UI color picker strings ColorPickerStrings: { [key: string]: string }; + + // PropertyFieldGrid + gridControlColumn1Label: string; + gridControlColumn2Label: string; } declare interface IDateTimeStrings { @@ -264,7 +267,7 @@ declare interface IDateTimeStrings { L_RelativeDateTime_XDaysFutureIntervals: string; L_RelativeDateTime_XDaysIntervals: string; L_RelativeDateTime_Today: string; - + } declare module 'PropertyControlStrings' { diff --git a/src/loc/nb-no.js b/src/loc/nb-no.js index ae48f6a8..5f82ad2d 100644 --- a/src/loc/nb-no.js +++ b/src/loc/nb-no.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Du er ansvarlig for å respektere andres rettigheter, inkludert opphavsrett.", "CreativeCommonsMessage": "Disse resultatene er merket med Creative Commons-lisenser. Se gjennom lisensene for å sikre at du overholder reglene.", "DateFormat": "MM/DD/ÅYYY hh:mm A", + "DeleteSelectedFileButtonLabel": "Slett valgt fil", "DocumentLabelTemplate": "{0}, Dokument, {1}, redigert av {2}, Privat", "DocumentLibraries": "Dokumentbiblioteker", "EditedByNamePlate": "redigert av ", diff --git a/src/loc/nl-nl.js b/src/loc/nl-nl.js index 3adbdd7d..85435a78 100644 --- a/src/loc/nl-nl.js +++ b/src/loc/nl-nl.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "U bent verantwoordelijk voor de eerbiediging van de rechten van anderen, inclusief het auteursrecht.", "CreativeCommonsMessage": "Deze resultaten zijn gelabeld met Creative Commons-licenties. Controleer de licenties om ervoor te zorgen dat u voldoet.", "DateFormat": "MM / DD / JJJJ hh: mm A", + "DeleteSelectedFileButtonLabel": "Geselecteerd bestand verwijderen", "DocumentLabelTemplate": "{0}, Document, Gewijzigd {1}, bewerkt door {2}, Privé", "DocumentLibraries": "Documentbibliotheken", "EditedByNamePlate": "bewerkt door ", diff --git a/src/loc/no.js b/src/loc/no.js index 20f4c379..243f3a84 100644 --- a/src/loc/no.js +++ b/src/loc/no.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Du er ansvarlig for å respektere andres rettigheter, inkludert opphavsrett.", "CreativeCommonsMessage": "Disse resultatene er merket med Creative Commons-lisenser. Se gjennom lisensene for å sikre at du overholder dem.", "DateFormat": "MM/DD/ÅÅÅÅ hh:mm A", + "DeleteSelectedFileButtonLabel": "Slett valgt fil", "DocumentLabelTemplate": "{0}, Dokument, Endret {1}, redigert av {2}, Privat", "DocumentLibraries": "Dokumentbiblioteker", "EditedByNamePlate": "redigert av ", diff --git a/src/loc/pl-pl.js b/src/loc/pl-pl.js index 49d0d676..9490d65a 100644 --- a/src/loc/pl-pl.js +++ b/src/loc/pl-pl.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Użytkownik jest odpowiedzialny za poszanowanie praw innych osób, w tym praw autorskich.", "CreativeCommonsMessage": "Wyniki te są oznaczone licencjami Creative Commons. Przejrzyj licencje, aby upewnić się, że są zgodne.", "DateFormat": "MM/DD/RRRR gg:mm A", + "DeleteSelectedFileButtonLabel": "Usuń wybrany plik", "DocumentLabelTemplate": "{0}, Dokument, Zmodyfikowana {1}, edytowana przez {2},", "DocumentLibraries": "Biblioteki dokumentów", "EditedByNamePlate": "edytowane przez ", diff --git a/src/loc/pt-pt.js b/src/loc/pt-pt.js index 6f0fcd1f..2769b3b5 100644 --- a/src/loc/pt-pt.js +++ b/src/loc/pt-pt.js @@ -98,6 +98,7 @@ define([], () => { "CopyrightWarning": "É responsável pelo respeito pelos direitos dos outros, incluindo direitos de autor.", "CreativeCommonsMessage": "Estes resultados estão marcados com licenças Creative Commons. Reveja as licenças para garantir que cumpre.", "DateFormat": "MM/DD/YYYY hh:mm A", + "DeleteSelectedFileButtonLabel": "Eliminar ficheiro selecionado", "DocumentLabelTemplate": "{0}, Documento, {1} Modificado, editado por {2}, Private", "DocumentLibraries": "Bibliotecas documentais", "EditedByNamePlate": "editado por ", @@ -233,6 +234,8 @@ define([], () => { "FolderFilterBoxPlaceholder": "Pastas de filtro pelo nome", "FolderExplorerLoading": "Pastas de carregamento...", "FolderExplorerNoItems": "Esta pasta não tem sub-dobradores.", - "IncorrectGuidValidationMessage": "Introduza um GUID válido" + "IncorrectGuidValidationMessage": "Introduza um GUID válido", + "gridControlColumn1Label": "Título", + "gridControlColumn2Label": "Descrição", }; }); diff --git a/src/loc/ro-ro.js b/src/loc/ro-ro.js index 5e2e64d7..24af2bde 100644 --- a/src/loc/ro-ro.js +++ b/src/loc/ro-ro.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Sunteți responsabil pentru respectarea drepturilor altora, inclusiv a drepturilor de autor.", "CreativeCommonsMessage": "Aceste rezultate sunt etichetate cu licențe Creative Commons. Examinați licențele pentru a vă asigura că le respectați.", "DateFormat": "MM/ZZ/AAAAA HH:mm A", + "DeleteSelectedFileButtonLabel": "Ștergeți fișierul selectat", "DocumentLabelTemplate": "{0}, Document, {1} modificat, editat de {2}, Privat", "DocumentLibraries": "Biblioteci de documente", "EditedByNamePlate": "editat de ", diff --git a/src/loc/ru-ru.js b/src/loc/ru-ru.js index 5af2e86b..15b3d46f 100644 --- a/src/loc/ru-ru.js +++ b/src/loc/ru-ru.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Вы несете ответственность за соблюдение прав других, включая авторское право.", "CreativeCommonsMessage": "Эти результаты помечены лицензиями Creative Commons. Просмотрите лицензии, чтобы убедиться, что вы соблюдаете.", "DateFormat": "ММ/ДД/YYYY hh:mm A", + "DeleteSelectedFileButtonLabel": "Удалить выбранный файл", "DocumentLabelTemplate": "{0}, Документ, Измененные {1}, под редакцией {2}, Частные", "DocumentLibraries": "Библиотеки документов", "EditedByNamePlate": "под редакцией ", diff --git a/src/loc/sk-sk.js b/src/loc/sk-sk.js index ff17f919..ef3f876f 100644 --- a/src/loc/sk-sk.js +++ b/src/loc/sk-sk.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Ste zodpovední za rešpektovanie práv iných vrátane autorských práv.", "CreativeCommonsMessage": "Tieto výsledky sú označené licenciami Creative Commons. Skontrolujte licencie, aby ste sa uistili, že spĺňate požiadavky.", "DateFormat": "MM/DD/RRRR hh:mm A", + "DeleteSelectedFileButtonLabel": "Zmazať vybraný súbor", "DocumentLabelTemplate": "{0}, Dokument, {1}, editoval {2}, Súkromné", "DocumentLibraries": "Knižnice dokumentov", "EditedByNamePlate": "editoval ", diff --git a/src/loc/sr-latn-rs.js b/src/loc/sr-latn-rs.js index 3ecbc257..3be2599a 100644 --- a/src/loc/sr-latn-rs.js +++ b/src/loc/sr-latn-rs.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Vi ste odgovorni za poštovanje tuđih prava, uključujući autorska prava.", "CreativeCommonsMessage": "Ovi rezultati su označeni Creative Commons licencama. Pregledajte licence da biste se uverili da se pridržavate.", "DateFormat": "MM/DD/YYYY hh:mm A", + "DeleteSelectedFileButtonLabel": "Izbriši izabrani fajl", "DocumentLabelTemplate": "{0}, Dokument, Izmenjeni {1}, koje je uredio {2}, Privatni", "DocumentLibraries": "Biblioteke dokumenata", "EditedByNamePlate": "uredio ", diff --git a/src/loc/sv-se.js b/src/loc/sv-se.js index 6fc49dc9..5b24e034 100644 --- a/src/loc/sv-se.js +++ b/src/loc/sv-se.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Du ansvarar för att andras rättigheter respekteras, inklusive upphovsrätt.", "CreativeCommonsMessage": "Dessa resultat är märkta med Creative Commons-licenser. Granska licenserna för att säkerställa att du följer reglerna.", "DateFormat": "MM/DD/ÅÅÅÅ hh:mm A", + "DeleteSelectedFileButtonLabel": "Ta bort vald fil", "DocumentLabelTemplate": "{0}, Dokument, Ändrad {1}, redigerad av {2}, Privat", "DocumentLibraries": "Dokumentbibliotek", "EditedByNamePlate": "redigerad av ", diff --git a/src/loc/tr-tr.js b/src/loc/tr-tr.js index 041bd967..15da9831 100644 --- a/src/loc/tr-tr.js +++ b/src/loc/tr-tr.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Telif hakkı da dahil olmak üzere başkalarının haklarına saygı göstermeksizin sorumlusunuz.", "CreativeCommonsMessage": "Bu sonuçlar Creative Commons lisansları ile etiketlenir. Uymanızı sağlamak için lisansları gözden geçirin.", "DateFormat": "AA/GG/YYYY ss:mm A", + "DeleteSelectedFileButtonLabel": "Seçilen dosyayı sil", "DocumentLabelTemplate": "{0}, Belge, Değiştirilmiş {1}, {2}, Özel", "DocumentLibraries": "Belge kitaplıkları", "EditedByNamePlate": "tarafından düzenlendi ", diff --git a/src/loc/vi-vn.js b/src/loc/vi-vn.js index f0458b14..df8188a5 100644 --- a/src/loc/vi-vn.js +++ b/src/loc/vi-vn.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "Bạn có trách nhiệm tôn trọng quyền của người khác, bao gồm cả bản quyền.", "CreativeCommonsMessage": "Những kết quả này được gắn thẻ với giấy phép Creative Commons. Xem lại giấy phép để đảm bảo bạn tuân thủ.", "DateFormat": "MM / DD / YYYY hh: mm A", + "DeleteSelectedFileButtonLabel": "Xóa tệp đã chọn", "DocumentLabelTemplate": "{0}, Tài liệu, Sửa đổi {1}, chỉnh sửa bởi {2}, Riêng tư", "DocumentLibraries": "Thư viện tài liệu", "EditedByNamePlate": "chỉnh sửa bởi ", diff --git a/src/loc/zh-cn.js b/src/loc/zh-cn.js index af34b309..d5077514 100644 --- a/src/loc/zh-cn.js +++ b/src/loc/zh-cn.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "您有责任尊重他人的权利,包括版权。", "CreativeCommonsMessage": "这些结果使用知识共享许可证进行标记。查看许可证以确保符合要求。", "DateFormat": "毫米/DD/YYYY hh:mm A", + "DeleteSelectedFileButtonLabel": "删除所选文件", "DocumentLabelTemplate": "{0}, 文档, 修改{1}, 编辑, {2}, 私人", "DocumentLibraries": "文档库", "EditedByNamePlate": "编辑者", diff --git a/src/loc/zh-tw.js b/src/loc/zh-tw.js index 432d20cc..807a7d21 100644 --- a/src/loc/zh-tw.js +++ b/src/loc/zh-tw.js @@ -99,6 +99,7 @@ define([], () => { "CopyrightWarning": "您有責任尊重他人的權利,包括版權。", "CreativeCommonsMessage": "這些結果使用知識共用許可證進行標記。查看許可證以確保符合要求。", "DateFormat": "毫米/DD/YYYY hh:mm A。", + "DeleteSelectedFileButtonLabel": "刪除所選擇的文件", "DocumentLabelTemplate": "{0}, 文檔, 修改{1}, 編輯, {2}, 私人。", "DocumentLibraries": "文檔庫。", "EditedByNamePlate": "編輯者。", diff --git a/src/propertyFields/choiceGroupWithCallout/PropertyFieldChoiceGroupWithCallout.ts b/src/propertyFields/choiceGroupWithCallout/PropertyFieldChoiceGroupWithCallout.ts index 3456109d..a6f96e15 100644 --- a/src/propertyFields/choiceGroupWithCallout/PropertyFieldChoiceGroupWithCallout.ts +++ b/src/propertyFields/choiceGroupWithCallout/PropertyFieldChoiceGroupWithCallout.ts @@ -1,18 +1,21 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; + +import omit from 'lodash/omit'; + +import { IChoiceGroupOption } from '@fluentui/react/lib/components/ChoiceGroup'; import { IPropertyPaneField, PropertyPaneFieldType, } from '@microsoft/sp-property-pane'; -import omit from 'lodash/omit'; - -import PropertyFieldToggleWithCalloutHost from './PropertyFieldChoiceGroupWithCalloutHost'; import { - IPropertyFieldChoiceGroupWithCalloutPropsInternal, IPropertyFieldChoiceGroupWithCalloutProps, + IPropertyFieldChoiceGroupWithCalloutPropsInternal, } from './IPropertyFieldChoiceGroupWithCallout'; -import { IChoiceGroupOption } from '@fluentui/react/lib/components/ChoiceGroup'; +import PropertyFieldToggleWithCalloutHost + from './PropertyFieldChoiceGroupWithCalloutHost'; class PropertyFieldChoiceGroupWithCalloutBuilder implements diff --git a/src/propertyFields/contentTypePicker/IPropertyFieldContentTypePicker.ts b/src/propertyFields/contentTypePicker/IPropertyFieldContentTypePicker.ts new file mode 100644 index 00000000..7870edb5 --- /dev/null +++ b/src/propertyFields/contentTypePicker/IPropertyFieldContentTypePicker.ts @@ -0,0 +1,127 @@ +import { IPropertyPaneCustomFieldProps } from '@microsoft/sp-property-pane'; +import { BaseComponentContext } from '@microsoft/sp-component-base'; +import { ISPContentType } from './ISPContentType'; + + +/** + * Enum for specifying how the ContentTypes should be sorted + */ +export enum PropertyFieldContentTypeOrderBy { + Id = 1, + Name +} + +/** + * Public properties of the PropertyFieldContentTypePicker custom field + */ +export interface IPropertyFieldContentTypePickerProps { + /** + * Context of the current web part + */ + context: BaseComponentContext; + + /** + * Custom Field will start to validate after users stop typing for `deferredValidationTime` milliseconds. + * Default value is 200. + */ + deferredValidationTime?: number; + + /** + * Whether the property pane field is enabled or not. + */ + disabled?: boolean; + + /** + * Filter ContentTypes from Odata query + */ + filter?: string; + + /** + * An UNIQUE key indicates the identity of this control + */ + key?: string; + + /** + * Property field label displayed on top + */ + label: string; + /** + * The List Id of the list where you want to get the ContentTypes + */ + listId?: string; + + /** + * Specify the property on which you want to order the retrieve set of ContentTypes. + */ + orderBy?: PropertyFieldContentTypeOrderBy; + + /** + * Parent Web Part properties + */ + properties: any; // eslint-disable-line @typescript-eslint/no-explicit-any + + /** + * Initial selected ContentType of the control + */ + selectedContentType?: string | string[]; + + /** + * Defines ContentType titles which should be excluded from the ContentType picker control + */ + contentTypesToExclude?: string[]; + + /** + * Absolute Web Url of target site (user requires permissions) + */ + webAbsoluteUrl?: string; + + /** + * The method is used to get the validation error message and determine whether the input value is valid or not. + * + * When it returns string: + * - If valid, it returns empty string. + * - If invalid, it returns the error message string and the text field will + * show a red border and show an error message below the text field. + * + * When it returns Promise: + * - The resolved value is display as error message. + * - The rejected, the value is thrown away. + * + */ + onGetErrorMessage?: (value: string) => string | Promise; + /** + * Defines a onPropertyChange function to raise when the selected value changed. + * Normally this function must be always defined with the 'this.onPropertyChange' + * method of the web part object. + */ + onPropertyChange(propertyPath: string, oldValue: any, newValue: any): void; // eslint-disable-line @typescript-eslint/no-explicit-any + /** + * Callback that is called before the dropdown is populated + */ + onContentTypesRetrieved?: (contentTypes: ISPContentType[]) => PromiseLike | ISPContentType[]; +} + +/** + * Private properties of the PropertyFieldContentTypePicker custom field. + * We separate public & private properties to include onRender & onDispose method waited + * by the PropertyFieldCustom, without asking to the developer to add it when he's using + * the PropertyFieldContentTypePicker. + */ +export interface IPropertyFieldContentTypePickerPropsInternal extends IPropertyFieldContentTypePickerProps, IPropertyPaneCustomFieldProps { + context: BaseComponentContext; + deferredValidationTime?: number; + disabled?: boolean; + filter?: string; + orderBy?: PropertyFieldContentTypeOrderBy; + key: string; + label: string; + listId?: string; + properties: any; // eslint-disable-line @typescript-eslint/no-explicit-any + selectedContentType?: string; + targetProperty: string; + contentTypesToExclude?: string[]; + webAbsoluteUrl?: string; + onGetErrorMessage?: (value: string | string[]) => string | Promise; + onPropertyChange(propertyPath: string, oldValue: any, newValue: any): void; // eslint-disable-line @typescript-eslint/no-explicit-any + onContentTypesRetrieved?: (contentTypes: ISPContentType[]) => PromiseLike | ISPContentType[]; +} diff --git a/src/propertyFields/contentTypePicker/IPropertyFieldContentTypePickerHost.ts b/src/propertyFields/contentTypePicker/IPropertyFieldContentTypePickerHost.ts new file mode 100644 index 00000000..e2e45b3a --- /dev/null +++ b/src/propertyFields/contentTypePicker/IPropertyFieldContentTypePickerHost.ts @@ -0,0 +1,19 @@ +import { IPropertyFieldContentTypePickerPropsInternal } from './IPropertyFieldContentTypePicker'; +import { IDropdownOption } from '@fluentui/react/lib/Dropdown'; + +/** + * PropertyFieldContentTypePickerHost properties interface + */ +export interface IPropertyFieldContentTypePickerHostProps extends IPropertyFieldContentTypePickerPropsInternal { + onChange: (targetProperty?: string, newValue?: any) => void; // eslint-disable-line @typescript-eslint/no-explicit-any +} + +/** + * PropertyFieldContentTypePickerHost state interface + */ +export interface IPropertyFieldContentTypePickerHostState { + + results: IDropdownOption[]; + selectedKey?: string; + errorMessage?: string; +} diff --git a/src/propertyFields/contentTypePicker/ISPContentType.ts b/src/propertyFields/contentTypePicker/ISPContentType.ts new file mode 100644 index 00000000..d997976c --- /dev/null +++ b/src/propertyFields/contentTypePicker/ISPContentType.ts @@ -0,0 +1,6 @@ +export interface ISPContentType { + Id: { + StringValue: string; + }; + Name: string; +} diff --git a/src/propertyFields/contentTypePicker/ISPContentTypes.ts b/src/propertyFields/contentTypePicker/ISPContentTypes.ts new file mode 100644 index 00000000..861a4edb --- /dev/null +++ b/src/propertyFields/contentTypePicker/ISPContentTypes.ts @@ -0,0 +1,9 @@ +import { ISPContentType } from "."; + +/** + * Defines a collection of SharePoint list ContentTypes + */ +export interface ISPContentTypes { + + value: ISPContentType[]; +} diff --git a/src/propertyFields/contentTypePicker/PropertyFieldContentTypePicker.ts b/src/propertyFields/contentTypePicker/PropertyFieldContentTypePicker.ts new file mode 100644 index 00000000..b0447d0e --- /dev/null +++ b/src/propertyFields/contentTypePicker/PropertyFieldContentTypePicker.ts @@ -0,0 +1,145 @@ +import * as React from 'react'; +import * as ReactDom from 'react-dom'; +import { + IPropertyPaneField, + PropertyPaneFieldType +} from '@microsoft/sp-property-pane'; +import { BaseComponentContext } from '@microsoft/sp-component-base'; +import PropertyFieldContentTypePickerHost from './PropertyFieldContentTypePickerHost'; +import { IPropertyFieldContentTypePickerHostProps } from './IPropertyFieldContentTypePickerHost'; +import { PropertyFieldContentTypeOrderBy, IPropertyFieldContentTypePickerProps, IPropertyFieldContentTypePickerPropsInternal } from './IPropertyFieldContentTypePicker'; +import { ISPContentType } from '.'; + +/** + * Represents a PropertyFieldContentTypePicker object + */ +class PropertyFieldContentTypePickerBuilder implements IPropertyPaneField { + + //Properties defined by IPropertyPaneField + public properties: IPropertyFieldContentTypePickerPropsInternal; + public targetProperty: string; + public type: PropertyPaneFieldType = PropertyPaneFieldType.Custom; + + //Custom properties label: string; + private context: BaseComponentContext; + private label: string; + private listId?: string; + private selectedContentType: string; + private orderBy: PropertyFieldContentTypeOrderBy; + private contentTypesToExclude: string[]; + + private customProperties: any; // eslint-disable-line @typescript-eslint/no-explicit-any + private deferredValidationTime: number = 200; + private disabled: boolean = false; + private disableReactivePropertyChanges: boolean = false; + private filter: string; + private key: string; + private webAbsoluteUrl?: string; + private onGetErrorMessage: (value: string) => string | Promise; + private onContentTypesRetrieved?: (contentTypes: ISPContentType[]) => PromiseLike | ISPContentType[]; + public onPropertyChange(propertyPath: string, oldValue: any, newValue: any): void { /* no-op; */ } // eslint-disable-line @typescript-eslint/no-explicit-any + private renderWebPart: () => void; + + /** + * Constructor method + */ + public constructor(_targetProperty: string, _properties: IPropertyFieldContentTypePickerPropsInternal) { + this.render = this.render.bind(this); + this.targetProperty = _targetProperty; + this.properties = _properties; + this.properties.onDispose = this.dispose; + this.properties.onRender = this.render; + this.label = _properties.label; + this.context = _properties.context; + this.webAbsoluteUrl = _properties.webAbsoluteUrl; + this.listId = _properties.listId; + this.selectedContentType = _properties.selectedContentType; + this.onPropertyChange = _properties.onPropertyChange; + this.customProperties = _properties.properties; + this.key = _properties.key; + this.orderBy = _properties.orderBy; + this.contentTypesToExclude = _properties.contentTypesToExclude; + this.filter = _properties.filter; + this.onGetErrorMessage = _properties.onGetErrorMessage; + this.onContentTypesRetrieved = _properties.onContentTypesRetrieved; + + if (_properties.disabled === true) { + this.disabled = _properties.disabled; + } + if (_properties.deferredValidationTime) { + this.deferredValidationTime = _properties.deferredValidationTime; + } + } + + /** + * Renders the SPContentTypePicker field content + */ + private render(elem: HTMLElement, ctx?: any, changeCallback?: (targetProperty?: string, newValue?: any) => void): void { // eslint-disable-line @typescript-eslint/no-explicit-any + const componentProps: IPropertyFieldContentTypePickerHostProps = { + label: this.label, + targetProperty: this.targetProperty, + context: this.context, + webAbsoluteUrl: this.webAbsoluteUrl, + listId: this.listId, + orderBy: this.orderBy, + onDispose: this.dispose, + onRender: this.render, + onChange: changeCallback, + onPropertyChange: this.onPropertyChange, + properties: this.customProperties, + key: this.key, + disabled: this.disabled, + onGetErrorMessage: this.onGetErrorMessage, + deferredValidationTime: this.deferredValidationTime, + contentTypesToExclude: this.contentTypesToExclude, + filter: this.filter, + onContentTypesRetrieved: this.onContentTypesRetrieved + }; + + // Single selector + componentProps.selectedContentType = this.selectedContentType; + const element: React.ReactElement = React.createElement(PropertyFieldContentTypePickerHost, componentProps); + // Calls the REACT content generator + ReactDom.render(element, elem); + } + + /** + * Disposes the current object + */ + private dispose(_elem: HTMLElement): void { + // no-op; + } + +} + +/** + * Helper method to create a SPContentType Picker on the PropertyPane. + * @param targetProperty - Target property the SharePoint ContentType picker is associated to. + * @param properties - Strongly typed SPContentType Picker properties. + */ +export function PropertyFieldContentTypePicker(targetProperty: string, properties: IPropertyFieldContentTypePickerProps): IPropertyPaneField { + + //Create an internal properties object from the given properties + const newProperties: IPropertyFieldContentTypePickerPropsInternal = { + label: properties.label, + targetProperty: targetProperty, + context: properties.context, + listId: properties.listId, + selectedContentType: typeof properties.selectedContentType === 'string' ? properties.selectedContentType : null, + onPropertyChange: properties.onPropertyChange, + properties: properties.properties, + onDispose: null, + onRender: null, + key: properties.key, + disabled: properties.disabled, + contentTypesToExclude: properties.contentTypesToExclude, + webAbsoluteUrl: properties.webAbsoluteUrl, + filter: properties.filter, + onGetErrorMessage: properties.onGetErrorMessage, + deferredValidationTime: properties.deferredValidationTime, + onContentTypesRetrieved: properties.onContentTypesRetrieved + }; + //Calls the PropertyFieldContentTypePicker builder object + //This object will simulate a PropertyFieldCustom to manage his rendering process + return new PropertyFieldContentTypePickerBuilder(targetProperty, newProperties); +} diff --git a/src/propertyFields/contentTypePicker/PropertyFieldContentTypePickerHost.tsx b/src/propertyFields/contentTypePicker/PropertyFieldContentTypePickerHost.tsx new file mode 100644 index 00000000..f68ab807 --- /dev/null +++ b/src/propertyFields/contentTypePicker/PropertyFieldContentTypePickerHost.tsx @@ -0,0 +1,216 @@ +import * as React from 'react'; +import { Dropdown, IDropdownOption } from '@fluentui/react/lib/Dropdown'; +import { Async } from '@fluentui/react/lib/Utilities'; +import { Label } from '@fluentui/react/lib/Label'; +import { IPropertyFieldContentTypePickerHostProps, IPropertyFieldContentTypePickerHostState } from './IPropertyFieldContentTypePickerHost'; +import { SPContentTypePickerService } from '../../services/SPContentTypePickerService'; +import FieldErrorMessage from '../errorMessage/FieldErrorMessage'; +import { ISPContentType } from '.'; +import { ISPContentTypes } from './ISPContentTypes'; +import * as telemetry from '../../common/telemetry'; +import { setPropertyValue } from '../../helpers/GeneralHelper'; + +// Empty contentType value +const EMPTY_CONTENT_TYPE_KEY = 'NO_CONTENT_TYPE_SELECTED'; + +/** + * Renders the controls for PropertyFieldContentTypePicker component + */ +export default class PropertyFieldContentTypePickerHost extends React.Component { + private options: IDropdownOption[] = []; + private selectedKey: string; + private latestValidateValue: string; + private async: Async; + private delayedValidate: (value: string) => void; + + /** + * Constructor method + */ + constructor(props: IPropertyFieldContentTypePickerHostProps) { + super(props); + + telemetry.track('PropertyFieldContentTypePicker', { + disabled: props.disabled + }); + + this.state = { + results: this.options, + errorMessage: '' + }; + + this.async = new Async(this); + this.validate = this.validate.bind(this); + this.onChanged = this.onChanged.bind(this); + this.notifyAfterValidate = this.notifyAfterValidate.bind(this); + this.delayedValidate = this.async.debounce(this.validate, this.props.deferredValidationTime); + } + + public componentDidMount(): void { + // Start retrieving the content types + this.loadContentTypes(); + } + + public componentDidUpdate(prevProps: IPropertyFieldContentTypePickerHostProps, _prevState: IPropertyFieldContentTypePickerHostState): void { + if (this.props.listId !== prevProps.listId || this.props.webAbsoluteUrl !== prevProps.webAbsoluteUrl) { + this.loadContentTypes(); + } + } + + /** + * Loads the loadContentTypes from a selected SharePoint list or SharePoint site + */ + private loadContentTypes(): void { + const contentTypeService: SPContentTypePickerService = new SPContentTypePickerService(this.props, this.props.context); + const contentTypesToExclude: string[] = this.props.contentTypesToExclude || []; + this.options = []; + contentTypeService.getContentTypes().then((response: ISPContentTypes) => { + console.log(response); + // Start mapping the contentTypes that are selected + response.value.forEach((contentType: ISPContentType) => { + if (this.props.selectedContentType === contentType.Id.StringValue) { + this.selectedKey = contentType.Id.StringValue; + } + + // Make sure that the current contentType is NOT in the 'contentTypesToExclude' array + if (contentTypesToExclude.indexOf(contentType.Name) === -1 && contentTypesToExclude.indexOf(contentType.Id.StringValue) === -1) { + this.options.push({ + key: contentType.Id.StringValue, + text: contentType.Name + }); + } + }); + + // Option to unselect the contentType + this.options.unshift({ + key: EMPTY_CONTENT_TYPE_KEY, + text: '' + }); + + // Update the current component state + this.setState({ + results: this.options, + selectedKey: this.selectedKey + }); + }).catch((error) => { + console.error('Error loading content types:', error); + // Handle the error appropriately, e.g., display an error message to the user + this.setState({ + errorMessage: 'Error : List does not exist.\n\nThe page you selected contains a list that does not exist. It may have been deleted by another user.' + }); + }); + } + + + /** + * Raises when a contentType has been selected + */ + + private onChanged(element: React.FormEvent, option?: IDropdownOption, index?: number): void { + const newValue: string = option.key as string; + this.delayedValidate(newValue); + } + /** + * Validates the new custom field value + */ + private validate(value: string): void { + if (this.props.onGetErrorMessage === null || this.props.onGetErrorMessage === undefined) { + this.notifyAfterValidate(this.props.selectedContentType, value); + return; + } + + if (this.latestValidateValue === value) { + return; + } + + this.latestValidateValue = value; + + const errResult: string | Promise = this.props.onGetErrorMessage(value || ''); + if (typeof errResult !== 'undefined') { + if (typeof errResult === 'string') { + if (errResult === '') { + this.notifyAfterValidate(this.props.selectedContentType, value); + } + this.setState({ + errorMessage: errResult + }); + } else { + errResult.then((errorMessage: string) => { + if (!errorMessage) { + this.notifyAfterValidate(this.props.selectedContentType, value); + } + this.setState({ + errorMessage: errorMessage + }); + }).catch(() => { /* no-op; */ }); + } + } else { + this.notifyAfterValidate(this.props.selectedContentType, value); + } + } + + /** + * Notifies the parent Web Part of a property value change + */ + private notifyAfterValidate(oldValue: string, newValue: string): void { + // Check if the user wanted to unselect the contentType + const propValue = newValue === EMPTY_CONTENT_TYPE_KEY ? '' : newValue; + + // Deselect all options + this.options = this.state.results.map(option => { + if (option.selected) { + option.selected = false; + } + return option; + }); + // Set the current selected key + this.selectedKey = newValue; + // Update the state + this.setState({ + selectedKey: this.selectedKey, + results: this.options + }); + + if (this.props.onPropertyChange && propValue !== null) { + // Store the new property value + setPropertyValue(this.props.properties, this.props.targetProperty, propValue); + + // Trigger the default onPropertyChange event + this.props.onPropertyChange(this.props.targetProperty, oldValue, propValue); + + // Trigger the apply button + if (typeof this.props.onChange !== 'undefined' && this.props.onChange !== null) { + this.props.onChange(this.props.targetProperty, propValue); + } + } + } + + /** + * Called when the component will unmount + */ + public componentWillUnmount(): void { + if (typeof this.async !== 'undefined') { + this.async.dispose(); + } + } + + /** + * Renders the SPContentTypePicker controls with Office UI Fabric + */ + public render(): JSX.Element { + // Renders content + return ( +
+ {this.props.label && } + + + +
+ ); + } +} diff --git a/src/propertyFields/contentTypePicker/index.ts b/src/propertyFields/contentTypePicker/index.ts new file mode 100644 index 00000000..18b712d5 --- /dev/null +++ b/src/propertyFields/contentTypePicker/index.ts @@ -0,0 +1,6 @@ +export * from './PropertyFieldContentTypePicker'; +export * from './IPropertyFieldContentTypePicker'; +export * from './PropertyFieldContentTypePickerHost'; +export * from './IPropertyFieldContentTypePickerHost'; +export * from './ISPContentType'; +export * from './ISPContentTypes'; diff --git a/src/propertyFields/filePicker/PropertyFieldFilePickerHost.module.scss b/src/propertyFields/filePicker/PropertyFieldFilePickerHost.module.scss index c6b09c9b..d0043ff4 100644 --- a/src/propertyFields/filePicker/PropertyFieldFilePickerHost.module.scss +++ b/src/propertyFields/filePicker/PropertyFieldFilePickerHost.module.scss @@ -1,11 +1,16 @@ .filePreview { - margin-bottom: 20px; + margin-bottom: 20px; +} + + .filePreviewDelete { + display: flex; + align-items: center; + padding-top: 4px; } - + .filePreviewImage { display: block; max-width: 100%; max-height: 220px; image-orientation: from-image; } - \ No newline at end of file diff --git a/src/propertyFields/filePicker/PropertyFieldFilePickerHost.tsx b/src/propertyFields/filePicker/PropertyFieldFilePickerHost.tsx index dd48d7f3..50afbe27 100644 --- a/src/propertyFields/filePicker/PropertyFieldFilePickerHost.tsx +++ b/src/propertyFields/filePicker/PropertyFieldFilePickerHost.tsx @@ -1,4 +1,8 @@ import * as React from 'react'; + +import { IconButton } from "@fluentui/react/lib/components/Button"; +import * as strings from 'PropertyControlStrings'; + import { FilePicker, IFilePickerResult } from './filePickerControls'; import styles from './PropertyFieldFilePickerHost.module.scss'; import { IPropertyFieldFilePickerHostProps } from './IPropertyFieldFilePickerHost'; @@ -25,7 +29,13 @@ export default class PropertyFieldFilePickerHost extends React.Component } -
+
+ { this.handleFileSave(null).then(() => { /* no-op; */ }).catch(() => { /* no-op; */ }); }} + disabled={this.props.disabled} /> {this.props.filePickerResult.fileName}
diff --git a/src/propertyFields/folderPicker/IPropertyFieldFolderPicker.ts b/src/propertyFields/folderPicker/IPropertyFieldFolderPicker.ts index 895a65e5..10199b4f 100644 --- a/src/propertyFields/folderPicker/IPropertyFieldFolderPicker.ts +++ b/src/propertyFields/folderPicker/IPropertyFieldFolderPicker.ts @@ -2,9 +2,13 @@ import { BaseComponentContext } from '@microsoft/sp-component-base'; import { IFolder } from '../../services/IFolderExplorerService'; export interface IPropertyFieldFolderPickerProps { - /** - * Current context - */ + /** +* Current context +*/ + siteAbsoluteUrl?: string; + /** + * Current context + */ context: BaseComponentContext; /** @@ -63,10 +67,10 @@ export interface IPropertyFieldFolderPickerProps { */ key: string; - } +} - export interface IPropertyFieldFolderPickerPropsInternal extends IPropertyFieldFolderPickerProps { - targetProperty: string; - onRender(elem: HTMLElement): void; - onDispose(elem: HTMLElement): void; - } +export interface IPropertyFieldFolderPickerPropsInternal extends IPropertyFieldFolderPickerProps { + targetProperty: string; + onRender(elem: HTMLElement): void; + onDispose(elem: HTMLElement): void; +} diff --git a/src/propertyFields/folderPicker/PropertyFieldFolderPicker.ts b/src/propertyFields/folderPicker/PropertyFieldFolderPicker.ts index f8357ff9..d65cacfe 100644 --- a/src/propertyFields/folderPicker/PropertyFieldFolderPicker.ts +++ b/src/propertyFields/folderPicker/PropertyFieldFolderPicker.ts @@ -24,6 +24,8 @@ class PropertyFieldFolderPickerBuilder implements IPropertyPaneField void): void { // eslint-disable-line @typescript-eslint/no-explicit-any const element: React.ReactElement = React.createElement(PropertyFieldFolderPickerHost, { - label: this.label, - targetProperty: this.targetProperty, - context: this.context, - rootFolder: this.rootFolder, - defaultFolder: this.defaultFolder, - onSelect: this.onSelect, - required: this.required, - canCreateFolders: this.canCreateFolders, - onDispose: this.dispose, - onRender: this.render, - onChange: changeCallback, - onPropertyChange: this.onPropertyChange, - properties: this.customProperties, - key: this.key, - disabled: this.disabled, - selectedFolder: this.selectedFolder + label: this.label, + targetProperty: this.targetProperty, + context: this.context, + rootFolder: this.rootFolder, + defaultFolder: this.defaultFolder, + onSelect: this.onSelect, + required: this.required, + canCreateFolders: this.canCreateFolders, + onDispose: this.dispose, + onRender: this.render, + onChange: changeCallback, + onPropertyChange: this.onPropertyChange, + properties: this.customProperties, + key: this.key, + disabled: this.disabled, + selectedFolder: this.selectedFolder, + siteAbsoluteUrl: this.siteAbsoluteUrl }); - // Calls the REACT content generator - ReactDom.render(element, elem); + // Calls the REACT content generator + ReactDom.render(element, elem); } /** @@ -135,7 +139,8 @@ export function PropertyFieldFolderPicker(targetProperty: string, properties: IP canCreateFolders: properties.canCreateFolders, defaultFolder: properties.defaultFolder, required: properties.required, - selectedFolder: properties.selectedFolder + selectedFolder: properties.selectedFolder, + siteAbsoluteUrl: properties.siteAbsoluteUrl }; //Calls the PropertyFieldFolderPickerPicker builder object //This object will simulate a PropertyFieldCustom to manage his rendering process diff --git a/src/propertyFields/folderPicker/PropertyFieldFolderPickerHost.tsx b/src/propertyFields/folderPicker/PropertyFieldFolderPickerHost.tsx index 1c43726d..5843e569 100644 --- a/src/propertyFields/folderPicker/PropertyFieldFolderPickerHost.tsx +++ b/src/propertyFields/folderPicker/PropertyFieldFolderPickerHost.tsx @@ -34,7 +34,7 @@ export default class PropertyFieldFolderPickerHost extends React.Component diff --git a/src/propertyFields/peoplePicker/PropertyFieldPeoplePicker.ts b/src/propertyFields/peoplePicker/PropertyFieldPeoplePicker.ts index 741f0132..fd2157b5 100644 --- a/src/propertyFields/peoplePicker/PropertyFieldPeoplePicker.ts +++ b/src/propertyFields/peoplePicker/PropertyFieldPeoplePicker.ts @@ -1,13 +1,22 @@ import * as React from 'react'; import * as ReactDom from 'react-dom'; + +import { BaseComponentContext } from '@microsoft/sp-component-base'; import { IPropertyPaneField, - PropertyPaneFieldType + PropertyPaneFieldType, } from '@microsoft/sp-property-pane'; + +import { + IPropertyFieldGroupOrPerson, + IPropertyFieldPeoplePickerProps, + IPropertyFieldPeoplePickerPropsInternal, + PrincipalType, +} from './IPropertyFieldPeoplePicker'; +import { + IPropertyFieldPeoplePickerHostProps, +} from './IPropertyFieldPeoplePickerHost'; import PropertyFieldPeoplePickerHost from './PropertyFieldPeoplePickerHost'; -import { IPropertyFieldPeoplePickerHostProps } from './IPropertyFieldPeoplePickerHost'; -import { BaseComponentContext } from '@microsoft/sp-component-base'; -import { IPropertyFieldGroupOrPerson, IPropertyFieldPeoplePickerProps, IPropertyFieldPeoplePickerPropsInternal, PrincipalType } from './IPropertyFieldPeoplePicker'; /** * Represents a PropertyFieldPeoplePicker object diff --git a/src/propertyFields/propertyFieldButton/IPropertyFieldButtonControl.ts b/src/propertyFields/propertyFieldButton/IPropertyFieldButtonControl.ts new file mode 100644 index 00000000..84c7d6c0 --- /dev/null +++ b/src/propertyFields/propertyFieldButton/IPropertyFieldButtonControl.ts @@ -0,0 +1,18 @@ +import { IButtonStyles } from '@fluentui/react/lib/Button'; +/* eslint-disable @typescript-eslint/no-explicit-any */ +import { IIconProps } from '@fluentui/react/lib/Icon'; + +export interface IPropertyFieldButtonControlProps { + key: string; + disabled?: boolean; + styles?: IButtonStyles; + className?: string; + isVisible: boolean; + isPrimary?: boolean; + text?:string; + iconProps? : IIconProps; + onClick: (e: any) => void; + +} + +export interface IPropertyFieldButtonControlState extends IPropertyFieldButtonControlProps{} diff --git a/src/propertyFields/propertyFieldButton/IPropertyFieldButtonProps.ts b/src/propertyFields/propertyFieldButton/IPropertyFieldButtonProps.ts new file mode 100644 index 00000000..8f38267c --- /dev/null +++ b/src/propertyFields/propertyFieldButton/IPropertyFieldButtonProps.ts @@ -0,0 +1,18 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ +import { IButtonStyles } from '@fluentui/react/lib/Button'; +import { IIconProps } from '@fluentui/react/lib/Icon'; +import { IPropertyPaneCustomFieldProps } from '@microsoft/sp-property-pane'; + +export interface IPropertyFieldButtonProps { + key: string; + disabled?: boolean; + styles?: IButtonStyles; + className?: string; + isVisible: boolean; + isPrimary?: boolean; + text?:string; + onClick: ( e: any ) => void; + iconProps? : IIconProps; +} + +export interface IPropertyFieldButtonPropsInternal extends IPropertyFieldButtonProps , IPropertyPaneCustomFieldProps{} diff --git a/src/propertyFields/propertyFieldButton/PropertyFieldButton.ts b/src/propertyFields/propertyFieldButton/PropertyFieldButton.ts new file mode 100644 index 00000000..6e00cac7 --- /dev/null +++ b/src/propertyFields/propertyFieldButton/PropertyFieldButton.ts @@ -0,0 +1,65 @@ +import * as React from 'react'; +import * as ReactDOM from 'react-dom'; + +import { + IPropertyPaneField, + PropertyPaneFieldType, +} from '@microsoft/sp-property-pane'; + +import { + IPropertyFieldButtonProps, + IPropertyFieldButtonPropsInternal, +} from './IPropertyFieldButtonProps'; +import PropertyFieldButtonControl from './PropertyFieldButtonControl'; + +class PropertyFieldButtonBuilder implements IPropertyPaneField { + public targetProperty: string; + public type: PropertyPaneFieldType = PropertyPaneFieldType.Custom; + public properties: IPropertyFieldButtonPropsInternal; + + + private _onChangeCallback: (targetProperty?: string, newValue?: any) => void; // eslint-disable-line @typescript-eslint/no-explicit-any + + public constructor(_targetProperty: string, _properties: IPropertyFieldButtonPropsInternal) { + this.targetProperty = _targetProperty; + this.properties = _properties; + + this.properties.onRender = this._render.bind(this); + this.properties.onDispose = this._dispose.bind(this); + } + + private _render(elem: HTMLElement, context?: any, changeCallback?: (targetProperty?: string, newValue?: any) => void): void { // eslint-disable-line @typescript-eslint/no-explicit-any + + const props: IPropertyFieldButtonProps = this.properties; + + const element = React.createElement(PropertyFieldButtonControl, { + ...props + + }); + + ReactDOM.render(element, elem); + + if (changeCallback) { + this._onChangeCallback = changeCallback; + } + } + + private _dispose(elem: HTMLElement): void { + ReactDOM.unmountComponentAtNode(elem); + } + + private _onChange(value: string): void { + if (this._onChangeCallback) { + this._onChangeCallback(this.targetProperty, value); + } + } + +} + +export function PropertyFieldButton(targetProperty: string, properties: IPropertyFieldButtonProps): IPropertyPaneField { + return new PropertyFieldButtonBuilder(targetProperty, { + ...properties, + onRender: null, + onDispose: null + }); +} diff --git a/src/propertyFields/propertyFieldButton/PropertyFieldButtonControl.tsx b/src/propertyFields/propertyFieldButton/PropertyFieldButtonControl.tsx new file mode 100644 index 00000000..2d432b82 --- /dev/null +++ b/src/propertyFields/propertyFieldButton/PropertyFieldButtonControl.tsx @@ -0,0 +1,96 @@ +import * as React from 'react'; + +import { + DefaultButton, + PrimaryButton, +} from '@fluentui/react/lib/Button'; + +import { + IPropertyFieldButtonControlProps, + IPropertyFieldButtonControlState, +} from './IPropertyFieldButtonControl'; + +//import styles from './Component.module.scss'; + +export default class PropertyFieldButtonControl extends React.Component< + IPropertyFieldButtonControlProps, + IPropertyFieldButtonControlState +> { + constructor(props: IPropertyFieldButtonControlProps) { + super(props); + this.state = { + isVisible: this.props.isVisible, + disabled: this.props.disabled, + isPrimary: this.props.isPrimary, + text: this.props.text, + iconProps: this.props.iconProps, + onClick: this.props.onClick, + key: this.props.key, + }; + } + /// + public componentDidUpdate( + prevProps: IPropertyFieldButtonControlProps, + prevState: IPropertyFieldButtonControlState + ): void { + if ( + prevProps.isVisible !== this.props.isVisible || + prevProps.disabled !== this.props.disabled || + prevProps.isPrimary !== this.props.isPrimary || + prevProps.className !== this.props.className || + prevProps.styles !== this.props.styles || + prevProps.text !== this.props.text || + prevProps.iconProps !== this.props.iconProps || + prevProps.onClick !== this.props.onClick || + prevProps.key !== this.props.key + + + ) { + this.setState({ + isVisible: this.props.isVisible, + disabled: this.props.disabled, + isPrimary: this.props.isPrimary, + className: this.props.className, + styles: this.props.styles, + text: this.props.text, + iconProps: this.props.iconProps, + onClick: this.props.onClick, + key: this.props.key, + }); + } + } + + + + public render(): React.ReactElement { + if (!this.props.isVisible) { + return null; + } + return ( +
+ {this.props.isPrimary ? ( + + ) : ( + + )} +
+ ); + } +} + diff --git a/src/propertyFields/propertyFieldButton/index.ts b/src/propertyFields/propertyFieldButton/index.ts new file mode 100644 index 00000000..dfbae74a --- /dev/null +++ b/src/propertyFields/propertyFieldButton/index.ts @@ -0,0 +1,4 @@ +export * from './IPropertyFieldButtonControl'; +export * from './IPropertyFieldButtonProps'; +export * from './PropertyFieldButton'; +export * from './PropertyFieldButtonControl'; diff --git a/src/propertyFields/propertyFieldGrid/IPropertyFieldGridControlProps.ts b/src/propertyFields/propertyFieldGrid/IPropertyFieldGridControlProps.ts new file mode 100644 index 00000000..e4c34542 --- /dev/null +++ b/src/propertyFields/propertyFieldGrid/IPropertyFieldGridControlProps.ts @@ -0,0 +1,21 @@ +import { IItem } from './grid/IItem'; + +export interface IPropertyFieldGridControlProps { + key: string; + styles?: React.CSSProperties; + className?: string; + isVisible?: boolean; + items: IItem[]; + label?: string; + defaultSelectedItems?: IItem[]; + onSelected? : (items:IItem[])=>void; + maxHeight?: number; + multiSelect?: boolean; + column1Label?: string; + column2Label?: string; +} +export interface IPropertyFieldGridControlState { + defaultSelectedItems?: IItem[]; + items: IItem[]; + selectedItems: IItem[]; +} diff --git a/src/propertyFields/propertyFieldGrid/IPropertyFieldGridProps.ts b/src/propertyFields/propertyFieldGrid/IPropertyFieldGridProps.ts new file mode 100644 index 00000000..7b761c6b --- /dev/null +++ b/src/propertyFields/propertyFieldGrid/IPropertyFieldGridProps.ts @@ -0,0 +1,30 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ + +import { IPropertyPaneCustomFieldProps } from '@microsoft/sp-property-pane'; + +import { IItem } from './grid/IItem'; + +export interface IPropertyFieldGridProps { + key: string; + styles?: React.CSSProperties; + className?: string; + isVisible?: boolean; + items: IItem[]; + label?: string; + onPropertyChange?: (propertyPath: string,oldValue:any ,newValue: any) => void; + onSelected?: (items:IItem[])=>void; + defaultSelectedItems?: IItem[]; + selectedItems?: IItem[]; + maxHeight?: number; + multiSelect?: boolean; + column1Label?: string; + column2Label?: string; + +} + +export interface IPropertyFieldGridPropsInternal extends IPropertyFieldGridProps, IPropertyPaneCustomFieldProps { + + onRender(elem: HTMLElement): void; + onDispose(elem: HTMLElement): void; + +} diff --git a/src/propertyFields/propertyFieldGrid/PropertyFieldGrid.ts b/src/propertyFields/propertyFieldGrid/PropertyFieldGrid.ts new file mode 100644 index 00000000..43e08c8f --- /dev/null +++ b/src/propertyFields/propertyFieldGrid/PropertyFieldGrid.ts @@ -0,0 +1,75 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ +import * as React from 'react'; +import * as ReactDOM from 'react-dom'; + +import { + IPropertyPaneField, + PropertyPaneFieldType, +} from '@microsoft/sp-property-pane'; + +import { IItem } from './grid/IItem'; +import { + IPropertyFieldGridProps, + IPropertyFieldGridPropsInternal, +} from './IPropertyFieldGridProps'; +import PropertyFieldGridControl from './PropertyFieldGridControl'; + +class PropertyFieldGridBuilder implements IPropertyPaneField { + public targetProperty: any; + public type: PropertyPaneFieldType = PropertyPaneFieldType.Custom; + public properties: IPropertyFieldGridPropsInternal; + private _onChangeCallback: (targetProperty?: string, newValue?: any) => void; + + + public constructor(targetProperty: string, properties: IPropertyFieldGridPropsInternal) { + this.targetProperty = targetProperty; + this.properties = properties; + this.properties.onRender = this.render.bind(this); + this.properties.onDispose = this._dispose.bind(this); + } + + private render( + elem: HTMLElement, + context?: any, + changeCallback?: (targetProperty?: string, newValue?:any) => void + ): void { + // eslint-disable-line @typescript-eslint/no-explicit-any + + const props: IPropertyFieldGridProps = this.properties; + + const element = React.createElement(PropertyFieldGridControl, { + ...props, + onSelected: this.onSeleted.bind(this), + }); + + if (changeCallback) { + this._onChangeCallback = changeCallback; + } + + ReactDOM.render(element, elem); + } + + private onSeleted(items: IItem[]): void { + this.properties.onSelected(items); + + if (this._onChangeCallback) { + this._onChangeCallback(this.targetProperty, items); + } + this.targetProperty = items; + } + + private _dispose(elem: HTMLElement): void { + ReactDOM.unmountComponentAtNode(elem); + } +} + +export function PropertyFieldGrid( + targetProperty: string, + properties: IPropertyFieldGridProps +): IPropertyPaneField { + return new PropertyFieldGridBuilder(targetProperty, { + ...properties, + onRender: null, + onDispose: null, + }); +} diff --git a/src/propertyFields/propertyFieldGrid/PropertyFieldGridControl.tsx b/src/propertyFields/propertyFieldGrid/PropertyFieldGridControl.tsx new file mode 100644 index 00000000..d7dc09fa --- /dev/null +++ b/src/propertyFields/propertyFieldGrid/PropertyFieldGridControl.tsx @@ -0,0 +1,83 @@ +import * as React from 'react'; + +import { + FluentProvider, + IdPrefixProvider, + Subtitle2, + teamsLightTheme, +} from '@fluentui/react-components'; + +import { Grid } from './grid/Grid'; +import { + IPropertyFieldGridControlProps, + IPropertyFieldGridControlState, +} from './IPropertyFieldGridControlProps'; + +export default class PropertyFieldButtonControl extends React.Component< + IPropertyFieldGridControlProps, + IPropertyFieldGridControlState +> { + constructor(props: IPropertyFieldGridControlProps) { + super(props); + this.state = { + ...props, + selectedItems: this.props.defaultSelectedItems, + }; + } + /// + public componentDidUpdate( + prevProps: IPropertyFieldGridControlProps, + prevState: IPropertyFieldGridControlState + ): void { + if ( + prevProps.isVisible !== this.props.isVisible || + prevProps.items !== this.props.items || + prevProps.className !== this.props.className || + prevProps.styles !== this.props.styles || + prevProps.label !== this.props.label || + prevProps.defaultSelectedItems !== this.props.defaultSelectedItems || + prevProps.key !== this.props.key || + prevProps.maxHeight !== this.props.maxHeight || + prevProps.multiSelect !== this.props.multiSelect + ) { + this.setState({ + items: this.props.items, + defaultSelectedItems: this.props.defaultSelectedItems, + }); + } + } + + public render(): React.ReactElement { + if (this.props.isVisible === false) { + return null; + } + const containerStyles: React.CSSProperties = { + display: "flex", + flexDirection: "column", + gap: 15, + maxHeight: this.props.maxHeight ?? 400, + height: "100%", + overflowY: "auto", + marginTop: 20, + marginBottom: 20, + ...this.props.styles, + }; + return ( + + +
+ {this.props.label} + +
+
+
+ ); + } +} diff --git a/src/propertyFields/propertyFieldGrid/grid/Grid.tsx b/src/propertyFields/propertyFieldGrid/grid/Grid.tsx new file mode 100644 index 00000000..fb1e87b9 --- /dev/null +++ b/src/propertyFields/propertyFieldGrid/grid/Grid.tsx @@ -0,0 +1,161 @@ +/* eslint-disable no-prototype-builtins */ +/* eslint-disable no-unused-expressions */ +import * as React from 'react'; + +import strings from 'PropertyControlStrings'; + +import { FontIcon } from '@fluentui/react'; +import { + Body1Strong, + createTableColumn, + DataGrid, + DataGridBody, + DataGridCell, + DataGridHeader, + DataGridHeaderCell, + DataGridProps, + DataGridRow, + TableCellLayout, + TableColumnDefinition, + TableRowId, +} from '@fluentui/react-components'; + +import { IItem } from './IItem'; + +export interface IGridProps { + items: IItem[]; + onSelected: (items: IItem[]) => void; + defaultSelectedItems?: IItem[]; + multiSelect?: boolean; + column1Label?: string; + column2Label?: string; +} + +const columnSizingOptions = { + title: { + minWidth: 40, + defaultWidth: 80, + }, + description: { + defaultWidth: 80, + minWidth: 60, + idealWidth: 80, + }, +}; + +export const Grid: React.FunctionComponent = (props: React.PropsWithChildren) => { + const { items, onSelected, defaultSelectedItems, multiSelect, column1Label, column2Label } = props; + +const selectionMode = React.useMemo(() => multiSelect ? "multiselect" : "single" ?? "single", [multiSelect]); + + const [selectedRows, setSelectedRows] = React.useState(() => { + if (defaultSelectedItems) { + const set = new Set(); + for (const item of defaultSelectedItems) { + const index = items.findIndex((i) => i.key === item.key); + if (index > -1) { + set.add(index); + } + } + return set; + } + return new Set([]); + }); + + const columns: TableColumnDefinition[] = [ + createTableColumn({ + columnId: "title", + compare: (a, b) => { + if (typeof a.title === "string" && typeof b.title === "string") { + return a.title.localeCompare(b.title); + } + return 0; + }, + renderHeaderCell: () => { + return {column1Label ?? strings.gridControlColumn1Label}; + }, + renderCell: (item) => { + return ( + } + > + {item.title} + + ); + }, + }), + createTableColumn({ + columnId: "description", + compare: (a, b) => { + if (typeof a.description === "string" && typeof b.description === "string") { + return a.description.localeCompare(b.description); + } + return 0; + }, + renderHeaderCell: () => { + return {column2Label ?? strings.gridControlColumn2Label} ; + }, + renderCell: (item) => { + return ( + + {React.isValidElement(item.description) ? item.description : item.description} + + ); + }, + }), + ]; + + const onSelectionChange: DataGridProps["onSelectionChange"] = React.useCallback( + (e, data) => { + const entries = data.selectedItems.entries(); + // select all entries in the map + const itemsSelected: IItem[] = []; + const toArray = Array.from(entries); + for (const item of toArray) { + const rowId = item[0]; + const itemSelected = items[rowId]; + // code to be executed for each itemSelected + itemsSelected.push(itemSelected); + } + onSelected(itemsSelected); + setSelectedRows(data.selectedItems); + }, + [onSelected, items] + ); + + const [sortState, setSortState] = React.useState>[1]>({ + sortColumn: "title", + sortDirection: "ascending", + }); + const onSortChange: DataGridProps["onSortChange"] = (e, nextSortState) => { + setSortState(nextSortState); + }; + + return ( + + + + {({ renderHeaderCell }) => {renderHeaderCell()}} + + + > + {({ item, rowId }) => ( + key={rowId} selectionCell={{ radioIndicator: { "aria-label": "Select row" } }}> + {({ renderCell }) => {renderCell(item)}} + + )} + + + ); +}; diff --git a/src/propertyFields/propertyFieldGrid/grid/IItem.ts b/src/propertyFields/propertyFieldGrid/grid/IItem.ts new file mode 100644 index 00000000..d9c5c5d8 --- /dev/null +++ b/src/propertyFields/propertyFieldGrid/grid/IItem.ts @@ -0,0 +1,6 @@ +export interface IItem { + key:string; + icon: string | JSX.Element; + title: string | JSX.Element; + description: string | JSX.Element; + } \ No newline at end of file diff --git a/src/propertyFields/propertyFieldGrid/index.ts b/src/propertyFields/propertyFieldGrid/index.ts new file mode 100644 index 00000000..95862cf8 --- /dev/null +++ b/src/propertyFields/propertyFieldGrid/index.ts @@ -0,0 +1,4 @@ +export * from './IPropertyFieldGridControlProps'; +export * from './IPropertyFieldGridProps'; +export * from './PropertyFieldGrid'; +export * from './PropertyFieldGridControl'; diff --git a/src/services/ISPContentTypePickerService.ts b/src/services/ISPContentTypePickerService.ts new file mode 100644 index 00000000..383ceab8 --- /dev/null +++ b/src/services/ISPContentTypePickerService.ts @@ -0,0 +1,6 @@ +import { ISPContentTypes } from "../propertyFields/contentTypePicker"; + +export interface ISPContentTypePickerService { + getContentTypes(): Promise; +} + diff --git a/src/services/OrgAssetsService.ts b/src/services/OrgAssetsService.ts index d207f6da..d5685d32 100644 --- a/src/services/OrgAssetsService.ts +++ b/src/services/OrgAssetsService.ts @@ -48,15 +48,20 @@ export class OrgAssetsService extends FileBrowserService { public getListItemsByListId = async (listId: string, folderPath: string, acceptedFilesExtensions?: string[], nextPageQueryStringParams?: string): Promise => { let filesQueryResult: FilesQueryResult = { items: [], nextHref: null }; try { + let orgAssetLibraryServerRelativeUrlWithoutTrailingSlash = this._orgAssetsLibraryServerRelativeSiteUrl; + if (orgAssetLibraryServerRelativeUrlWithoutTrailingSlash.charAt(orgAssetLibraryServerRelativeUrlWithoutTrailingSlash.length - 1) === '/') { + orgAssetLibraryServerRelativeUrlWithoutTrailingSlash = orgAssetLibraryServerRelativeUrlWithoutTrailingSlash.slice(0, -1); + } + // Retrieve Lib path from folder path if (folderPath.charAt(0) !== "/") { folderPath = `/${folderPath}`; } // Remove all the rest of the folder path - let libName = folderPath.replace(`${this._orgAssetsLibraryServerRelativeSiteUrl}/`, ""); - libName = libName.split("/")[0]; - // Buil absolute library URL - const libFullUrl = this.buildAbsoluteUrl(`${this._orgAssetsLibraryServerRelativeSiteUrl}/${libName}`); + let libName = folderPath.replace(`${orgAssetLibraryServerRelativeUrlWithoutTrailingSlash}/`, ""); + libName = libName.split("/")[0]; // Get only library name, if navigated to sub folder in the picker + // Build absolute library URL + const libFullUrl = this.buildAbsoluteUrl(`${orgAssetLibraryServerRelativeUrlWithoutTrailingSlash}/${libName}`); let queryStringParams: string = ""; // Do not pass FolderServerRelativeUrl as query parameter @@ -104,7 +109,7 @@ export class OrgAssetsService extends FileBrowserService { private _parseOrgAssetsLibraryItem = (libItem: any): ILibrary => { // eslint-disable-line @typescript-eslint/no-explicit-any const orgAssetsLibrary: ILibrary = { - absoluteUrl: this.buildAbsoluteUrl(libItem.LibraryUrl.DecodedUrl), + absoluteUrl: this.buildAbsoluteUrl(`/${libItem.LibraryUrl.DecodedUrl}`), title: libItem.DisplayName, id: libItem.ListId, serverRelativeUrl: libItem.LibraryUrl.DecodedUrl, diff --git a/src/services/SPContentTypePickerService.ts b/src/services/SPContentTypePickerService.ts new file mode 100644 index 00000000..f3893418 --- /dev/null +++ b/src/services/SPContentTypePickerService.ts @@ -0,0 +1,88 @@ +import { SPHttpClient } from '@microsoft/sp-http'; +import { BaseComponentContext } from '@microsoft/sp-component-base'; +import { ISPContentType, IPropertyFieldContentTypePickerHostProps, PropertyFieldContentTypeOrderBy } from '../propertyFields/contentTypePicker'; +import { ISPContentTypePickerService } from './ISPContentTypePickerService'; +import { ISPContentTypes } from '../propertyFields/contentTypePicker'; + +/** + * Service implementation to get Content Types from SharePoint site or selected SharePoint List + */ +export class SPContentTypePickerService implements ISPContentTypePickerService { + private context: BaseComponentContext; + private props: IPropertyFieldContentTypePickerHostProps; + + /** + * Service constructor + */ + constructor(_props: IPropertyFieldContentTypePickerHostProps, pageContext: BaseComponentContext) { + this.props = _props; + this.context = pageContext; + } + + /** + * Gets the collection of ContentTypes from SharePoint site or selected SharePoint List + */ + public async getContentTypes(): Promise { + if (this.context.pageContext.web.absoluteUrl === undefined || this.context.pageContext.web.absoluteUrl === "") { + return this.getEmptycontentTypes(); + } + + const webAbsoluteUrl = this.props.webAbsoluteUrl ? this.props.webAbsoluteUrl : this.context.pageContext.web.absoluteUrl; + + // If the listId is selected, then get the contentTypes from the list or get the contentTypes from site level + let queryUrl: string = this.props.listId ? `${webAbsoluteUrl}/_api/lists(guid'${this.props.listId}')/ContentTypes?$select=Name,Id` : `${webAbsoluteUrl}/_api/web/ContentTypes?$select=Name,Id`; + + // Check if the orderBy property is provided + if (this.props.orderBy !== null || this.props.orderBy !== undefined){ + queryUrl += '&$orderby='; + switch (this.props.orderBy) { + case PropertyFieldContentTypeOrderBy.Id: + queryUrl += 'Id'; + break; + case PropertyFieldContentTypeOrderBy.Name: + queryUrl += 'Name'; + break; + } + + // Adds an OData Filter to the list + if (this.props.filter) { + queryUrl += `&$filter=${encodeURIComponent(this.props.filter)}`; + } + + const response = await this.context.spHttpClient.get(queryUrl, SPHttpClient.configurations.v1); + const views = (await response.json()) as ISPContentTypes; + + // Check if onContentTypesRetrieved callback is defined + if (this.props.onContentTypesRetrieved) { + //Call onContentTypesRetrieved + const lr = this.props.onContentTypesRetrieved(views.value); + let output: ISPContentType[]; + + //Conditional checking to see of PromiseLike object or array + if (lr instanceof Array) { + output = lr; + } else { + output = await lr; + } + + views.value = output; + } + + return views; + } + } + + /** + * Returns an empty contentType for when no selection is done + */ + private getEmptycontentTypes(): Promise { + return new Promise((resolve) => { + const listData: ISPContentTypes = { + value: [ + ] + }; + + resolve(listData); + }); + } +} diff --git a/src/webparts/propertyControlsTest/IPropertyControlsTestWebPartProps.ts b/src/webparts/propertyControlsTest/IPropertyControlsTestWebPartProps.ts index 71d1b2dd..fbd56a87 100644 --- a/src/webparts/propertyControlsTest/IPropertyControlsTestWebPartProps.ts +++ b/src/webparts/propertyControlsTest/IPropertyControlsTestWebPartProps.ts @@ -8,6 +8,7 @@ import { IRoleDefinitionInformation, } from '../../PropertyFieldRoleDefinitionPicker'; import { IPropertyFieldList } from '../../propertyFields/listPicker'; +import { IItem } from '../../propertyFields/propertyFieldGrid/grid/IItem'; import { IPropertyFieldSite } from '../../propertyFields/sitePicker'; import { IPropertyFieldTeam } from '../../PropertyFieldTeamPicker'; import { IPickerTerms } from '../../PropertyFieldTermPicker'; @@ -56,4 +57,6 @@ export interface IPropertyControlsTestWebPartProps { iconPicker: string; editableComboBox: string; monacoEditor:string; + contentType:string; + gridItems: IItem[]; } diff --git a/src/webparts/propertyControlsTest/PropertyControlsTestWebPart.ts b/src/webparts/propertyControlsTest/PropertyControlsTestWebPart.ts index d3cb525f..a0dc69cd 100644 --- a/src/webparts/propertyControlsTest/PropertyControlsTestWebPart.ts +++ b/src/webparts/propertyControlsTest/PropertyControlsTestWebPart.ts @@ -1,12 +1,13 @@ import * as React from 'react'; import * as ReactDom from 'react-dom'; -import { MessageBarType } from '@fluentui/react/lib/MessageBar'; -import { SpinnerSize } from '@fluentui/react/lib/Spinner'; -import { PanelType } from '@fluentui/react'; -import { DayOfWeek } from '@fluentui/react/lib/DateTimeUtilities'; import * as strings from 'PropertyControlsTestWebPartStrings'; +import { PanelType } from '@fluentui/react'; +import { DocumentBulletListRegular } from '@fluentui/react-icons'; +import { DayOfWeek } from '@fluentui/react/lib/DateTimeUtilities'; +import { MessageBarType } from '@fluentui/react/lib/MessageBar'; +import { SpinnerSize } from '@fluentui/react/lib/Spinner'; import { Version } from '@microsoft/sp-core-library'; import { IPropertyPaneConfiguration, @@ -17,6 +18,7 @@ import { BaseClientSideWebPart } from '@microsoft/sp-webpart-base'; import { PropertyPaneHelpers } from '../../helpers'; import { PropertyFieldMonacoEditor } from '../../PropertyFiedMonacoEditor'; +import { PropertyFieldButton } from '../../PropertyFieldButton'; import { PropertyFieldButtonWithCallout, } from '../../PropertyFieldButtonWithCallout'; @@ -39,6 +41,10 @@ import { PropertyFieldColumnPicker, PropertyFieldColumnPickerOrderBy, } from '../../PropertyFieldColumnPicker'; +import { + PropertyFieldContentTypeOrderBy, + PropertyFieldContentTypePicker, +} from '../../PropertyFieldContentTypePicker'; import { DateConvention, PropertyFieldDateTimePicker, @@ -96,6 +102,8 @@ import { import { PropertyPanePropertyEditor, } from '../../propertyFields/propertyEditor/PropertyPanePropertyEditor'; +import { PropertyFieldGrid } from '../../propertyFields/propertyFieldGrid'; +import { IItem } from '../../propertyFields/propertyFieldGrid/grid/IItem'; import { PropertyFieldTeamPicker } from '../../propertyFields/teamPicker'; import { PropertyFieldEnterpriseTermPicker, @@ -138,12 +146,45 @@ import { */ export default class PropertyControlsTestWebPart extends BaseClientSideWebPart { private multiSelectProps = []; + private showMessageButton = false; + private gridItems:IItem[] = [ + { + key: "1", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 1", + description: "This is the first document" + }, + { + key: "2", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 2", + description: "This is the first document" + }, + { + key: "3", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 3", + description: "This is the first document" +}, +{ + key: "4", + icon: React.createElement(DocumentBulletListRegular) , + title: "File 4", + description: "This is the first document" +} + ]; protected monacoChange = (newValue: string, validationErrors: string[]) => { console.log('teste',newValue); } + protected onPropertyPaneFieldChanged(propertyPath: string, oldValue: any, newValue: any): void { + console.log("PropertyPaneFieldChanged", propertyPath, oldValue, newValue); + } + + + public render(): void { this.properties.monacoEditor = ""; const element: React.ReactElement = React.createElement( @@ -189,6 +230,8 @@ export default class PropertyControlsTestWebPart extends BaseClientSideWebPart { this.showMessageButton = !this.showMessageButton; this.context.propertyPane.refresh(); }, + isVisible: true, + isPrimary: true, + disabled: true + }), + PropertyFieldMessage("message", { + key: "0", + text: "Button clickd Completed!", + messageType: + MessageBarType.success, + isVisible: this.showMessageButton + }), + PropertyFieldGrid('gridItems', { + multiSelect: true, + items: this.gridItems, + label: 'Grid Items', + key: 'gridFieldId', + defaultSelectedItems: this.properties.gridItems, + maxHeight: 500, + column1Label: 'File', + column2Label: 'Location', + onSelected: (item: IItem[]) => { + console.log(item); + }, + + + }), PropertyFieldIconPicker('iconPicker', { currentIcon: this.properties.iconPicker, key: "iconPickerId", diff --git a/src/webparts/propertyControlsTest/components/IPropertyControlsTestProps.ts b/src/webparts/propertyControlsTest/components/IPropertyControlsTestProps.ts index 0e0f2c16..da47527f 100644 --- a/src/webparts/propertyControlsTest/components/IPropertyControlsTestProps.ts +++ b/src/webparts/propertyControlsTest/components/IPropertyControlsTestProps.ts @@ -1,5 +1,4 @@ import { IColor } from '@fluentui/react/lib/utilities/color'; - import { BaseComponentContext } from '@microsoft/sp-component-base'; import { IDateTimeFieldValue } from '../../../PropertyFieldDateTimePicker'; @@ -15,6 +14,7 @@ import { IPropertyFieldSite } from '../../../propertyFields/sitePicker'; import { IPickerTerms } from '../../../PropertyFieldTermPicker'; export interface IPropertyControlsTestProps { + gridItems: any[]; password:string; context: BaseComponentContext; numberValue: number; @@ -55,4 +55,5 @@ export interface IPropertyControlsTestProps { iconPicker: string; editableComboBox: string; monacoEditor:string; + contentType: string; } diff --git a/src/webparts/propertyControlsTest/components/PropertyControlsTest.tsx b/src/webparts/propertyControlsTest/components/PropertyControlsTest.tsx index acaa451d..6dbb286b 100644 --- a/src/webparts/propertyControlsTest/components/PropertyControlsTest.tsx +++ b/src/webparts/propertyControlsTest/components/PropertyControlsTest.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; -import styles from './PropertyControlsTest.module.scss'; + import { IPropertyControlsTestProps } from './IPropertyControlsTestProps'; -import { escape } from '@microsoft/sp-lodash-subset'; +import styles from './PropertyControlsTest.module.scss'; /** * Property control test component that renders the property control values @@ -17,6 +17,8 @@ export default class PropertyControlsTest extends React.Component

Property pane control values

+

Grid

+

Grid: {this.props.gridItems.map(i => i.title).join(', ')}

Message

Message: {this.props.message}

@@ -35,6 +37,7 @@ export default class PropertyControlsTest extends React.ComponentList Filtered: {this.props.listFiltered}

List (Multi baseTemplate): {this.props.singleListMultipleBaseTemplate}

View: {this.props.view}

+

ContentType: {this.props.contentType}

Column: {this.props.column}

Multi Column: {this.props.multiColumn? this.props.multiColumn.join(', '):''}

Multi List: {this.props.multiList.join(', ')}

diff --git a/tsconfig.json b/tsconfig.json index ecc2222c..95eba3dd 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "extends": "./node_modules/@microsoft/rush-stack-compiler-4.7/includes/tsconfig-web.json", "compilerOptions": { - "target": "es5", + "target": "es2015", "forceConsistentCasingInFileNames": true, "module": "esnext", "moduleResolution": "node", @@ -26,6 +26,7 @@ "lib": [ "es5", "dom", + "es2015", "es2015.collection", "es2015.promise" ]