@pie-players/pie-calculator-desmos 0.3.43 → 0.3.44
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desmos-provider.js","sourceRoot":"","sources":["../src/desmos-provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"desmos-provider.js","sourceRoot":"","sources":["../src/desmos-provider.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Desmos Calculator Provider\n * Implementation of CalculatorProvider for Desmos calculators\n *\n * Supports: Basic, Scientific, and Graphing calculators\n * Based on Desmos API v1.10+\n * Requires: Desmos API key (obtain from https://www.desmos.com/api)\n *\n * SECURITY BEST PRACTICE:\n * - Development: Pass apiKey directly for local testing\n * - Production: Use proxyEndpoint to keep API key server-side\n *\n * Example server-side proxy (Express.js):\n * ```\n * app.get('/api/desmos/token', requireAuth, (req, res) => {\n * res.json({ apiKey: process.env.DESMOS_API_KEY });\n * });\n * ```\n */\n\nimport type {\n\tCalculator,\n\tCalculatorProvider,\n\tCalculatorProviderCapabilities,\n\tCalculatorProviderConfig,\n\tCalculatorState,\n\tCalculatorType,\n\tDesmosCalculatorConfig,\n} from \"@pie-players/pie-calculator\";\n\ndeclare global {\n\tinterface Window {\n\t\tDesmos?: any;\n\t}\n}\n\n/**\n * Desmos Calculator Provider Implementation\n */\nexport class DesmosCalculatorProvider implements CalculatorProvider {\n\treadonly providerId = \"desmos\";\n\treadonly providerName = \"Desmos\";\n\treadonly supportedTypes: CalculatorType[] = [\n\t\t\"basic\",\n\t\t\"scientific\",\n\t\t\"graphing\",\n\t];\n\treadonly version = \"1.10\";\n\n\tprivate initialized = false;\n\tprivate apiKey?: string;\n\tprivate proxyEndpoint?: string;\n\tprivate isDevelopment = false;\n\tprivate onTelemetry:\n\t\t| ((eventName: string, payload?: Record<string, unknown>) => void | Promise<void>)\n\t\t| undefined;\n\n\tprivate async emitTelemetry(\n\t\teventName: string,\n\t\tpayload?: Record<string, unknown>,\n\t): Promise<void> {\n\t\ttry {\n\t\t\tawait this.onTelemetry?.(eventName, payload);\n\t\t} catch (error) {\n\t\t\tconsole.warn(\"[DesmosProvider] telemetry callback failed:\", error);\n\t\t}\n\t}\n\n\t/**\n\t * Get the configured API key\n\t * @internal Used internally by calculator instances\n\t */\n\tgetApiKey(): string | undefined {\n\t\treturn this.apiKey;\n\t}\n\n\t/**\n\t * Dynamically load the Desmos calculator library\n\t * @private\n\t */\n\tprivate async loadDesmosScript(): Promise<void> {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tconst script = document.createElement(\"script\");\n\t\t\t// Include API key in script URL if available\n\t\t\tconst scriptUrl = this.apiKey\n\t\t\t\t? `https://www.desmos.com/api/v1.10/calculator.js?apiKey=${this.apiKey}`\n\t\t\t\t: \"https://www.desmos.com/api/v1.10/calculator.js\";\n\t\t\tscript.src = scriptUrl;\n\t\t\tscript.async = true;\n\t\t\tscript.onload = () => {\n\t\t\t\tif (window.Desmos) {\n\t\t\t\t\tconsole.log(\"[DesmosProvider] Desmos API loaded successfully\");\n\t\t\t\t\tresolve();\n\t\t\t\t} else {\n\t\t\t\t\treject(new Error(\"Desmos API loaded but window.Desmos is undefined\"));\n\t\t\t\t}\n\t\t\t};\n\t\t\tscript.onerror = () => {\n\t\t\t\treject(new Error(\"Failed to load Desmos API from CDN\"));\n\t\t\t};\n\t\t\tdocument.head.appendChild(script);\n\t\t});\n\t}\n\n\t/**\n\t * Initialize Desmos library\n\t * @param config Configuration with API key (development) or proxy endpoint (production)\n\t */\n\tasync initialize(config?: {\n\t\tapiKey?: string;\n\t\tproxyEndpoint?: string;\n\t\tonTelemetry?: (\n\t\t\teventName: string,\n\t\t\tpayload?: Record<string, unknown>,\n\t\t) => void | Promise<void>;\n\t}): Promise<void> {\n\t\tif (this.initialized) return;\n\t\tthis.onTelemetry = config?.onTelemetry;\n\n\t\t// SSR guard\n\t\tif (typeof window === \"undefined\") {\n\t\t\tthrow new Error(\n\t\t\t\t\"Desmos calculators can only be initialized in the browser\",\n\t\t\t);\n\t\t}\n\n\t\t// Determine if we're in development mode\n\t\tthis.isDevelopment =\n\t\t\tprocess.env.NODE_ENV === \"development\" ||\n\t\t\ttypeof process === \"undefined\" ||\n\t\t\t!process.env.NODE_ENV;\n\n\t\t// Configure API access pattern\n\t\tif (config?.proxyEndpoint) {\n\t\t\t// Production pattern: server-side proxy\n\t\t\tthis.proxyEndpoint = config.proxyEndpoint;\n\t\t\tconst authStartedAt = Date.now();\n\t\t\tawait this.emitTelemetry(\"pie-tool-backend-call-start\", {\n\t\t\t\ttoolId: \"calculator\",\n\t\t\t\tbackend: \"desmos\",\n\t\t\t\toperation: \"proxy-auth-fetch\",\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tconst response = await fetch(config.proxyEndpoint);\n\t\t\t\tif (!response.ok) {\n\t\t\t\t\tthrow new Error(`Proxy endpoint returned ${response.status}`);\n\t\t\t\t}\n\t\t\t\tconst data = await response.json();\n\t\t\t\tthis.apiKey = data.apiKey;\n\t\t\t\tawait this.emitTelemetry(\"pie-tool-backend-call-success\", {\n\t\t\t\t\ttoolId: \"calculator\",\n\t\t\t\t\tbackend: \"desmos\",\n\t\t\t\t\toperation: \"proxy-auth-fetch\",\n\t\t\t\t\tduration: Date.now() - authStartedAt,\n\t\t\t\t});\n\t\t\t\tconsole.log(\n\t\t\t\t\t\"[DesmosProvider] Initialized with server-side proxy (SECURE)\",\n\t\t\t\t);\n\t\t\t} catch (error) {\n\t\t\t\tawait this.emitTelemetry(\"pie-tool-backend-call-error\", {\n\t\t\t\t\ttoolId: \"calculator\",\n\t\t\t\t\tbackend: \"desmos\",\n\t\t\t\t\toperation: \"proxy-auth-fetch\",\n\t\t\t\t\tduration: Date.now() - authStartedAt,\n\t\t\t\t\terrorType: \"CalculatorProxyAuthError\",\n\t\t\t\t\tmessage: error instanceof Error ? error.message : String(error),\n\t\t\t\t});\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`[DesmosProvider] Failed to fetch API key from proxy: ${error}`,\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (config?.apiKey) {\n\t\t\t// Development pattern: direct API key\n\t\t\tthis.apiKey = config.apiKey;\n\n\t\t\t// Security warning in production\n\t\t\tif (!this.isDevelopment) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t\"⚠️ [DesmosProvider] SECURITY WARNING: API key exposed in client-side code!\\n\" +\n\t\t\t\t\t\t\"This is insecure for production. Use proxyEndpoint instead.\\n\" +\n\t\t\t\t\t\t\"See: https://pie-players.dev/docs/calculator-desmos#security\",\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tconsole.log(\n\t\t\t\t\t\"[DesmosProvider] Initialized with direct API key (DEVELOPMENT MODE)\",\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\t// No API key provided\n\t\t\tconsole.warn(\n\t\t\t\t\"[DesmosProvider] No API key or proxy endpoint provided.\\n\" +\n\t\t\t\t\t\"Production usage requires authentication. Obtain API key from https://www.desmos.com/api\\n\" +\n\t\t\t\t\t\"Recommended: Use proxyEndpoint for production, apiKey for development only.\",\n\t\t\t);\n\t\t}\n\n\t\t// Load Desmos API if not already loaded\n\t\tif (!window.Desmos) {\n\t\t\tconsole.log(\"[DesmosProvider] Loading Desmos API library...\");\n\t\t\tconst libraryLoadStartedAt = Date.now();\n\t\t\tawait this.emitTelemetry(\"pie-tool-library-load-start\", {\n\t\t\t\ttoolId: \"calculator\",\n\t\t\t\tbackend: \"desmos\",\n\t\t\t\toperation: \"desmos-script-load\",\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tawait this.loadDesmosScript();\n\t\t\t\tawait this.emitTelemetry(\"pie-tool-library-load-success\", {\n\t\t\t\t\ttoolId: \"calculator\",\n\t\t\t\t\tbackend: \"desmos\",\n\t\t\t\t\toperation: \"desmos-script-load\",\n\t\t\t\t\tduration: Date.now() - libraryLoadStartedAt,\n\t\t\t\t});\n\t\t\t} catch (error) {\n\t\t\t\tawait this.emitTelemetry(\"pie-tool-library-load-error\", {\n\t\t\t\t\ttoolId: \"calculator\",\n\t\t\t\t\tbackend: \"desmos\",\n\t\t\t\t\toperation: \"desmos-script-load\",\n\t\t\t\t\tduration: Date.now() - libraryLoadStartedAt,\n\t\t\t\t\terrorType: \"ToolLibraryLoadError\",\n\t\t\t\t\tmessage: error instanceof Error ? error.message : String(error),\n\t\t\t\t});\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\tthis.initialized = true;\n\t}\n\n\t/**\n\t * Create a calculator instance\n\t */\n\tasync createCalculator(\n\t\ttype: CalculatorType,\n\t\tcontainer: HTMLElement,\n\t\tconfig?: CalculatorProviderConfig,\n\t): Promise<Calculator> {\n\t\tif (!this.initialized) {\n\t\t\tawait this.initialize();\n\t\t}\n\n\t\tif (!this.supportsType(type)) {\n\t\t\tthrow new Error(`Desmos does not support calculator type: ${type}`);\n\t\t}\n\n\t\treturn new DesmosCalculator(this, type, container, config, this.apiKey);\n\t}\n\n\t/**\n\t * Check if type is supported\n\t */\n\tsupportsType(type: CalculatorType): boolean {\n\t\treturn this.supportedTypes.includes(type);\n\t}\n\n\t/**\n\t * Cleanup\n\t */\n\tdestroy(): void {\n\t\tthis.initialized = false;\n\t\tthis.onTelemetry = undefined;\n\t}\n\n\t/**\n\t * Get provider capabilities\n\t */\n\tgetCapabilities(): CalculatorProviderCapabilities {\n\t\treturn {\n\t\t\tsupportsHistory: false, // Desmos doesn't expose history API\n\t\t\tsupportsGraphing: true,\n\t\t\tsupportsExpressions: true,\n\t\t\tcanExport: true,\n\t\t\tmaxPrecision: 15,\n\t\t\tinputMethods: [\"keyboard\", \"mouse\", \"touch\"],\n\t\t};\n\t}\n}\n\n/**\n * Desmos Calculator Instance\n */\nclass DesmosCalculator implements Calculator {\n\treadonly provider: CalculatorProvider;\n\treadonly type: CalculatorType;\n\n\tprivate Desmos: any;\n\tprivate calculator: any;\n\tprivate container: HTMLElement;\n\n\tconstructor(\n\t\tprovider: CalculatorProvider,\n\t\ttype: CalculatorType,\n\t\tcontainer: HTMLElement,\n\t\tconfig?: CalculatorProviderConfig,\n\t\tapiKey?: string,\n\t) {\n\t\tthis.provider = provider;\n\t\tthis.type = type;\n\t\tthis.container = container;\n\t\tthis.Desmos = window.Desmos;\n\n\t\tif (!this.Desmos) {\n\t\t\tthrow new Error(\"Desmos API not available\");\n\t\t}\n\n\t\tthis._initializeCalculator(config, apiKey);\n\t}\n\n\tprivate _initializeCalculator(\n\t\tconfig?: CalculatorProviderConfig,\n\t\tapiKey?: string,\n\t): void {\n\t\t// Merge Desmos-specific config with defaults\n\t\tconst desmosConfig: DesmosCalculatorConfig = {\n\t\t\t...(config?.desmos || {}),\n\t\t\tapiKey: apiKey || config?.desmos?.apiKey,\n\t\t};\n\n\t\t// Apply restricted mode if specified\n\t\tif (config?.restrictedMode) {\n\t\t\tObject.assign(desmosConfig, {\n\t\t\t\texpressionsTopbar: false,\n\t\t\t\tsettingsMenu: false,\n\t\t\t\tzoomButtons: false,\n\t\t\t\texpressions: false,\n\t\t\t\tlinks: false,\n\t\t\t});\n\t\t}\n\n\t\t// Create appropriate calculator type\n\t\tswitch (this.type) {\n\t\t\tcase \"graphing\":\n\t\t\t\tthis.calculator = this.Desmos.GraphingCalculator(\n\t\t\t\t\tthis.container,\n\t\t\t\t\tdesmosConfig,\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\tcase \"scientific\":\n\t\t\t\tthis.calculator = this.Desmos.ScientificCalculator(\n\t\t\t\t\tthis.container,\n\t\t\t\t\tdesmosConfig,\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\tcase \"basic\":\n\t\t\t\tthis.calculator = this.Desmos.FourFunctionCalculator(\n\t\t\t\t\tthis.container,\n\t\t\t\t\tdesmosConfig,\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unsupported calculator type: ${this.type}`);\n\t\t}\n\n\t\tconsole.log(`[DesmosCalculator] Created ${this.type} calculator`);\n\t}\n\n\tgetValue(): string {\n\t\t// For graphing calculator, get the state\n\t\tif (this.type === \"graphing\" && this.calculator.getState) {\n\t\t\tconst state = this.calculator.getState();\n\t\t\treturn JSON.stringify(state);\n\t\t}\n\t\t// For other calculators, return empty (Desmos doesn't expose value API)\n\t\treturn \"\";\n\t}\n\n\tsetValue(value: string): void {\n\t\t// For graphing calculator, set the state\n\t\tif (this.type === \"graphing\" && this.calculator.setState) {\n\t\t\ttry {\n\t\t\t\tconst state = JSON.parse(value);\n\t\t\t\tthis.calculator.setState(state);\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(\"[DesmosCalculator] Failed to set state:\", error);\n\t\t\t}\n\t\t}\n\t}\n\n\tclear(): void {\n\t\tif (this.calculator.setBlank) {\n\t\t\tthis.calculator.setBlank();\n\t\t}\n\t}\n\n\tasync evaluate(expression: string): Promise<string> {\n\t\t// Desmos doesn't provide a direct evaluate API\n\t\t// For graphing calculator, add expression and observe\n\t\tif (this.type === \"graphing\") {\n\t\t\treturn new Promise((resolve) => {\n\t\t\t\tconst id = `eval_${Date.now()}`;\n\t\t\t\tthis.calculator.setExpression({ id, latex: expression });\n\n\t\t\t\t// Give Desmos time to process\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tconst helperExpression = this.calculator.HelperExpression({\n\t\t\t\t\t\tlatex: expression,\n\t\t\t\t\t});\n\t\t\t\t\tconst result = helperExpression.numericValue || expression;\n\t\t\t\t\tthis.calculator.removeExpression({ id });\n\t\t\t\t\tresolve(String(result));\n\t\t\t\t}, 100);\n\t\t\t});\n\t\t}\n\t\treturn expression;\n\t}\n\n\tresize(): void {\n\t\tif (this.calculator.resize) {\n\t\t\tthis.calculator.resize();\n\t\t}\n\t}\n\n\tfocus(): void {\n\t\ttry {\n\t\t\tif (\n\t\t\t\tthis.type === \"graphing\" &&\n\t\t\t\ttypeof this.calculator?.focusFirstExpression === \"function\"\n\t\t\t) {\n\t\t\t\tthis.calculator.focusFirstExpression();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst target = this.container.querySelector<HTMLElement>(\n\t\t\t\t'.dcg-mq-editable-field[tabindex=\"0\"], textarea, [contenteditable=\"true\"], [tabindex]:not([tabindex=\"-1\"])',\n\t\t\t);\n\t\t\ttarget?.focus();\n\t\t} catch (error) {\n\t\t\tconsole.warn(\"[DesmosCalculator] focus() failed:\", error);\n\t\t}\n\t}\n\n\texportState(): CalculatorState {\n\t\tlet providerState: any = {};\n\n\t\tif (this.type === \"graphing\" && this.calculator.getState) {\n\t\t\tproviderState = this.calculator.getState();\n\t\t}\n\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tprovider: \"desmos\",\n\t\t\tvalue: this.getValue(),\n\t\t\tproviderState,\n\t\t};\n\t}\n\n\timportState(state: CalculatorState): void {\n\t\tif (state.provider !== \"desmos\") {\n\t\t\tthrow new Error(`Cannot import state from provider: ${state.provider}`);\n\t\t}\n\n\t\tif (state.providerState && this.calculator.setState) {\n\t\t\tthis.calculator.setState(state.providerState);\n\t\t} else if (state.value) {\n\t\t\tthis.setValue(state.value);\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tif (this.calculator && this.calculator.destroy) {\n\t\t\tthis.calculator.destroy();\n\t\t}\n\t\tthis.container.replaceChildren();\n\t\tconsole.log(\"[DesmosCalculator] destroyed\");\n\t}\n}\n"]}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["/**\n * @pie-players/pie-calculator-desmos\n *\n * Desmos calculator provider - High-quality graphing calculators.\n */\n\nexport { DesmosCalculatorProvider } from \"./desmos-provider.js\";\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-players/pie-calculator-desmos",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.44",
|
|
4
4
|
"description": "Desmos calculator provider for PIE Assessment Toolkit - High-quality graphing calculators",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"access": "public"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@pie-players/pie-calculator": "0.3.
|
|
41
|
+
"@pie-players/pie-calculator": "0.3.44"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"typescript": "^5.9.3"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"desmos-provider.d.ts","sourceRoot":"","sources":["../src/desmos-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EACX,UAAU,EACV,kBAAkB,EAClB,8BAA8B,EAC9B,wBAAwB,EAExB,cAAc,EAEd,MAAM,6BAA6B,CAAC;AAErC,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,MAAM,CAAC,EAAE,GAAG,CAAC;KACb;CACD;AAED;;GAEG;AACH,qBAAa,wBAAyB,YAAW,kBAAkB;IAClE,QAAQ,CAAC,UAAU,YAAY;IAC/B,QAAQ,CAAC,YAAY,YAAY;IACjC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,CAIvC;IACF,QAAQ,CAAC,OAAO,UAAU;IAE1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,WAAW,CAEN;YAEC,aAAa;IAW3B;;;OAGG;IACH,SAAS,IAAI,MAAM,GAAG,SAAS;IAI/B;;;OAGG;YACW,gBAAgB;IAwB9B;;;OAGG;IACG,UAAU,CAAC,MAAM,CAAC,EAAE;QACzB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,CACb,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC7B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC1B,GAAG,OAAO,CAAC,IAAI,CAAC;IAkHjB;;OAEG;IACG,gBAAgB,CACrB,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,WAAW,EACtB,MAAM,CAAC,EAAE,wBAAwB,GAC/B,OAAO,CAAC,UAAU,CAAC;IAYtB;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO;IAI3C;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,eAAe,IAAI,8BAA8B;CAUjD"}
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC"}
|