@fluentui/react-context-selector
Advanced tools
Comparing version 0.0.0-nightly906d31cfa320211115.1 to 0.0.0-nightly99adff5a9a20211125.1
@@ -5,18 +5,20 @@ { | ||
{ | ||
"date": "Mon, 15 Nov 2021 04:16:25 GMT", | ||
"tag": "@fluentui/react-context-selector_v0.0.0-nightly906d31cfa320211115.1", | ||
"version": "0.0.0-nightly906d31cfa320211115.1", | ||
"date": "Thu, 25 Nov 2021 04:13:54 GMT", | ||
"tag": "@fluentui/react-context-selector_v0.0.0-nightly99adff5a9a20211125.1", | ||
"version": "0.0.0-nightly99adff5a9a20211125.1", | ||
"comments": { | ||
"prerelease": [ | ||
"none": [ | ||
{ | ||
"author": "email not defined", | ||
"author": "olfedias@microsoft.com", | ||
"package": "@fluentui/react-context-selector", | ||
"commit": "05edacbae8d85aa6b3d4164f9cd7d1465b47f246", | ||
"comment": "Release nightly v9" | ||
}, | ||
"commit": "59b3bebb1944aa35f8e8754beec16dcc95f1d5fb", | ||
"comment": "update tooling configs" | ||
} | ||
], | ||
"prerelease": [ | ||
{ | ||
"author": "beachball", | ||
"package": "@fluentui/react-context-selector", | ||
"comment": "Bump @fluentui/react-utilities to v0.0.0-nightly906d31cfa320211115.1", | ||
"commit": "05edacbae8d85aa6b3d4164f9cd7d1465b47f246" | ||
"comment": "Bump @fluentui/react-utilities to v0.0.0-nightly99adff5a9a20211125.1", | ||
"commit": "82edadbaa0875da8b96295c6b41be3e0b2728832" | ||
} | ||
@@ -23,0 +25,0 @@ ] |
# Change Log - @fluentui/react-context-selector | ||
This log was last generated on Mon, 15 Nov 2021 04:16:25 GMT and should not be manually modified. | ||
This log was last generated on Thu, 25 Nov 2021 04:13:54 GMT and should not be manually modified. | ||
<!-- Start content --> | ||
## [0.0.0-nightly906d31cfa320211115.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-context-selector_v0.0.0-nightly906d31cfa320211115.1) | ||
## [0.0.0-nightly99adff5a9a20211125.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-context-selector_v0.0.0-nightly99adff5a9a20211125.1) | ||
Mon, 15 Nov 2021 04:16:25 GMT | ||
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-context-selector_v9.0.0-beta.3..@fluentui/react-context-selector_v0.0.0-nightly906d31cfa320211115.1) | ||
Thu, 25 Nov 2021 04:13:54 GMT | ||
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-context-selector_v9.0.0-beta.3..@fluentui/react-context-selector_v0.0.0-nightly99adff5a9a20211125.1) | ||
### Changes | ||
- Release nightly v9 ([commit](https://github.com/microsoft/fluentui/commit/05edacbae8d85aa6b3d4164f9cd7d1465b47f246) by email not defined) | ||
- Bump @fluentui/react-utilities to v0.0.0-nightly906d31cfa320211115.1 ([commit](https://github.com/microsoft/fluentui/commit/05edacbae8d85aa6b3d4164f9cd7d1465b47f246) by beachball) | ||
- Bump @fluentui/react-utilities to v0.0.0-nightly99adff5a9a20211125.1 ([commit](https://github.com/microsoft/fluentui/commit/82edadbaa0875da8b96295c6b41be3e0b2728832) by beachball) | ||
@@ -17,0 +16,0 @@ ## [9.0.0-beta.3](https://github.com/microsoft/fluentui/tree/@fluentui/react-context-selector_v9.0.0-beta.3) |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.createContext = void 0; | ||
const react_utilities_1 = require("@fluentui/react-utilities"); | ||
const React = require("react"); | ||
const scheduler_1 = require("scheduler"); | ||
const createProvider = (Original) => { | ||
const Provider = props => { | ||
// Holds an actual "props.value" | ||
const valueRef = React.useRef(props.value); | ||
// Used to sync context updates and avoid stale values, can be considered as render/effect counter of Provider. | ||
const versionRef = React.useRef(0); | ||
// A stable object, is used to avoid context updates via mutation of its values. | ||
const contextValue = React.useRef(); | ||
if (!contextValue.current) { | ||
contextValue.current = { | ||
value: valueRef, | ||
version: versionRef, | ||
listeners: [], | ||
}; | ||
} | ||
react_utilities_1.useIsomorphicLayoutEffect(() => { | ||
valueRef.current = props.value; | ||
versionRef.current += 1; | ||
scheduler_1.unstable_runWithPriority(scheduler_1.unstable_NormalPriority, () => { | ||
contextValue.current.listeners.forEach(listener => { | ||
listener([versionRef.current, props.value]); | ||
}); | ||
}); | ||
}, [props.value]); | ||
return React.createElement(Original, { value: contextValue.current }, props.children); | ||
}; | ||
/* istanbul ignore else */ | ||
if (process.env.NODE_ENV !== 'production') { | ||
Provider.displayName = 'ContextSelector.Provider'; | ||
const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities"); | ||
const React = /*#__PURE__*/require("react"); | ||
const scheduler_1 = /*#__PURE__*/require("scheduler"); | ||
const createProvider = Original => { | ||
const Provider = props => { | ||
// Holds an actual "props.value" | ||
const valueRef = React.useRef(props.value); // Used to sync context updates and avoid stale values, can be considered as render/effect counter of Provider. | ||
const versionRef = React.useRef(0); // A stable object, is used to avoid context updates via mutation of its values. | ||
const contextValue = React.useRef(); | ||
if (!contextValue.current) { | ||
contextValue.current = { | ||
value: valueRef, | ||
version: versionRef, | ||
listeners: [] | ||
}; | ||
} | ||
return Provider; | ||
react_utilities_1.useIsomorphicLayoutEffect(() => { | ||
valueRef.current = props.value; | ||
versionRef.current += 1; | ||
scheduler_1.unstable_runWithPriority(scheduler_1.unstable_NormalPriority, () => { | ||
contextValue.current.listeners.forEach(listener => { | ||
listener([versionRef.current, props.value]); | ||
}); | ||
}); | ||
}, [props.value]); | ||
return React.createElement(Original, { | ||
value: contextValue.current | ||
}, props.children); | ||
}; | ||
/* istanbul ignore else */ | ||
if (process.env.NODE_ENV !== 'production') { | ||
Provider.displayName = 'ContextSelector.Provider'; | ||
} | ||
return Provider; | ||
}; | ||
const createContext = (defaultValue) => { | ||
const context = React.createContext({ | ||
value: { current: defaultValue }, | ||
version: { current: -1 }, | ||
listeners: [], | ||
}); | ||
context.Provider = createProvider(context.Provider); | ||
// We don't support Consumer API | ||
delete context.Consumer; | ||
return context; | ||
const createContext = defaultValue => { | ||
const context = React.createContext({ | ||
value: { | ||
current: defaultValue | ||
}, | ||
version: { | ||
current: -1 | ||
}, | ||
listeners: [] | ||
}); | ||
context.Provider = createProvider(context.Provider); // We don't support Consumer API | ||
delete context.Consumer; | ||
return context; | ||
}; | ||
exports.createContext = createContext; | ||
//# sourceMappingURL=createContext.js.map |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.useHasParentContext = exports.useContextSelector = exports.createContext = void 0; | ||
const tslib_1 = require("tslib"); | ||
var createContext_1 = require("./createContext"); | ||
Object.defineProperty(exports, "createContext", { enumerable: true, get: function () { return createContext_1.createContext; } }); | ||
var useContextSelector_1 = require("./useContextSelector"); | ||
Object.defineProperty(exports, "useContextSelector", { enumerable: true, get: function () { return useContextSelector_1.useContextSelector; } }); | ||
var useHasParentContext_1 = require("./useHasParentContext"); | ||
Object.defineProperty(exports, "useHasParentContext", { enumerable: true, get: function () { return useHasParentContext_1.useHasParentContext; } }); | ||
const tslib_1 = /*#__PURE__*/require("tslib"); | ||
var createContext_1 = /*#__PURE__*/require("./createContext"); | ||
Object.defineProperty(exports, "createContext", { | ||
enumerable: true, | ||
get: function () { | ||
return createContext_1.createContext; | ||
} | ||
}); | ||
var useContextSelector_1 = /*#__PURE__*/require("./useContextSelector"); | ||
Object.defineProperty(exports, "useContextSelector", { | ||
enumerable: true, | ||
get: function () { | ||
return useContextSelector_1.useContextSelector; | ||
} | ||
}); | ||
var useHasParentContext_1 = /*#__PURE__*/require("./useHasParentContext"); | ||
Object.defineProperty(exports, "useHasParentContext", { | ||
enumerable: true, | ||
get: function () { | ||
return useHasParentContext_1.useHasParentContext; | ||
} | ||
}); | ||
tslib_1.__exportStar(require("./types"), exports); | ||
//# sourceMappingURL=index.js.map |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
//# sourceMappingURL=types.js.map |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.useContextSelector = void 0; | ||
const react_utilities_1 = require("@fluentui/react-utilities"); | ||
const React = require("react"); | ||
const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities"); | ||
const React = /*#__PURE__*/require("react"); | ||
/** | ||
@@ -11,47 +16,65 @@ * This hook returns context selected value by selector. | ||
*/ | ||
const useContextSelector = (context, selector) => { | ||
const contextValue = React.useContext(context); | ||
const { value: { current: value }, version: { current: version }, listeners, } = contextValue; | ||
const selected = selector(value); | ||
const [state, dispatch] = React.useReducer((prevState, payload) => { | ||
if (!payload) { | ||
// early bail out when is dispatched during render | ||
return [value, selected]; | ||
} | ||
if (payload[0] <= version) { | ||
if (objectIs(prevState[1], selected)) { | ||
return prevState; // bail out | ||
} | ||
return [value, selected]; | ||
} | ||
try { | ||
if (objectIs(prevState[0], payload[1])) { | ||
return prevState; // do not update | ||
} | ||
const nextSelected = selector(payload[1]); | ||
if (objectIs(prevState[1], nextSelected)) { | ||
return prevState; // do not update | ||
} | ||
return [payload[1], nextSelected]; | ||
} | ||
catch (e) { | ||
// ignored (stale props or some other reason) | ||
} | ||
// explicitly spread to enforce typing | ||
return [prevState[0], prevState[1]]; // schedule update | ||
}, [value, selected]); | ||
if (!objectIs(state[1], selected)) { | ||
// schedule re-render | ||
// this is safe because it's self contained | ||
dispatch(undefined); | ||
const contextValue = React.useContext(context); | ||
const { | ||
value: { | ||
current: value | ||
}, | ||
version: { | ||
current: version | ||
}, | ||
listeners | ||
} = contextValue; | ||
const selected = selector(value); | ||
const [state, dispatch] = React.useReducer((prevState, payload) => { | ||
if (!payload) { | ||
// early bail out when is dispatched during render | ||
return [value, selected]; | ||
} | ||
react_utilities_1.useIsomorphicLayoutEffect(() => { | ||
listeners.push(dispatch); | ||
return () => { | ||
const index = listeners.indexOf(dispatch); | ||
listeners.splice(index, 1); | ||
}; | ||
}, [listeners]); | ||
return state[1]; | ||
if (payload[0] <= version) { | ||
if (objectIs(prevState[1], selected)) { | ||
return prevState; // bail out | ||
} | ||
return [value, selected]; | ||
} | ||
try { | ||
if (objectIs(prevState[0], payload[1])) { | ||
return prevState; // do not update | ||
} | ||
const nextSelected = selector(payload[1]); | ||
if (objectIs(prevState[1], nextSelected)) { | ||
return prevState; // do not update | ||
} | ||
return [payload[1], nextSelected]; | ||
} catch (e) {// ignored (stale props or some other reason) | ||
} // explicitly spread to enforce typing | ||
return [prevState[0], prevState[1]]; // schedule update | ||
}, [value, selected]); | ||
if (!objectIs(state[1], selected)) { | ||
// schedule re-render | ||
// this is safe because it's self contained | ||
dispatch(undefined); | ||
} | ||
react_utilities_1.useIsomorphicLayoutEffect(() => { | ||
listeners.push(dispatch); | ||
return () => { | ||
const index = listeners.indexOf(dispatch); | ||
listeners.splice(index, 1); | ||
}; | ||
}, [listeners]); | ||
return state[1]; | ||
}; | ||
exports.useContextSelector = useContextSelector; | ||
@@ -63,11 +86,12 @@ /** | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
function is(x, y) { | ||
return ((x === y && (x !== 0 || 1 / x === 1 / y)) || (x !== x && y !== y) // eslint-disable-line no-self-compare | ||
); | ||
} | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
const objectIs = | ||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment | ||
return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y // eslint-disable-line no-self-compare | ||
; | ||
} // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
const objectIs = // eslint-disable-next-line @typescript-eslint/ban-ts-comment | ||
// @ts-ignore fallback to native if it exists (not in IE11) | ||
typeof Object.is === 'function' ? Object.is : is; | ||
//# sourceMappingURL=useContextSelector.js.map |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.useHasParentContext = void 0; | ||
const React = require("react"); | ||
const React = /*#__PURE__*/require("react"); | ||
/** | ||
@@ -12,10 +16,15 @@ * Utility hook for contexts created by react-context-selector to determine if a parent context exists | ||
*/ | ||
function useHasParentContext(context) { | ||
const contextValue = React.useContext(context); | ||
if (contextValue.version) { | ||
return contextValue.version.current !== -1; | ||
} | ||
return false; | ||
const contextValue = React.useContext(context); | ||
if (contextValue.version) { | ||
return contextValue.version.current !== -1; | ||
} | ||
return false; | ||
} | ||
exports.useHasParentContext = useHasParentContext; | ||
//# sourceMappingURL=useHasParentContext.js.map |
import { useIsomorphicLayoutEffect } from '@fluentui/react-utilities'; | ||
import * as React from 'react'; | ||
import { unstable_NormalPriority as NormalPriority, unstable_runWithPriority as runWithPriority } from 'scheduler'; | ||
const createProvider = (Original) => { | ||
const Provider = props => { | ||
// Holds an actual "props.value" | ||
const valueRef = React.useRef(props.value); | ||
// Used to sync context updates and avoid stale values, can be considered as render/effect counter of Provider. | ||
const versionRef = React.useRef(0); | ||
// A stable object, is used to avoid context updates via mutation of its values. | ||
const contextValue = React.useRef(); | ||
if (!contextValue.current) { | ||
contextValue.current = { | ||
value: valueRef, | ||
version: versionRef, | ||
listeners: [], | ||
}; | ||
} | ||
useIsomorphicLayoutEffect(() => { | ||
valueRef.current = props.value; | ||
versionRef.current += 1; | ||
runWithPriority(NormalPriority, () => { | ||
contextValue.current.listeners.forEach(listener => { | ||
listener([versionRef.current, props.value]); | ||
}); | ||
}); | ||
}, [props.value]); | ||
return React.createElement(Original, { value: contextValue.current }, props.children); | ||
}; | ||
/* istanbul ignore else */ | ||
if (process.env.NODE_ENV !== 'production') { | ||
Provider.displayName = 'ContextSelector.Provider'; | ||
const createProvider = Original => { | ||
const Provider = props => { | ||
// Holds an actual "props.value" | ||
const valueRef = React.useRef(props.value); // Used to sync context updates and avoid stale values, can be considered as render/effect counter of Provider. | ||
const versionRef = React.useRef(0); // A stable object, is used to avoid context updates via mutation of its values. | ||
const contextValue = React.useRef(); | ||
if (!contextValue.current) { | ||
contextValue.current = { | ||
value: valueRef, | ||
version: versionRef, | ||
listeners: [] | ||
}; | ||
} | ||
return Provider; | ||
useIsomorphicLayoutEffect(() => { | ||
valueRef.current = props.value; | ||
versionRef.current += 1; | ||
runWithPriority(NormalPriority, () => { | ||
contextValue.current.listeners.forEach(listener => { | ||
listener([versionRef.current, props.value]); | ||
}); | ||
}); | ||
}, [props.value]); | ||
return /*#__PURE__*/React.createElement(Original, { | ||
value: contextValue.current | ||
}, props.children); | ||
}; | ||
/* istanbul ignore else */ | ||
if (process.env.NODE_ENV !== 'production') { | ||
Provider.displayName = 'ContextSelector.Provider'; | ||
} | ||
return Provider; | ||
}; | ||
export const createContext = (defaultValue) => { | ||
const context = React.createContext({ | ||
value: { current: defaultValue }, | ||
version: { current: -1 }, | ||
listeners: [], | ||
}); | ||
context.Provider = createProvider(context.Provider); | ||
// We don't support Consumer API | ||
delete context.Consumer; | ||
return context; | ||
export const createContext = defaultValue => { | ||
const context = /*#__PURE__*/React.createContext({ | ||
value: { | ||
current: defaultValue | ||
}, | ||
version: { | ||
current: -1 | ||
}, | ||
listeners: [] | ||
}); | ||
context.Provider = createProvider(context.Provider); // We don't support Consumer API | ||
delete context.Consumer; | ||
return context; | ||
}; | ||
//# sourceMappingURL=createContext.js.map |
@@ -8,46 +8,62 @@ import { useIsomorphicLayoutEffect } from '@fluentui/react-utilities'; | ||
*/ | ||
export const useContextSelector = (context, selector) => { | ||
const contextValue = React.useContext(context); | ||
const { value: { current: value }, version: { current: version }, listeners, } = contextValue; | ||
const selected = selector(value); | ||
const [state, dispatch] = React.useReducer((prevState, payload) => { | ||
if (!payload) { | ||
// early bail out when is dispatched during render | ||
return [value, selected]; | ||
} | ||
if (payload[0] <= version) { | ||
if (objectIs(prevState[1], selected)) { | ||
return prevState; // bail out | ||
} | ||
return [value, selected]; | ||
} | ||
try { | ||
if (objectIs(prevState[0], payload[1])) { | ||
return prevState; // do not update | ||
} | ||
const nextSelected = selector(payload[1]); | ||
if (objectIs(prevState[1], nextSelected)) { | ||
return prevState; // do not update | ||
} | ||
return [payload[1], nextSelected]; | ||
} | ||
catch (e) { | ||
// ignored (stale props or some other reason) | ||
} | ||
// explicitly spread to enforce typing | ||
return [prevState[0], prevState[1]]; // schedule update | ||
}, [value, selected]); | ||
if (!objectIs(state[1], selected)) { | ||
// schedule re-render | ||
// this is safe because it's self contained | ||
dispatch(undefined); | ||
const contextValue = React.useContext(context); | ||
const { | ||
value: { | ||
current: value | ||
}, | ||
version: { | ||
current: version | ||
}, | ||
listeners | ||
} = contextValue; | ||
const selected = selector(value); | ||
const [state, dispatch] = React.useReducer((prevState, payload) => { | ||
if (!payload) { | ||
// early bail out when is dispatched during render | ||
return [value, selected]; | ||
} | ||
useIsomorphicLayoutEffect(() => { | ||
listeners.push(dispatch); | ||
return () => { | ||
const index = listeners.indexOf(dispatch); | ||
listeners.splice(index, 1); | ||
}; | ||
}, [listeners]); | ||
return state[1]; | ||
if (payload[0] <= version) { | ||
if (objectIs(prevState[1], selected)) { | ||
return prevState; // bail out | ||
} | ||
return [value, selected]; | ||
} | ||
try { | ||
if (objectIs(prevState[0], payload[1])) { | ||
return prevState; // do not update | ||
} | ||
const nextSelected = selector(payload[1]); | ||
if (objectIs(prevState[1], nextSelected)) { | ||
return prevState; // do not update | ||
} | ||
return [payload[1], nextSelected]; | ||
} catch (e) {// ignored (stale props or some other reason) | ||
} // explicitly spread to enforce typing | ||
return [prevState[0], prevState[1]]; // schedule update | ||
}, [value, selected]); | ||
if (!objectIs(state[1], selected)) { | ||
// schedule re-render | ||
// this is safe because it's self contained | ||
dispatch(undefined); | ||
} | ||
useIsomorphicLayoutEffect(() => { | ||
listeners.push(dispatch); | ||
return () => { | ||
const index = listeners.indexOf(dispatch); | ||
listeners.splice(index, 1); | ||
}; | ||
}, [listeners]); | ||
return state[1]; | ||
}; | ||
@@ -59,11 +75,12 @@ /** | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
function is(x, y) { | ||
return ((x === y && (x !== 0 || 1 / x === 1 / y)) || (x !== x && y !== y) // eslint-disable-line no-self-compare | ||
); | ||
} | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
const objectIs = | ||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment | ||
return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y // eslint-disable-line no-self-compare | ||
; | ||
} // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
const objectIs = // eslint-disable-next-line @typescript-eslint/ban-ts-comment | ||
// @ts-ignore fallback to native if it exists (not in IE11) | ||
typeof Object.is === 'function' ? Object.is : is; | ||
//# sourceMappingURL=useContextSelector.js.map |
@@ -9,9 +9,12 @@ import * as React from 'react'; | ||
*/ | ||
export function useHasParentContext(context) { | ||
const contextValue = React.useContext(context); | ||
if (contextValue.version) { | ||
return contextValue.version.current !== -1; | ||
} | ||
return false; | ||
const contextValue = React.useContext(context); | ||
if (contextValue.version) { | ||
return contextValue.version.current !== -1; | ||
} | ||
return false; | ||
} | ||
//# sourceMappingURL=useHasParentContext.js.map |
{ | ||
"name": "@fluentui/react-context-selector", | ||
"version": "0.0.0-nightly906d31cfa320211115.1", | ||
"version": "0.0.0-nightly99adff5a9a20211125.1", | ||
"description": "React useContextSelector hook in userland", | ||
@@ -22,3 +22,4 @@ "main": "lib-commonjs/index.js", | ||
"docs": "api-extractor run --config=config/api-extractor.local.json --local", | ||
"build:local": "tsc -p . --module esnext --emitDeclarationOnly && node ../../scripts/typescript/normalize-import --output dist/react-context-selector/src && yarn docs" | ||
"build:local": "tsc -p ./tsconfig.lib.json --module esnext --emitDeclarationOnly && node ../../scripts/typescript/normalize-import --output ./dist/packages/react-context-selector/src && yarn docs", | ||
"type-check": "tsc -b tsconfig.json" | ||
}, | ||
@@ -38,3 +39,3 @@ "devDependencies": { | ||
"dependencies": { | ||
"@fluentui/react-utilities": "0.0.0-nightly906d31cfa320211115.1", | ||
"@fluentui/react-utilities": "0.0.0-nightly99adff5a9a20211125.1", | ||
"scheduler": "^0.20.1", | ||
@@ -41,0 +42,0 @@ "tslib": "^2.1.0" |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1487
93230
+ Added@fluentui/react-utilities@0.0.0-nightly99adff5a9a20211125.1(transitive)
- Removed@fluentui/keyboard-keys@0.0.0-nightly906d31cfa320211115.1(transitive)
- Removed@fluentui/react-utilities@0.0.0-nightly906d31cfa320211115.1(transitive)
Updated@fluentui/react-utilities@0.0.0-nightly99adff5a9a20211125.1