@khanacademy/keypad-context 1.1.7 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/index.js.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/keypad-context.tsx"],"sourcesContent":["/**\n * KeypadContext provides a way to the Keypad and Perseus Renderers to\n * communicate.\n *\n * The StatefulKeypadContextProvider wraps the application\n * while KeypadContext.Consumer wraps things that need this state:\n * - mobile keypad usages\n * - Perseus Renderers (Server/Item/Article)\n */\nimport * as React from \"react\";\nimport {useState, useMemo} from \"react\";\n\nimport type {KeypadContextType} from \"./types\";\nimport type {KeypadContextRendererInterface} from \"@khanacademy/perseus-core\";\n\n// @ts-expect-error - TS2322 - Type 'Context<{ setKeypadElement: (keypadElement: HTMLElement | null | undefined) => void; keypadElement: null; setRenderer: (renderer: RendererInterface | null | undefined) => void; renderer: null; setScrollableElement: (scrollableElement: HTMLElement | ... 1 more ... | undefined) => void; scrollableElement: null; }>' is not assignable to type 'Context<KeypadContext>'.\nexport const KeypadContext: React.Context<KeypadContextType> =\n React.createContext({\n setKeypadActive: (keypadActive) => {},\n keypadActive: false,\n setKeypadElement: (keypadElement) => {},\n keypadElement: null,\n setRenderer: (renderer) => {},\n renderer: null,\n setScrollableElement: (scrollableElement) => {},\n scrollableElement: null,\n });\n\ntype Props = React.PropsWithChildren<unknown>;\n\nexport function StatefulKeypadContextProvider(props: Props) {\n // whether or not to display the keypad\n const [keypadActive, setKeypadActive] = useState<boolean>(false);\n // used to communicate between the keypad and the Renderer\n const [keypadElement, setKeypadElement] = useState<any>();\n // this is a KeypadContextRendererInterface from Perseus\n const [renderer, setRenderer] =\n useState<KeypadContextRendererInterface | null>();\n const [scrollableElement, setScrollableElement] =\n useState<HTMLElement | null>();\n\n const memoizedValue = useMemo(\n () => ({\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n }),\n [\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n ],\n );\n\n return (\n <KeypadContext.Provider value={memoizedValue}>\n {props.children}\n </KeypadContext.Provider>\n );\n}\n"],"names":["KeypadContext","React","createContext","setKeypadActive","keypadActive","setKeypadElement","keypadElement","setRenderer","renderer","setScrollableElement","scrollableElement","StatefulKeypadContextProvider","props","useState","memoizedValue","useMemo","createElement","Provider","value","children"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;MACaA,aAA+C,gBACxDC,KAAK,CAACC,aAAa,CAAC;AAChBC,EAAAA,eAAe,EAAGC,YAAY,IAAK,EAAE;AACrCA,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,gBAAgB,EAAGC,aAAa,IAAK,EAAE;AACvCA,EAAAA,aAAa,EAAE,IAAI;AACnBC,EAAAA,WAAW,EAAGC,QAAQ,IAAK,EAAE;AAC7BA,EAAAA,QAAQ,EAAE,IAAI;AACdC,EAAAA,oBAAoB,EAAGC,iBAAiB,IAAK,EAAE;AAC/CA,EAAAA,iBAAiB,EAAE
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/keypad-context.tsx"],"sourcesContent":["/**\n * KeypadContext provides a way to the Keypad and Perseus Renderers to\n * communicate.\n *\n * The StatefulKeypadContextProvider wraps the application\n * while KeypadContext.Consumer wraps things that need this state:\n * - mobile keypad usages\n * - Perseus Renderers (Server/Item/Article)\n */\nimport * as React from \"react\";\nimport {useState, useMemo} from \"react\";\n\nimport type {KeypadContextType} from \"./types\";\nimport type {KeypadContextRendererInterface} from \"@khanacademy/perseus-core\";\n\n// @ts-expect-error - TS2322 - Type 'Context<{ setKeypadElement: (keypadElement: HTMLElement | null | undefined) => void; keypadElement: null; setRenderer: (renderer: RendererInterface | null | undefined) => void; renderer: null; setScrollableElement: (scrollableElement: HTMLElement | ... 1 more ... | undefined) => void; scrollableElement: null; }>' is not assignable to type 'Context<KeypadContext>'.\nexport const KeypadContext: React.Context<KeypadContextType> =\n React.createContext({\n setKeypadActive: (keypadActive) => {},\n keypadActive: false,\n setKeypadElement: (keypadElement) => {},\n keypadElement: null,\n setRenderer: (renderer) => {},\n renderer: null,\n setScrollableElement: (scrollableElement) => {},\n scrollableElement: null,\n });\n\ntype Props = React.PropsWithChildren<unknown>;\n\nexport function StatefulKeypadContextProvider(props: Props) {\n // whether or not to display the keypad\n const [keypadActive, setKeypadActive] = useState<boolean>(false);\n // used to communicate between the keypad and the Renderer\n const [keypadElement, setKeypadElement] = useState<any>();\n // this is a KeypadContextRendererInterface from Perseus\n const [renderer, setRenderer] =\n useState<KeypadContextRendererInterface | null>();\n const [scrollableElement, setScrollableElement] =\n useState<HTMLElement | null>();\n\n const memoizedValue = useMemo(\n () => ({\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n }),\n [\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n ],\n );\n\n return (\n <KeypadContext.Provider value={memoizedValue}>\n {props.children}\n </KeypadContext.Provider>\n );\n}\n"],"names":["KeypadContext","React","createContext","setKeypadActive","keypadActive","setKeypadElement","keypadElement","setRenderer","renderer","setScrollableElement","scrollableElement","StatefulKeypadContextProvider","props","useState","memoizedValue","useMemo","createElement","Provider","value","children"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;MACaA,aAA+C,gBACxDC,KAAK,CAACC,aAAa,CAAC;AAChBC,EAAAA,eAAe,EAAGC,YAAY,IAAK,EAAE;AACrCA,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,gBAAgB,EAAGC,aAAa,IAAK,EAAE;AACvCA,EAAAA,aAAa,EAAE,IAAI;AACnBC,EAAAA,WAAW,EAAGC,QAAQ,IAAK,EAAE;AAC7BA,EAAAA,QAAQ,EAAE,IAAI;AACdC,EAAAA,oBAAoB,EAAGC,iBAAiB,IAAK,EAAE;AAC/CA,EAAAA,iBAAiB,EAAE;AACvB,CAAC;AAIE,SAASC,6BAA6BA,CAACC,KAAY,EAAE;AACxD;EACA,MAAM,CAACR,YAAY,EAAED,eAAe,CAAC,GAAGU,QAAQ,CAAU,KAAK,CAAC;AAChE;EACA,MAAM,CAACP,aAAa,EAAED,gBAAgB,CAAC,GAAGQ,QAAQ,EAAO;AACzD;EACA,MAAM,CAACL,QAAQ,EAAED,WAAW,CAAC,GACzBM,QAAQ,EAAyC;EACrD,MAAM,CAACH,iBAAiB,EAAED,oBAAoB,CAAC,GAC3CI,QAAQ,EAAsB;AAElC,EAAA,MAAMC,aAAa,GAAGC,OAAO,CACzB,OAAO;IACHX,YAAY;IACZD,eAAe;IACfG,aAAa;IACbD,gBAAgB;IAChBG,QAAQ;IACRD,WAAW;IACXG,iBAAiB;AACjBD,IAAAA;AACJ,GAAC,CAAC,EACF,CACIL,YAAY,EACZD,eAAe,EACfG,aAAa,EACbD,gBAAgB,EAChBG,QAAQ,EACRD,WAAW,EACXG,iBAAiB,EACjBD,oBAAoB,CAE5B,CAAC;AAED,EAAA,oBACIR,KAAA,CAAAe,aAAA,CAAChB,aAAa,CAACiB,QAAQ,EAAA;AAACC,IAAAA,KAAK,EAAEJ;GAC1BF,EAAAA,KAAK,CAACO,QACa,CAAC;AAEjC;;;;"}
|
package/dist/index.js
CHANGED
|
@@ -4,8 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
6
|
|
|
7
|
-
function
|
|
8
|
-
if (e && e
|
|
7
|
+
function _interopNamespaceCompat(e) {
|
|
8
|
+
if (e && typeof e === 'object' && 'default' in e) return e;
|
|
9
9
|
var n = Object.create(null);
|
|
10
10
|
if (e) {
|
|
11
11
|
Object.keys(e).forEach(function (k) {
|
|
@@ -18,11 +18,11 @@ function _interopNamespace(e) {
|
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
n
|
|
21
|
+
n.default = e;
|
|
22
22
|
return Object.freeze(n);
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
var React__namespace = /*#__PURE__*/
|
|
25
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceCompat(React);
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* KeypadContext provides a way to the Keypad and Perseus Renderers to
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/keypad-context.tsx"],"sourcesContent":["/**\n * KeypadContext provides a way to the Keypad and Perseus Renderers to\n * communicate.\n *\n * The StatefulKeypadContextProvider wraps the application\n * while KeypadContext.Consumer wraps things that need this state:\n * - mobile keypad usages\n * - Perseus Renderers (Server/Item/Article)\n */\nimport * as React from \"react\";\nimport {useState, useMemo} from \"react\";\n\nimport type {KeypadContextType} from \"./types\";\nimport type {KeypadContextRendererInterface} from \"@khanacademy/perseus-core\";\n\n// @ts-expect-error - TS2322 - Type 'Context<{ setKeypadElement: (keypadElement: HTMLElement | null | undefined) => void; keypadElement: null; setRenderer: (renderer: RendererInterface | null | undefined) => void; renderer: null; setScrollableElement: (scrollableElement: HTMLElement | ... 1 more ... | undefined) => void; scrollableElement: null; }>' is not assignable to type 'Context<KeypadContext>'.\nexport const KeypadContext: React.Context<KeypadContextType> =\n React.createContext({\n setKeypadActive: (keypadActive) => {},\n keypadActive: false,\n setKeypadElement: (keypadElement) => {},\n keypadElement: null,\n setRenderer: (renderer) => {},\n renderer: null,\n setScrollableElement: (scrollableElement) => {},\n scrollableElement: null,\n });\n\ntype Props = React.PropsWithChildren<unknown>;\n\nexport function StatefulKeypadContextProvider(props: Props) {\n // whether or not to display the keypad\n const [keypadActive, setKeypadActive] = useState<boolean>(false);\n // used to communicate between the keypad and the Renderer\n const [keypadElement, setKeypadElement] = useState<any>();\n // this is a KeypadContextRendererInterface from Perseus\n const [renderer, setRenderer] =\n useState<KeypadContextRendererInterface | null>();\n const [scrollableElement, setScrollableElement] =\n useState<HTMLElement | null>();\n\n const memoizedValue = useMemo(\n () => ({\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n }),\n [\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n ],\n );\n\n return (\n <KeypadContext.Provider value={memoizedValue}>\n {props.children}\n </KeypadContext.Provider>\n );\n}\n"],"names":["KeypadContext","React","createContext","setKeypadActive","keypadActive","setKeypadElement","keypadElement","setRenderer","renderer","setScrollableElement","scrollableElement","StatefulKeypadContextProvider","props","useState","memoizedValue","useMemo","createElement","Provider","value","children"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;MACaA,aAA+C,gBACxDC,gBAAK,CAACC,aAAa,CAAC;AAChBC,EAAAA,eAAe,EAAGC,YAAY,IAAK,EAAE;AACrCA,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,gBAAgB,EAAGC,aAAa,IAAK,EAAE;AACvCA,EAAAA,aAAa,EAAE,IAAI;AACnBC,EAAAA,WAAW,EAAGC,QAAQ,IAAK,EAAE;AAC7BA,EAAAA,QAAQ,EAAE,IAAI;AACdC,EAAAA,oBAAoB,EAAGC,iBAAiB,IAAK,EAAE;AAC/CA,EAAAA,iBAAiB,EAAE
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/keypad-context.tsx"],"sourcesContent":["/**\n * KeypadContext provides a way to the Keypad and Perseus Renderers to\n * communicate.\n *\n * The StatefulKeypadContextProvider wraps the application\n * while KeypadContext.Consumer wraps things that need this state:\n * - mobile keypad usages\n * - Perseus Renderers (Server/Item/Article)\n */\nimport * as React from \"react\";\nimport {useState, useMemo} from \"react\";\n\nimport type {KeypadContextType} from \"./types\";\nimport type {KeypadContextRendererInterface} from \"@khanacademy/perseus-core\";\n\n// @ts-expect-error - TS2322 - Type 'Context<{ setKeypadElement: (keypadElement: HTMLElement | null | undefined) => void; keypadElement: null; setRenderer: (renderer: RendererInterface | null | undefined) => void; renderer: null; setScrollableElement: (scrollableElement: HTMLElement | ... 1 more ... | undefined) => void; scrollableElement: null; }>' is not assignable to type 'Context<KeypadContext>'.\nexport const KeypadContext: React.Context<KeypadContextType> =\n React.createContext({\n setKeypadActive: (keypadActive) => {},\n keypadActive: false,\n setKeypadElement: (keypadElement) => {},\n keypadElement: null,\n setRenderer: (renderer) => {},\n renderer: null,\n setScrollableElement: (scrollableElement) => {},\n scrollableElement: null,\n });\n\ntype Props = React.PropsWithChildren<unknown>;\n\nexport function StatefulKeypadContextProvider(props: Props) {\n // whether or not to display the keypad\n const [keypadActive, setKeypadActive] = useState<boolean>(false);\n // used to communicate between the keypad and the Renderer\n const [keypadElement, setKeypadElement] = useState<any>();\n // this is a KeypadContextRendererInterface from Perseus\n const [renderer, setRenderer] =\n useState<KeypadContextRendererInterface | null>();\n const [scrollableElement, setScrollableElement] =\n useState<HTMLElement | null>();\n\n const memoizedValue = useMemo(\n () => ({\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n }),\n [\n keypadActive,\n setKeypadActive,\n keypadElement,\n setKeypadElement,\n renderer,\n setRenderer,\n scrollableElement,\n setScrollableElement,\n ],\n );\n\n return (\n <KeypadContext.Provider value={memoizedValue}>\n {props.children}\n </KeypadContext.Provider>\n );\n}\n"],"names":["KeypadContext","React","createContext","setKeypadActive","keypadActive","setKeypadElement","keypadElement","setRenderer","renderer","setScrollableElement","scrollableElement","StatefulKeypadContextProvider","props","useState","memoizedValue","useMemo","createElement","Provider","value","children"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;MACaA,aAA+C,gBACxDC,gBAAK,CAACC,aAAa,CAAC;AAChBC,EAAAA,eAAe,EAAGC,YAAY,IAAK,EAAE;AACrCA,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,gBAAgB,EAAGC,aAAa,IAAK,EAAE;AACvCA,EAAAA,aAAa,EAAE,IAAI;AACnBC,EAAAA,WAAW,EAAGC,QAAQ,IAAK,EAAE;AAC7BA,EAAAA,QAAQ,EAAE,IAAI;AACdC,EAAAA,oBAAoB,EAAGC,iBAAiB,IAAK,EAAE;AAC/CA,EAAAA,iBAAiB,EAAE;AACvB,CAAC;AAIE,SAASC,6BAA6BA,CAACC,KAAY,EAAE;AACxD;EACA,MAAM,CAACR,YAAY,EAAED,eAAe,CAAC,GAAGU,cAAQ,CAAU,KAAK,CAAC;AAChE;EACA,MAAM,CAACP,aAAa,EAAED,gBAAgB,CAAC,GAAGQ,cAAQ,EAAO;AACzD;EACA,MAAM,CAACL,QAAQ,EAAED,WAAW,CAAC,GACzBM,cAAQ,EAAyC;EACrD,MAAM,CAACH,iBAAiB,EAAED,oBAAoB,CAAC,GAC3CI,cAAQ,EAAsB;AAElC,EAAA,MAAMC,aAAa,GAAGC,aAAO,CACzB,OAAO;IACHX,YAAY;IACZD,eAAe;IACfG,aAAa;IACbD,gBAAgB;IAChBG,QAAQ;IACRD,WAAW;IACXG,iBAAiB;AACjBD,IAAAA;AACJ,GAAC,CAAC,EACF,CACIL,YAAY,EACZD,eAAe,EACfG,aAAa,EACbD,gBAAgB,EAChBG,QAAQ,EACRD,WAAW,EACXG,iBAAiB,EACjBD,oBAAoB,CAE5B,CAAC;AAED,EAAA,oBACIR,gBAAA,CAAAe,aAAA,CAAChB,aAAa,CAACiB,QAAQ,EAAA;AAACC,IAAAA,KAAK,EAAEJ;GAC1BF,EAAAA,KAAK,CAACO,QACa,CAAC;AAEjC;;;;;"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Perseus keypad context",
|
|
4
4
|
"author": "Khan Academy",
|
|
5
5
|
"license": "MIT",
|
|
6
|
-
"version": "
|
|
6
|
+
"version": "3.0.0",
|
|
7
7
|
"publishConfig": {
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
@@ -22,12 +22,12 @@
|
|
|
22
22
|
"dist"
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@khanacademy/perseus-core": "
|
|
26
|
-
"@khanacademy/perseus-utils": "0.0
|
|
25
|
+
"@khanacademy/perseus-core": "7.0.0",
|
|
26
|
+
"@khanacademy/perseus-utils": "2.0.0"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"react": "^18.2.0",
|
|
30
|
-
"perseus-build-settings": "0.
|
|
30
|
+
"perseus-build-settings": "0.6.0"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|
|
33
33
|
"react": "^18.2.0"
|