@motiadev/plugin-states 0.13.0-beta.162-986908 → 0.13.0-beta.162-439402

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["ReactSharedInternals","require","__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE","exports","c","size","H","useMemoCache","process","env","NODE_ENV","ReactSharedInternals","require","__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE","exports","c","size","dispatcher","H","console","error","useMemoCache","process","env","NODE_ENV","module","exports","require","useCallback","useEffect","useState","StateItem","Output","items","deleteItems","ids","refetch","useGetStateItems","$","_c","t0","Symbol","for","setItems","t1","fetch","then","_temp","catch","_temp2","t2","method","headers","body","JSON","stringify","t3","t4","t5","res","ok","json","err","console","error","create","StatesState","selectedStateId","selectStateId","stateId","useStatesStore","set","undefined","React","JsonView","StateItem","Props","state","StateDetails","FC","t0","$","_c","t1","value","Editor","useMonaco","useThemeStore","FC","useEffect","useMemo","JsonEditorProps","value","height","schema","Record","onChange","onValidate","isValid","language","readOnly","JsonEditor","t0","$","_c","t1","t2","t3","undefined","monaco","theme","_temp","editorTheme","t4","languages","typescript","javascriptDefaults","setCompilerOptions","isolatedModules","json","jsonDefaults","setDiagnosticsOptions","schemas","uri","window","location","href","fileMatch","t5","t6","value_0","t7","markers","length","t8","Symbol","for","enabled","t9","scrollBeyondLastLine","minimap","t10","state","Button","AlertCircle","Check","Loader2","Save","React","useCallback","useEffect","useMemo","useRef","useState","StateItem","JsonEditor","Props","state","StateEditor","FC","isRequestLoading","setIsRequestLoading","isValid","setIsValid","jsonValue","setJsonValue","JSON","stringify","value","hasChanges","setHasChanges","saveStatus","setSaveStatus","lastSavedValue","handleJsonChange","current","handleSave","response","fetch","method","headers","body","key","groupId","parse","ok","Error","status","setTimeout","error","console","resetChanges","statusView","Sidebar","X","React","StateItem","StateDetails","StateEditor","Props","state","onClose","StateSidebar","FC","t0","$","_c","t1","label","content","t2","t3","t4","Symbol","for","t5","icon","onClick","t6","Button","Checkbox","cn","Input","Table","TableBody","TableCell","TableHead","TableHeader","TableRow","RefreshCw","Search","Trash","X","useMemo","useState","useGetStateItems","useStatesStore","StateItem","StateSidebar","StatesPage","$","_c","selectedStateId","_temp","selectStateId","_temp2","items","deleteItems","refetch","search","setSearch","t0","t1","item","groupId","toLowerCase","includes","key","filter","filteredItems","find","item_0","selectedItem","t2","Symbol","for","Set","checkedItems","setCheckedItems","t3","item_1","handleRowClick","t4","undefined","onClose","t5","Array","from","deleteStates","t6","item_2","isChecked","has","prev","newSet","delete","add","handleCheckboxChange","t7","checked","prev_0","newSet_0","forEach","item_3","item_4","toggleSelectAll","t8","t9","e","target","value","t10","t11","t12","t13","t14","size","t15","t16","t17","t18","t19","t20","_temp3","t21","t22","t23","t24","t25","t26","item_5","_temp4","type","map","t27","t28","t29","state","state_0","evt","stopPropagation","evt_0"],"sources":["../../../node_modules/.pnpm/react@19.2.0/node_modules/react/cjs/react-compiler-runtime.production.js","../../../node_modules/.pnpm/react@19.2.0/node_modules/react/cjs/react-compiler-runtime.development.js","../../../node_modules/.pnpm/react@19.2.0/node_modules/react/compiler-runtime.js","../src/hooks/states-hooks.ts","../src/stores/use-states-store.ts","../src/components/state-details.tsx","../src/components/json-editor.tsx","../src/components/state-editor.tsx","../src/components/state-sidebar.tsx","../src/components/states-page.tsx"],"sourcesContent":["/**\n * @license React\n * react-compiler-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar ReactSharedInternals =\n require(\"react\").__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;\nexports.c = function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n};\n","/**\n * @license React\n * react-compiler-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n var ReactSharedInternals =\n require(\"react\").__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;\n exports.c = function (size) {\n var dispatcher = ReactSharedInternals.H;\n null === dispatcher &&\n console.error(\n \"Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.\"\n );\n return dispatcher.useMemoCache(size);\n };\n })();\n","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-compiler-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-compiler-runtime.development.js');\n}\n","import { useCallback, useEffect, useState } from 'react'\nimport type { StateItem } from '../types/state'\n\ntype Output = {\n items: StateItem[]\n deleteItems: (ids: string[]) => void\n refetch: () => void\n}\n\nexport const useGetStateItems = (): Output => {\n const [items, setItems] = useState<StateItem[]>([])\n\n const refetch = useCallback(() => {\n fetch('/__motia/state')\n .then(async (res) => {\n if (res.ok) {\n return res.json()\n } else {\n throw await res.json()\n }\n })\n .then(setItems)\n .catch((err) => console.error(err))\n }, [])\n\n const deleteItems = (ids: string[]) => {\n fetch('/__motia/state/delete', {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ ids }),\n }).then(() => refetch())\n }\n\n useEffect(() => {\n refetch()\n }, [refetch])\n\n return { items, deleteItems, refetch }\n}\n","import { create } from 'zustand'\n\nexport type StatesState = {\n selectedStateId?: string\n selectStateId: (stateId?: string) => void\n}\n\nexport const useStatesStore = create<StatesState>()((set) => ({\n selectedStateId: undefined,\n selectStateId: (stateId) => set({ selectedStateId: stateId }),\n}))\n","import type React from 'react'\nimport JsonView from 'react18-json-view'\nimport type { StateItem } from '../types/state'\n\ntype Props = {\n state: StateItem\n}\n\nexport const StateDetails: React.FC<Props> = ({ state }) => <JsonView src={state.value} theme=\"default\" />\n","import Editor, { useMonaco } from '@monaco-editor/react'\nimport { useThemeStore } from '@motiadev/ui'\nimport { type FC, useEffect, useMemo } from 'react'\n\ntype JsonEditorProps = {\n value: string\n height?: number | string\n schema?: Record<string, unknown>\n onChange?: (value: string) => void\n onValidate?: (isValid: boolean) => void\n language?: string\n readOnly?: boolean\n}\n\nexport const JsonEditor: FC<JsonEditorProps> = ({\n value,\n height = 300,\n schema,\n onChange,\n onValidate,\n language = 'json',\n readOnly = false,\n}) => {\n const monaco = useMonaco()\n const theme = useThemeStore((state) => state.theme)\n const editorTheme = useMemo(() => (theme === 'dark' ? 'vs-dark' : 'light'), [theme])\n\n useEffect(() => {\n if (!monaco) return\n\n monaco.languages.typescript.javascriptDefaults.setCompilerOptions({ isolatedModules: true })\n monaco.languages.json.jsonDefaults.setDiagnosticsOptions({\n schemas: schema\n ? [\n {\n uri: window.location.href,\n fileMatch: ['*'],\n schema,\n },\n ]\n : [],\n })\n }, [monaco, schema, language])\n\n return (\n <Editor\n data-testid=\"json-editor\"\n height={height}\n language={language}\n value={value}\n theme={editorTheme}\n onChange={(value) => {\n if (!value) {\n onValidate?.(false)\n }\n onChange?.(value ?? '')\n }}\n onValidate={(markers) => onValidate?.(markers.length === 0)}\n options={{\n readOnly,\n scrollBeyondLastLine: false,\n minimap: { enabled: false },\n }}\n />\n )\n}\n","import { Button } from '@motiadev/ui'\nimport { AlertCircle, Check, Loader2, Save } from 'lucide-react'\nimport type React from 'react'\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport type { StateItem } from '../types/state'\nimport { JsonEditor } from './json-editor'\n\ntype Props = {\n state: StateItem\n}\n\nexport const StateEditor: React.FC<Props> = ({ state }) => {\n const [isRequestLoading, setIsRequestLoading] = useState(false)\n const [isValid, setIsValid] = useState(true)\n const [jsonValue, setJsonValue] = useState(JSON.stringify(state.value, null, 2))\n const [hasChanges, setHasChanges] = useState(false)\n const [saveStatus, setSaveStatus] = useState<'idle' | 'success' | 'error'>('idle')\n const lastSavedValue = useRef(JSON.stringify(state.value, null, 2))\n useEffect(() => {\n setJsonValue(JSON.stringify(state.value, null, 2))\n }, [state.value])\n\n const handleJsonChange = useCallback((value: string) => {\n setHasChanges(value !== lastSavedValue.current)\n setJsonValue(value)\n setSaveStatus('idle')\n }, [])\n\n const handleSave = async () => {\n if (!isValid || !hasChanges) return\n\n try {\n setIsRequestLoading(true)\n setSaveStatus('idle')\n\n const response = await fetch('/__motia/state', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n key: state.key,\n groupId: state.groupId,\n value: JSON.parse(jsonValue),\n }),\n })\n\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`)\n }\n\n lastSavedValue.current = jsonValue\n setSaveStatus('success')\n setHasChanges(false)\n\n setTimeout(() => {\n setSaveStatus('idle')\n }, 3000)\n } catch (error) {\n console.error('Failed to save state:', error)\n setSaveStatus('error')\n } finally {\n setIsRequestLoading(false)\n }\n }\n\n const resetChanges = useCallback(() => {\n setJsonValue(JSON.stringify(state.value, null, 2))\n setHasChanges(false)\n setSaveStatus('idle')\n }, [state.value])\n\n const statusView = useMemo(() => {\n if (saveStatus === 'success') {\n return (\n <div className=\"bg-green-50 dark:bg-green-950/20 border border-green-200 dark:border-green-800 rounded-lg p-2\">\n <div className=\"flex items-center gap-2 text-green-700 dark:text-green-400 text-sm\">\n <Check className=\"w-4 h-4\" />\n State saved successfully!\n </div>\n </div>\n )\n }\n\n if (saveStatus === 'error') {\n return (\n <div className=\"bg-red-50 dark:bg-red-950/20 border border-red-200 dark:border-red-800 rounded-lg p-2\">\n <div className=\"flex items-center gap-2 text-red-700 dark:text-red-400 text-sm\">\n <AlertCircle className=\"w-4 h-4\" />\n Failed to save state. Please try again.\n </div>\n </div>\n )\n }\n\n return (\n <div className=\"text-xs text-muted-foreground\">\n {hasChanges ? (\n <span className=\"flex items-center gap-1\">\n <div className=\"w-2 h-2 bg-orange-500 rounded-full\"></div>\n Unsaved changes\n </span>\n ) : (\n <span className=\"flex items-center gap-1\">\n <div className=\"w-2 h-2 bg-green-500 rounded-full\"></div>\n Up to date\n </span>\n )}\n </div>\n )\n }, [saveStatus, hasChanges])\n\n return (\n <div className=\"flex flex-col gap-2 h-full\">\n <p className=\"text-xs text-muted-foreground\">Modify the state value using the JSON editor below.</p>\n <div className=\"space-y-3 pt-2 flex flex-col\">\n <div className=\"relative flex-1\">\n <JsonEditor\n value={jsonValue}\n onChange={handleJsonChange}\n onValidate={setIsValid}\n height={'calc(100vh - 300px)'}\n />\n\n {!isValid && (\n <div className=\"absolute top-2 right-2 bg-destructive/90 text-destructive-foreground px-2 py-1 rounded text-xs flex items-center gap-1\">\n <AlertCircle className=\"w-3 h-3\" />\n Invalid JSON\n </div>\n )}\n </div>\n </div>\n\n <div className=\"flex items-center justify-between pt-2\">\n {statusView}\n\n <div className=\"flex items-center gap-2\">\n {hasChanges && (\n <Button variant=\"secondary\" onClick={resetChanges} disabled={isRequestLoading}>\n Reset\n </Button>\n )}\n\n <Button\n onClick={handleSave}\n variant=\"accent\"\n disabled={isRequestLoading || !isValid || !hasChanges}\n data-testid=\"state-save-button\"\n >\n {isRequestLoading ? (\n <>\n <Loader2 className=\"w-3 h-3 animate-spin mr-1\" />\n Saving...\n </>\n ) : (\n <>\n <Save className=\"w-3 h-3 mr-1\" />\n Save Changes\n </>\n )}\n </Button>\n </div>\n </div>\n </div>\n )\n}\n","import { Sidebar } from '@motiadev/ui'\nimport { X } from 'lucide-react'\nimport type React from 'react'\nimport type { StateItem } from '../types/state'\nimport { StateDetails } from './state-details'\nimport { StateEditor } from './state-editor'\n\ntype Props = {\n state: StateItem\n onClose: () => void\n}\n\nexport const StateSidebar: React.FC<Props> = ({ state, onClose }) => {\n return (\n <Sidebar\n onClose={onClose}\n title=\"State Details\"\n initialWidth={500}\n tabs={[\n {\n label: 'Overview',\n content: <StateDetails state={state} />,\n },\n {\n label: 'Editor',\n content: <StateEditor state={state} />,\n },\n ]}\n actions={[{ icon: <X />, onClick: onClose, label: 'Close' }]}\n />\n )\n}\n","import {\n Button,\n Checkbox,\n cn,\n Input,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from '@motiadev/ui'\nimport { RefreshCw, Search, Trash, X } from 'lucide-react'\nimport { useMemo, useState } from 'react'\nimport { useGetStateItems } from '../hooks/states-hooks'\nimport { useStatesStore } from '../stores/use-states-store'\nimport type { StateItem } from '../types/state'\nimport { StateSidebar } from './state-sidebar'\n\nexport const StatesPage = () => {\n const selectedStateId = useStatesStore((state) => state.selectedStateId)\n const selectStateId = useStatesStore((state) => state.selectStateId)\n const { items, deleteItems, refetch } = useGetStateItems()\n const [search, setSearch] = useState('')\n const filteredItems = useMemo(() => {\n return items.filter((item) => {\n return (\n item.groupId.toLowerCase().includes(search.toLowerCase()) ||\n item.key.toLowerCase().includes(search.toLowerCase())\n )\n })\n }, [items, search])\n const selectedItem = useMemo(\n () => (selectedStateId ? filteredItems.find((item) => `${item.groupId}:${item.key}` === selectedStateId) : null),\n [filteredItems, selectedStateId],\n )\n\n const [checkedItems, setCheckedItems] = useState<Set<string>>(new Set())\n const handleRowClick = (item: StateItem) => selectStateId(`${item.groupId}:${item.key}`)\n const onClose = () => selectStateId(undefined)\n const deleteStates = () => {\n deleteItems(Array.from(checkedItems))\n setCheckedItems(new Set())\n }\n\n const handleCheckboxChange = (item: StateItem) => {\n const isChecked = checkedItems.has(`${item.groupId}:${item.key}`)\n\n setCheckedItems((prev) => {\n const newSet = new Set(prev)\n if (isChecked) {\n newSet.delete(`${item.groupId}:${item.key}`)\n } else {\n newSet.add(`${item.groupId}:${item.key}`)\n }\n return newSet\n })\n }\n\n const toggleSelectAll = (checked: boolean) => {\n setCheckedItems((prev) => {\n const newSet = new Set(prev)\n\n if (checked) {\n filteredItems.forEach((item) => {\n newSet.add(`${item.groupId}:${item.key}`)\n })\n } else {\n filteredItems.forEach((item) => {\n newSet.delete(`${item.groupId}:${item.key}`)\n })\n }\n return newSet\n })\n }\n\n return (\n <>\n {selectedItem && <StateSidebar state={selectedItem} onClose={onClose} />}\n <div className=\"grid grid-rows-[auto_1fr] h-full\" data-testid=\"states-container\">\n <div className=\"flex p-2 border-b gap-2\" data-testid=\"logs-search-container\">\n <div className=\"flex-1 relative\">\n <Input\n variant=\"shade\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n className=\"px-9! font-medium\"\n placeholder=\"Search by Group ID or Key\"\n />\n <Search className=\"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground/50\" />\n <X\n className=\"cursor-pointer absolute right-3 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground/50 hover:text-muted-foreground\"\n onClick={() => setSearch('')}\n />\n </div>\n <Button variant=\"default\" className=\"h-[34px]\" disabled={checkedItems.size === 0} onClick={deleteStates}>\n <Trash /> Delete\n </Button>\n <Button variant=\"default\" className=\"h-[34px]\" onClick={refetch}>\n <RefreshCw className=\"w-4 h-4 text-muted-foreground\" />\n </Button>\n </div>\n\n <Table>\n <TableHeader className=\"sticky top-0 bg-background/20 backdrop-blur-sm\">\n <TableRow>\n <TableHead>\n <Checkbox onClick={(evt) => evt.stopPropagation()} onCheckedChange={toggleSelectAll} />\n </TableHead>\n <TableHead className=\"rounded-0\">Group ID</TableHead>\n <TableHead>Key</TableHead>\n <TableHead>Type</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {filteredItems.map((item) => (\n <TableRow\n data-testid={`item-${item}`}\n key={`${item.groupId}:${item.key}`}\n onClick={() => handleRowClick(item)}\n className={cn(\n 'font-mono font-semibold cursor-pointer border-0',\n selectedItem === item\n ? 'bg-muted-foreground/10 hover:bg-muted-foreground/20'\n : 'hover:bg-muted-foreground/10',\n )}\n >\n <TableCell onClick={(evt) => evt.stopPropagation()}>\n <Checkbox\n checked={checkedItems.has(`${item.groupId}:${item.key}`)}\n onClick={() => handleCheckboxChange(item)}\n />\n </TableCell>\n <TableCell className=\"hover:bg-transparent\">{item.groupId}</TableCell>\n <TableCell className=\"hover:bg-transparent\">{item.key}</TableCell>\n <TableCell className=\"hover:bg-transparent\">{item.type}</TableCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </>\n )\n}\n"],"x_google_ignoreList":[0,1,2],"mappings":"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"}
package/dist/plugin.d.ts CHANGED
@@ -1,3 +1,7 @@
1
- import { MotiaPlugin, MotiaPluginContext } from '@motiadev/core';
2
- export default function plugin(motia: MotiaPluginContext): MotiaPlugin;
1
+ import { MotiaPlugin, MotiaPluginContext } from "@motiadev/core";
2
+
3
+ //#region src/plugin.d.ts
4
+ declare function plugin(motia: MotiaPluginContext): MotiaPlugin;
5
+ //#endregion
6
+ export { plugin as default };
3
7
  //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAGrE,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,WAAW,CAerE"}
1
+ {"version":3,"file":"plugin.d.ts","names":[],"sources":["../src/plugin.ts"],"sourcesContent":[],"mappings":";;;iBAGwB,MAAA,QAAc,qBAAqB"}
package/dist/plugin.js CHANGED
@@ -1,80 +1,85 @@
1
- const i = (s) => {
2
- s.registerApi(
3
- {
4
- method: "GET",
5
- path: "/__motia/state"
6
- },
7
- async (r) => {
8
- try {
9
- const e = r.queryParams.groupId, t = r.queryParams.filter ? JSON.parse(r.queryParams.filter) : void 0;
10
- return {
11
- status: 200,
12
- body: await s.state.items({ groupId: e, filter: t })
13
- };
14
- } catch (e) {
15
- return {
16
- status: 500,
17
- body: { error: e instanceof Error ? e.message : "Unknown error" }
18
- };
19
- }
20
- }
21
- ), s.registerApi(
22
- {
23
- method: "POST",
24
- path: "/__motia/state"
25
- },
26
- async (r, e) => {
27
- try {
28
- const { key: t, groupId: a, value: o } = r.body;
29
- return await e.state.set(a, t, o), {
30
- status: 200,
31
- body: { key: t, groupId: a, value: o }
32
- };
33
- } catch (t) {
34
- return {
35
- status: 500,
36
- body: { error: t instanceof Error ? t.message : "Unknown error" }
37
- };
38
- }
39
- }
40
- ), s.registerApi(
41
- {
42
- method: "POST",
43
- path: "/__motia/state/delete"
44
- },
45
- async (r, e) => {
46
- try {
47
- for (const t of r.body.ids) {
48
- const [a, ...o] = t.split(":"), n = o.join(":");
49
- await e.state.delete(a, n);
50
- }
51
- return {
52
- status: 204,
53
- body: ""
54
- };
55
- } catch (t) {
56
- return {
57
- status: 500,
58
- body: { error: t instanceof Error ? t.message : "Unknown error" }
59
- };
60
- }
61
- }
62
- );
1
+ //#region src/api.ts
2
+ const api = (motia) => {
3
+ motia.registerApi({
4
+ method: "GET",
5
+ path: "/__motia/state"
6
+ }, async (req) => {
7
+ try {
8
+ const groupId = req.queryParams.groupId;
9
+ const filter = req.queryParams.filter ? JSON.parse(req.queryParams.filter) : void 0;
10
+ return {
11
+ status: 200,
12
+ body: await motia.state.items({
13
+ groupId,
14
+ filter
15
+ })
16
+ };
17
+ } catch (error) {
18
+ return {
19
+ status: 500,
20
+ body: { error: error instanceof Error ? error.message : "Unknown error" }
21
+ };
22
+ }
23
+ });
24
+ motia.registerApi({
25
+ method: "POST",
26
+ path: "/__motia/state"
27
+ }, async (req, ctx) => {
28
+ try {
29
+ const { key, groupId, value } = req.body;
30
+ await ctx.state.set(groupId, key, value);
31
+ return {
32
+ status: 200,
33
+ body: {
34
+ key,
35
+ groupId,
36
+ value
37
+ }
38
+ };
39
+ } catch (error) {
40
+ return {
41
+ status: 500,
42
+ body: { error: error instanceof Error ? error.message : "Unknown error" }
43
+ };
44
+ }
45
+ });
46
+ motia.registerApi({
47
+ method: "POST",
48
+ path: "/__motia/state/delete"
49
+ }, async (req, ctx) => {
50
+ try {
51
+ for (const id of req.body.ids) {
52
+ const [groupId, ...keyParts] = id.split(":");
53
+ const key = keyParts.join(":");
54
+ await ctx.state.delete(groupId, key);
55
+ }
56
+ return {
57
+ status: 204,
58
+ body: ""
59
+ };
60
+ } catch (error) {
61
+ return {
62
+ status: 500,
63
+ body: { error: error instanceof Error ? error.message : "Unknown error" }
64
+ };
65
+ }
66
+ });
63
67
  };
64
- function c(s) {
65
- return i(s), {
66
- workbench: [
67
- {
68
- packageName: "@motiadev/plugin-states",
69
- cssImports: ["@motiadev/plugin-states/dist/plugin-states.css"],
70
- label: "States",
71
- position: "bottom",
72
- componentName: "StatesPage",
73
- labelIcon: "file"
74
- }
75
- ]
76
- };
68
+
69
+ //#endregion
70
+ //#region src/plugin.ts
71
+ function plugin(motia) {
72
+ api(motia);
73
+ return { workbench: [{
74
+ packageName: "@motiadev/plugin-states",
75
+ cssImports: ["@motiadev/plugin-states/dist/index.css"],
76
+ label: "States",
77
+ position: "bottom",
78
+ componentName: "StatesPage",
79
+ labelIcon: "file"
80
+ }] };
77
81
  }
78
- export {
79
- c as default
80
- };
82
+
83
+ //#endregion
84
+ export { plugin as default };
85
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","names":["ApiRequest","ApiResponse","FlowContext","MotiaPluginContext","api","motia","registerApi","method","path","req","Promise","groupId","queryParams","filter","JSON","parse","undefined","items","state","status","body","Record","error","Error","message","ctx","key","value","set","id","ids","keyParts","split","join","delete","MotiaPlugin","MotiaPluginContext","api","plugin","motia","workbench","packageName","cssImports","label","position","componentName","labelIcon"],"sources":["../src/api.ts","../src/plugin.ts"],"sourcesContent":["import type { ApiRequest, ApiResponse, FlowContext, MotiaPluginContext } from '@motiadev/core'\n\nexport const api = (motia: MotiaPluginContext): void => {\n motia.registerApi(\n {\n method: 'GET',\n path: '/__motia/state',\n },\n async (req: ApiRequest): Promise<ApiResponse> => {\n try {\n const groupId = req.queryParams.groupId as string | undefined\n const filter = req.queryParams.filter ? JSON.parse(req.queryParams.filter as string) : undefined\n const items = await motia.state.items({ groupId, filter })\n\n return {\n status: 200,\n body: items as unknown as Record<string, unknown>,\n }\n } catch (error: unknown) {\n return {\n status: 500,\n body: { error: error instanceof Error ? error.message : 'Unknown error' },\n }\n }\n },\n )\n\n motia.registerApi(\n {\n method: 'POST',\n path: '/__motia/state',\n },\n async (req: ApiRequest, ctx: FlowContext): Promise<ApiResponse> => {\n try {\n const { key, groupId, value } = req.body as { key: string; groupId: string; value: any }\n await ctx.state.set(groupId, key, value)\n return {\n status: 200,\n body: { key, groupId, value },\n }\n } catch (error: unknown) {\n return {\n status: 500,\n body: { error: error instanceof Error ? error.message : 'Unknown error' },\n }\n }\n },\n )\n\n motia.registerApi(\n {\n method: 'POST',\n path: '/__motia/state/delete',\n },\n async (req: ApiRequest, ctx: FlowContext): Promise<ApiResponse> => {\n try {\n for (const id of (req.body as { ids: string[] }).ids) {\n const [groupId, ...keyParts] = id.split(':')\n const key = keyParts.join(':')\n await ctx.state.delete(groupId, key)\n }\n\n return {\n status: 204,\n body: '',\n }\n } catch (error: unknown) {\n return {\n status: 500,\n body: { error: error instanceof Error ? error.message : 'Unknown error' },\n }\n }\n },\n )\n}\n","import type { MotiaPlugin, MotiaPluginContext } from '@motiadev/core'\nimport { api } from './api'\n\nexport default function plugin(motia: MotiaPluginContext): MotiaPlugin {\n api(motia)\n\n return {\n workbench: [\n {\n packageName: '@motiadev/plugin-states',\n cssImports: ['@motiadev/plugin-states/dist/index.css'],\n label: 'States',\n position: 'bottom',\n componentName: 'StatesPage',\n labelIcon: 'file',\n },\n ],\n }\n}\n"],"mappings":";AAEA,MAAaI,OAAOC,UAAoC;AACtDA,OAAMC,YACJ;EACEC,QAAQ;EACRC,MAAM;EACP,EACD,OAAOC,QAA0C;AAC/C,MAAI;GACF,MAAME,UAAUF,IAAIG,YAAYD;GAChC,MAAME,SAASJ,IAAIG,YAAYC,SAASC,KAAKC,MAAMN,IAAIG,YAAYC,OAAiB,GAAGG;AAGvF,UAAO;IACLG,QAAQ;IACRC,MAJY,MAAMf,MAAMa,MAAMD,MAAM;KAAEN;KAASE;KAAQ,CAAC;IAKzD;WACMS,OAAgB;AACvB,UAAO;IACLH,QAAQ;IACRC,MAAM,EAAEE,OAAOA,iBAAiBC,QAAQD,MAAME,UAAU,iBAAgB;IACzE;;GAGN;AAEDnB,OAAMC,YACJ;EACEC,QAAQ;EACRC,MAAM;EACP,EACD,OAAOC,KAAiBgB,QAA2C;AACjE,MAAI;GACF,MAAM,EAAEC,KAAKf,SAASgB,UAAUlB,IAAIW;AACpC,SAAMK,IAAIP,MAAMU,IAAIjB,SAASe,KAAKC,MAAM;AACxC,UAAO;IACLR,QAAQ;IACRC,MAAM;KAAEM;KAAKf;KAASgB;KAAM;IAC7B;WACML,OAAgB;AACvB,UAAO;IACLH,QAAQ;IACRC,MAAM,EAAEE,OAAOA,iBAAiBC,QAAQD,MAAME,UAAU,iBAAgB;IACzE;;GAGN;AAEDnB,OAAMC,YACJ;EACEC,QAAQ;EACRC,MAAM;EACP,EACD,OAAOC,KAAiBgB,QAA2C;AACjE,MAAI;AACF,QAAK,MAAMI,MAAOpB,IAAIW,KAA2BU,KAAK;IACpD,MAAM,CAACnB,SAAS,GAAGoB,YAAYF,GAAGG,MAAM,IAAI;IAC5C,MAAMN,MAAMK,SAASE,KAAK,IAAI;AAC9B,UAAMR,IAAIP,MAAMgB,OAAOvB,SAASe,IAAI;;AAGtC,UAAO;IACLP,QAAQ;IACRC,MAAM;IACP;WACME,OAAgB;AACvB,UAAO;IACLH,QAAQ;IACRC,MAAM,EAAEE,OAAOA,iBAAiBC,QAAQD,MAAME,UAAU,iBAAgB;IACzE;;GAGN;;;;;ACtEH,SAAwBc,OAAOC,OAAwC;AACrEF,KAAIE,MAAM;AAEV,QAAO,EACLC,WAAW,CACT;EACEC,aAAa;EACbC,YAAY,CAAC,yCAAyC;EACtDC,OAAO;EACPC,UAAU;EACVC,eAAe;EACfC,WAAW;EACZ,CAAA,EAEJ"}
package/package.json CHANGED
@@ -1,51 +1,45 @@
1
1
  {
2
2
  "name": "@motiadev/plugin-states",
3
- "version": "0.13.0-beta.162-986908",
3
+ "version": "0.13.0-beta.162-439402",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
8
8
  "exports": {
9
- ".": {
10
- "types": "./dist/index.d.ts",
11
- "import": "./dist/index.js",
12
- "require": "./dist/index.cjs"
13
- },
14
- "./plugin": {
15
- "types": "./dist/plugin.d.ts",
16
- "import": "./dist/plugin.js",
17
- "require": "./dist/plugin.cjs"
18
- },
19
- "./styles.css": "./dist/plugin-states.css"
9
+ ".": "./dist/index.js",
10
+ "./plugin": "./dist/plugin.js",
11
+ "./package.json": "./package.json"
20
12
  },
21
13
  "files": [
22
14
  "dist"
23
15
  ],
24
16
  "dependencies": {
25
17
  "@monaco-editor/react": "^4.7.0",
26
- "lucide-react": "^0.545.0",
18
+ "lucide-react": "^0.554.0",
27
19
  "react18-json-view": "^0.2.9",
28
20
  "zustand": "^5.0.8"
29
21
  },
30
22
  "peerDependencies": {
31
- "@motiadev/stream-client-browser": "0.13.0-beta.162-986908",
32
- "@motiadev/ui": "0.13.0-beta.162-986908",
33
- "@motiadev/core": "0.13.0-beta.162-986908"
23
+ "@motiadev/stream-client-browser": "0.13.0-beta.162-439402",
24
+ "@motiadev/core": "0.13.0-beta.162-439402",
25
+ "@motiadev/ui": "0.13.0-beta.162-439402"
34
26
  },
35
27
  "devDependencies": {
36
- "@tailwindcss/vite": "^4.1.14",
37
- "@types/node": "^24.7.2",
38
- "@types/react": "^19.2.2",
39
- "@vitejs/plugin-react": "^5.0.4",
28
+ "@bosh-code/tsdown-plugin-inject-css": "^2.0.0",
29
+ "@bosh-code/tsdown-plugin-tailwindcss": "^1.0.1",
30
+ "@rollup/plugin-babel": "^6.1.0",
31
+ "@tailwindcss/postcss": "^4.1.17",
32
+ "@types/node": "^24.10.1",
33
+ "@types/react": "^19.2.7",
34
+ "babel-plugin-react-compiler": "^1.0.0",
40
35
  "react": "^19.2.0",
41
- "tailwindcss": "^4.1.14",
42
- "typescript": "^5.9.3",
43
- "vite": "^7.1.10",
44
- "vite-plugin-dts": "^4.5.4"
36
+ "tailwindcss": "^4.1.17",
37
+ "tsdown": "^0.16.6",
38
+ "typescript": "^5.9.3"
45
39
  },
46
40
  "scripts": {
47
- "build": "vite build",
48
- "dev": "vite build --watch",
41
+ "build": "tsdown",
42
+ "dev": "tsdown --watch",
49
43
  "clean": "rm -rf dist"
50
44
  }
51
45
  }
package/dist/api.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import { MotiaPluginContext } from '@motiadev/core';
2
- export declare const api: (motia: MotiaPluginContext) => void;
3
- //# sourceMappingURL=api.d.ts.map
package/dist/api.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwC,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAE9F,eAAO,MAAM,GAAG,GAAI,OAAO,kBAAkB,KAAG,IAwE/C,CAAA"}
@@ -1,13 +0,0 @@
1
- import { FC } from 'react';
2
- type JsonEditorProps = {
3
- value: string;
4
- height?: number | string;
5
- schema?: Record<string, unknown>;
6
- onChange?: (value: string) => void;
7
- onValidate?: (isValid: boolean) => void;
8
- language?: string;
9
- readOnly?: boolean;
10
- };
11
- export declare const JsonEditor: FC<JsonEditorProps>;
12
- export {};
13
- //# sourceMappingURL=json-editor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-editor.d.ts","sourceRoot":"","sources":["../../src/components/json-editor.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,EAAsB,MAAM,OAAO,CAAA;AAEnD,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAmD1C,CAAA"}
@@ -1,8 +0,0 @@
1
- import { default as React } from 'react';
2
- import { StateItem } from '../types/state';
3
- type Props = {
4
- state: StateItem;
5
- };
6
- export declare const StateDetails: React.FC<Props>;
7
- export {};
8
- //# sourceMappingURL=state-details.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state-details.d.ts","sourceRoot":"","sources":["../../src/components/state-details.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAiE,CAAA"}
@@ -1,8 +0,0 @@
1
- import { default as React } from 'react';
2
- import { StateItem } from '../types/state';
3
- type Props = {
4
- state: StateItem;
5
- };
6
- export declare const StateEditor: React.FC<Props>;
7
- export {};
8
- //# sourceMappingURL=state-editor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state-editor.d.ts","sourceRoot":"","sources":["../../src/components/state-editor.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAG/C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA0JvC,CAAA"}
@@ -1,9 +0,0 @@
1
- import { default as React } from 'react';
2
- import { StateItem } from '../types/state';
3
- type Props = {
4
- state: StateItem;
5
- onClose: () => void;
6
- };
7
- export declare const StateSidebar: React.FC<Props>;
8
- export {};
9
- //# sourceMappingURL=state-sidebar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state-sidebar.d.ts","sourceRoot":"","sources":["../../src/components/state-sidebar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAI/C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,SAAS,CAAA;IAChB,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAmBxC,CAAA"}
@@ -1,2 +0,0 @@
1
- export declare const StatesTabLabel: import('react').MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
- //# sourceMappingURL=state-tab-label.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state-tab-label.d.ts","sourceRoot":"","sources":["../../src/components/state-tab-label.tsx"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc,oFAKzB,CAAA"}
@@ -1,2 +0,0 @@
1
- export declare const StatesPage: () => import("react/jsx-runtime").JSX.Element;
2
- //# sourceMappingURL=states-page.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"states-page.d.ts","sourceRoot":"","sources":["../../src/components/states-page.tsx"],"names":[],"mappings":"AAsBA,eAAO,MAAM,UAAU,+CAwHtB,CAAA"}
@@ -1,9 +0,0 @@
1
- import { StateItem } from '../types/state';
2
- type Output = {
3
- items: StateItem[];
4
- deleteItems: (ids: string[]) => void;
5
- refetch: () => void;
6
- };
7
- export declare const useGetStateItems: () => Output;
8
- export {};
9
- //# sourceMappingURL=states-hooks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"states-hooks.d.ts","sourceRoot":"","sources":["../../src/hooks/states-hooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACpC,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAO,MA6BnC,CAAA"}