@dxos/plugin-wnfs 0.8.3 → 0.8.4-main.1da679c

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.
Files changed (72) hide show
  1. package/dist/lib/browser/{FileContainer-7YOCEQ6P.mjs → FileContainer-CNZDVRG5.mjs} +38 -41
  2. package/dist/lib/browser/FileContainer-CNZDVRG5.mjs.map +7 -0
  3. package/dist/lib/browser/blockstore-AICVJ7HY.mjs +273 -0
  4. package/dist/lib/browser/blockstore-AICVJ7HY.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-4XHHV7ZE.mjs +16 -0
  6. package/dist/lib/browser/{chunk-SCL6PT4P.mjs → chunk-CW4BENRQ.mjs} +4 -4
  7. package/dist/lib/browser/{chunk-SCL6PT4P.mjs.map → chunk-CW4BENRQ.mjs.map} +2 -2
  8. package/dist/lib/browser/{chunk-YYAW4U6J.mjs → chunk-D6VTEQIE.mjs} +8 -8
  9. package/dist/lib/browser/{chunk-YYAW4U6J.mjs.map → chunk-D6VTEQIE.mjs.map} +3 -3
  10. package/dist/lib/browser/{chunk-DL7BBH57.mjs → chunk-KZANQHJY.mjs} +3 -3
  11. package/dist/lib/browser/{chunk-PHTWWADN.mjs → chunk-VDDGZWAY.mjs} +2 -2
  12. package/dist/lib/browser/{file-uploader-RHINBPDQ.mjs → file-uploader-RXUX4WWK.mjs} +6 -6
  13. package/dist/lib/browser/{file-uploader-RHINBPDQ.mjs.map → file-uploader-RXUX4WWK.mjs.map} +2 -2
  14. package/dist/lib/browser/index.mjs +13 -11
  15. package/dist/lib/browser/index.mjs.map +3 -3
  16. package/dist/lib/browser/{intent-resolver-JDRRPIZC.mjs → intent-resolver-SJHCR77B.mjs} +9 -9
  17. package/dist/lib/browser/intent-resolver-SJHCR77B.mjs.map +7 -0
  18. package/dist/lib/browser/{markdown-BWBHUHHH.mjs → markdown-R7FKWIPJ.mjs} +26 -13
  19. package/dist/lib/browser/markdown-R7FKWIPJ.mjs.map +7 -0
  20. package/dist/lib/browser/meta.json +1 -1
  21. package/dist/lib/browser/{react-surface-6GM4J4YG.mjs → react-surface-UOBYZYX5.mjs} +12 -12
  22. package/dist/lib/browser/{react-surface-6GM4J4YG.mjs.map → react-surface-UOBYZYX5.mjs.map} +3 -3
  23. package/dist/lib/browser/types/index.mjs +2 -2
  24. package/dist/types/src/capabilities/blockstore.d.ts +1 -1
  25. package/dist/types/src/capabilities/blockstore.d.ts.map +1 -1
  26. package/dist/types/src/capabilities/file-uploader.d.ts +1 -1
  27. package/dist/types/src/capabilities/file-uploader.d.ts.map +1 -1
  28. package/dist/types/src/capabilities/index.d.ts +5 -5
  29. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  30. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  31. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  32. package/dist/types/src/capabilities/markdown.d.ts +1 -1
  33. package/dist/types/src/capabilities/markdown.d.ts.map +1 -1
  34. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  35. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  36. package/dist/types/src/components/FileContainer.d.ts +4 -3
  37. package/dist/types/src/components/FileContainer.d.ts.map +1 -1
  38. package/dist/types/src/components/index.d.ts +1 -4
  39. package/dist/types/src/components/index.d.ts.map +1 -1
  40. package/dist/types/src/extensions/image.stories.d.ts +5 -3
  41. package/dist/types/src/extensions/image.stories.d.ts.map +1 -1
  42. package/dist/types/src/helpers/load.d.ts +1 -1
  43. package/dist/types/src/helpers/load.d.ts.map +1 -1
  44. package/dist/types/src/helpers/upload.d.ts.map +1 -1
  45. package/dist/types/src/translations.d.ts +13 -11
  46. package/dist/types/src/translations.d.ts.map +1 -1
  47. package/dist/types/src/types/types.d.ts.map +1 -1
  48. package/dist/types/tsconfig.tsbuildinfo +1 -1
  49. package/package.json +30 -30
  50. package/src/WnfsPlugin.tsx +1 -1
  51. package/src/blockstore.ts +2 -2
  52. package/src/capabilities/blockstore.ts +3 -2
  53. package/src/capabilities/file-uploader.ts +1 -1
  54. package/src/capabilities/intent-resolver.ts +3 -2
  55. package/src/capabilities/markdown.ts +3 -2
  56. package/src/capabilities/react-surface.tsx +1 -1
  57. package/src/components/FileContainer.tsx +18 -15
  58. package/src/extensions/image.stories.tsx +14 -8
  59. package/src/extensions/image.tsx +3 -3
  60. package/src/helpers/load.ts +3 -2
  61. package/src/helpers/upload.ts +2 -1
  62. package/src/translations.ts +8 -4
  63. package/src/types/types.ts +2 -1
  64. package/dist/lib/browser/FileContainer-7YOCEQ6P.mjs.map +0 -7
  65. package/dist/lib/browser/blockstore-UT7233RJ.mjs +0 -191
  66. package/dist/lib/browser/blockstore-UT7233RJ.mjs.map +0 -7
  67. package/dist/lib/browser/chunk-WJVYRUYQ.mjs +0 -16
  68. package/dist/lib/browser/intent-resolver-JDRRPIZC.mjs.map +0 -7
  69. package/dist/lib/browser/markdown-BWBHUHHH.mjs.map +0 -7
  70. /package/dist/lib/browser/{chunk-WJVYRUYQ.mjs.map → chunk-4XHHV7ZE.mjs.map} +0 -0
  71. /package/dist/lib/browser/{chunk-DL7BBH57.mjs.map → chunk-KZANQHJY.mjs.map} +0 -0
  72. /package/dist/lib/browser/{chunk-PHTWWADN.mjs.map → chunk-VDDGZWAY.mjs.map} +0 -0
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  FileType,
3
3
  WnfsAction
4
- } from "./chunk-SCL6PT4P.mjs";
4
+ } from "./chunk-CW4BENRQ.mjs";
5
5
  import {
6
6
  WNFS_PLUGIN
7
- } from "./chunk-PHTWWADN.mjs";
7
+ } from "./chunk-VDDGZWAY.mjs";
8
8
 
9
- // packages/plugins/plugin-wnfs/src/capabilities/react-surface.tsx
9
+ // src/capabilities/react-surface.tsx
10
10
  import React2, { useCallback as useCallback2 } from "react";
11
- import { contributes, Capabilities, createSurface } from "@dxos/app-framework";
11
+ import { Capabilities, contributes, createSurface } from "@dxos/app-framework";
12
12
  import { Obj } from "@dxos/echo";
13
13
  import { findAnnotation as findAnnotation2 } from "@dxos/effect";
14
14
 
15
- // packages/plugins/plugin-wnfs/src/components/index.ts
15
+ // src/components/index.ts
16
16
  import { lazy } from "react";
17
17
 
18
- // packages/plugins/plugin-wnfs/src/components/FileInput.tsx
18
+ // src/components/FileInput.tsx
19
19
  import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
20
20
  import React, { useCallback } from "react";
21
21
  import { useDropzone } from "react-dropzone";
@@ -44,11 +44,11 @@ var FileInput = ({ schema, onChange }) => {
44
44
  }
45
45
  };
46
46
 
47
- // packages/plugins/plugin-wnfs/src/components/index.ts
48
- var FileContainer = lazy(() => import("./FileContainer-7YOCEQ6P.mjs"));
47
+ // src/components/index.ts
48
+ var FileContainer = lazy(() => import("./FileContainer-CNZDVRG5.mjs"));
49
49
 
50
- // packages/plugins/plugin-wnfs/src/capabilities/react-surface.tsx
51
- var react_surface_default = () => contributes(Capabilities.ReactSurface, [
50
+ // src/capabilities/react-surface.tsx
51
+ var react_surface_default = (() => contributes(Capabilities.ReactSurface, [
52
52
  createSurface({
53
53
  id: `${WNFS_PLUGIN}/article`,
54
54
  role: [
@@ -81,8 +81,8 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
81
81
  });
82
82
  }
83
83
  })
84
- ]);
84
+ ]));
85
85
  export {
86
86
  react_surface_default as default
87
87
  };
88
- //# sourceMappingURL=react-surface-6GM4J4YG.mjs.map
88
+ //# sourceMappingURL=react-surface-UOBYZYX5.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/capabilities/react-surface.tsx", "../../../src/components/index.ts", "../../../src/components/FileInput.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Schema } from 'effect';\nimport React, { useCallback } from 'react';\n\nimport { contributes, Capabilities, createSurface } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { findAnnotation } from '@dxos/effect';\nimport { type InputProps } from '@dxos/react-ui-form';\n\nimport { FileContainer, FileInput } from '../components';\nimport { WNFS_PLUGIN } from '../meta';\nimport { FileType, WnfsAction } from '../types';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${WNFS_PLUGIN}/article`,\n role: ['article', 'section', 'slide'],\n filter: (data): data is { subject: FileType } => Obj.instanceOf(FileType, data.subject),\n component: ({ data, role }) => <FileContainer role={role} file={data.subject} />,\n }),\n createSurface({\n id: `${WNFS_PLUGIN}/create-form`,\n role: 'form-input',\n filter: (data): data is { prop: string; schema: Schema.Schema.Any } => {\n const annotation = findAnnotation<boolean>(\n (data.schema as Schema.Schema.All).ast,\n WnfsAction.UploadAnnotationId,\n );\n return !!annotation;\n },\n component: ({ data: { prop, schema }, ...props }) => {\n const inputProps = props as unknown as InputProps;\n const handleChange = useCallback(\n (file: File) => inputProps.onValueChange?.('object', file),\n [prop, inputProps.onValueChange],\n );\n\n return <FileInput schema={schema} onChange={handleChange} />;\n },\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport const FileContainer = lazy(() => import('./FileContainer'));\n\nexport * from './FileInput';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Schema } from 'effect';\nimport React, { useCallback } from 'react';\nimport { useDropzone } from 'react-dropzone';\n\nimport { findAnnotation } from '@dxos/effect';\nimport { useTranslation } from '@dxos/react-ui';\nimport { mx } from '@dxos/react-ui-theme';\n\nimport { WNFS_PLUGIN } from '../meta';\nimport { WnfsAction } from '../types';\n\nexport type FileInputProps = {\n schema: Schema.Schema.Any;\n onChange: (file: File) => void;\n};\n\nexport const FileInput = ({ schema, onChange }: FileInputProps) => {\n const { t } = useTranslation(WNFS_PLUGIN);\n const accept = findAnnotation<Record<string, string[]>>(schema.ast, WnfsAction.UploadAnnotationId);\n\n const onDropAccepted = useCallback((files: File[]) => onChange?.(files[0]), [onChange]);\n\n const { acceptedFiles, getRootProps, getInputProps, isFocused, isDragAccept, isDragReject } = useDropzone({\n multiple: false,\n accept,\n onDropAccepted,\n });\n\n return (\n <div\n {...getRootProps()}\n className={mx(\n 'flex flex-col items-center p-8 border border-separator',\n isFocused && 'focus-ring',\n isDragAccept && 'bg-attention',\n isDragReject && 'border-error',\n )}\n >\n <input {...getInputProps()} />\n {acceptedFiles[0] ? <p>{acceptedFiles[0].name}</p> : <p>{t('file input placeholder')}</p>}\n </div>\n );\n};\n"],
5
- "mappings": ";;;;;;;;;AAKA,OAAOA,UAASC,eAAAA,oBAAmB;AAEnC,SAASC,aAAaC,cAAcC,qBAAqB;AACzD,SAASC,WAAW;AACpB,SAASC,kBAAAA,uBAAsB;;;ACL/B,SAASC,YAAY;;;;ACCrB,OAAOC,SAASC,mBAAmB;AACnC,SAASC,mBAAmB;AAE5B,SAASC,sBAAsB;AAC/B,SAASC,sBAAsB;AAC/B,SAASC,UAAU;AAUZ,IAAMC,YAAY,CAAC,EAAEC,QAAQC,SAAQ,MAAkB;;;AAC5D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,WAAAA;AAC7B,UAAMC,SAASC,eAAyCN,OAAOO,KAAKC,WAAWC,kBAAkB;AAEjG,UAAMC,iBAAiBC,YAAY,CAACC,UAAkBX,WAAWW,MAAM,CAAA,CAAE,GAAG;MAACX;KAAS;AAEtF,UAAM,EAAEY,eAAeC,cAAcC,eAAeC,WAAWC,cAAcC,aAAY,IAAKC,YAAY;MACxGC,UAAU;MACVf;MACAK;IACF,CAAA;AAEA,WACE,sBAAA,cAACW,OAAAA;MACE,GAAGP,aAAAA;MACJQ,WAAWC,GACT,0DACAP,aAAa,cACbC,gBAAgB,gBAChBC,gBAAgB,cAAA;OAGlB,sBAAA,cAACM,SAAUT,cAAAA,CAAAA,GACVF,cAAc,CAAA,IAAK,sBAAA,cAACY,KAAAA,MAAGZ,cAAc,CAAA,EAAGa,IAAI,IAAQ,sBAAA,cAACD,KAAAA,MAAGvB,EAAE,wBAAA,CAAA,CAAA;;;;AAGjE;;;ADxCO,IAAMyB,gBAAgBC,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ADU/C,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,WAAAA;IACPC,MAAM;MAAC;MAAW;MAAW;;IAC7BC,QAAQ,CAACC,SAAwCC,IAAIC,WAAWC,UAAUH,KAAKI,OAAO;IACtFC,WAAW,CAAC,EAAEL,MAAMF,KAAI,MAAO,gBAAAQ,OAAA,cAACC,eAAAA;MAAcT;MAAYU,MAAMR,KAAKI;;EACvE,CAAA;EACAT,cAAc;IACZC,IAAI,GAAGC,WAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SAAAA;AACP,YAAMS,aAAaC,gBAChBV,KAAKW,OAA6BC,KACnCC,WAAWC,kBAAkB;AAE/B,aAAO,CAAC,CAACL;IACX;IACAJ,WAAW,CAAC,EAAEL,MAAM,EAAEe,MAAMJ,OAAM,GAAI,GAAGK,MAAAA,MAAO;AAC9C,YAAMC,aAAaD;AACnB,YAAME,eAAeC,aACnB,CAACX,SAAeS,WAAWG,gBAAgB,UAAUZ,IAAAA,GACrD;QAACO;QAAME,WAAWG;OAAc;AAGlC,aAAO,gBAAAd,OAAA,cAACe,WAAAA;QAAUV;QAAgBW,UAAUJ;;IAC9C;EACF,CAAA;CACD;",
6
- "names": ["React", "useCallback", "contributes", "Capabilities", "createSurface", "Obj", "findAnnotation", "lazy", "React", "useCallback", "useDropzone", "findAnnotation", "useTranslation", "mx", "FileInput", "schema", "onChange", "t", "useTranslation", "WNFS_PLUGIN", "accept", "findAnnotation", "ast", "WnfsAction", "UploadAnnotationId", "onDropAccepted", "useCallback", "files", "acceptedFiles", "getRootProps", "getInputProps", "isFocused", "isDragAccept", "isDragReject", "useDropzone", "multiple", "div", "className", "mx", "input", "p", "name", "FileContainer", "lazy", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "WNFS_PLUGIN", "role", "filter", "data", "Obj", "instanceOf", "FileType", "subject", "component", "React", "FileContainer", "file", "annotation", "findAnnotation", "schema", "ast", "WnfsAction", "UploadAnnotationId", "prop", "props", "inputProps", "handleChange", "useCallback", "onValueChange", "FileInput", "onChange"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Schema } from 'effect';\nimport React, { useCallback } from 'react';\n\nimport { Capabilities, contributes, createSurface } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { findAnnotation } from '@dxos/effect';\nimport { type InputProps } from '@dxos/react-ui-form';\n\nimport { FileContainer, FileInput } from '../components';\nimport { WNFS_PLUGIN } from '../meta';\nimport { FileType, WnfsAction } from '../types';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${WNFS_PLUGIN}/article`,\n role: ['article', 'section', 'slide'],\n filter: (data): data is { subject: FileType } => Obj.instanceOf(FileType, data.subject),\n component: ({ data, role }) => <FileContainer role={role} file={data.subject} />,\n }),\n createSurface({\n id: `${WNFS_PLUGIN}/create-form`,\n role: 'form-input',\n filter: (data): data is { prop: string; schema: Schema.Schema.Any } => {\n const annotation = findAnnotation<boolean>(\n (data.schema as Schema.Schema.All).ast,\n WnfsAction.UploadAnnotationId,\n );\n return !!annotation;\n },\n component: ({ data: { prop, schema }, ...props }) => {\n const inputProps = props as unknown as InputProps;\n const handleChange = useCallback(\n (file: File) => inputProps.onValueChange?.('object', file),\n [prop, inputProps.onValueChange],\n );\n\n return <FileInput schema={schema} onChange={handleChange} />;\n },\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport const FileContainer = lazy(() => import('./FileContainer'));\n\nexport * from './FileInput';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Schema } from 'effect';\nimport React, { useCallback } from 'react';\nimport { useDropzone } from 'react-dropzone';\n\nimport { findAnnotation } from '@dxos/effect';\nimport { useTranslation } from '@dxos/react-ui';\nimport { mx } from '@dxos/react-ui-theme';\n\nimport { WNFS_PLUGIN } from '../meta';\nimport { WnfsAction } from '../types';\n\nexport type FileInputProps = {\n schema: Schema.Schema.Any;\n onChange: (file: File) => void;\n};\n\nexport const FileInput = ({ schema, onChange }: FileInputProps) => {\n const { t } = useTranslation(WNFS_PLUGIN);\n const accept = findAnnotation<Record<string, string[]>>(schema.ast, WnfsAction.UploadAnnotationId);\n\n const onDropAccepted = useCallback((files: File[]) => onChange?.(files[0]), [onChange]);\n\n const { acceptedFiles, getRootProps, getInputProps, isFocused, isDragAccept, isDragReject } = useDropzone({\n multiple: false,\n accept,\n onDropAccepted,\n });\n\n return (\n <div\n {...getRootProps()}\n className={mx(\n 'flex flex-col items-center p-8 border border-separator',\n isFocused && 'focus-ring',\n isDragAccept && 'bg-attention',\n isDragReject && 'border-error',\n )}\n >\n <input {...getInputProps()} />\n {acceptedFiles[0] ? <p>{acceptedFiles[0].name}</p> : <p>{t('file input placeholder')}</p>}\n </div>\n );\n};\n"],
5
+ "mappings": ";;;;;;;;;AAKA,OAAOA,UAASC,eAAAA,oBAAmB;AAEnC,SAASC,cAAcC,aAAaC,qBAAqB;AACzD,SAASC,WAAW;AACpB,SAASC,kBAAAA,uBAAsB;;;ACL/B,SAASC,YAAY;;;;ACCrB,OAAOC,SAASC,mBAAmB;AACnC,SAASC,mBAAmB;AAE5B,SAASC,sBAAsB;AAC/B,SAASC,sBAAsB;AAC/B,SAASC,UAAU;AAUZ,IAAMC,YAAY,CAAC,EAAEC,QAAQC,SAAQ,MAAkB;;;AAC5D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,WAAAA;AAC7B,UAAMC,SAASC,eAAyCN,OAAOO,KAAKC,WAAWC,kBAAkB;AAEjG,UAAMC,iBAAiBC,YAAY,CAACC,UAAkBX,WAAWW,MAAM,CAAA,CAAE,GAAG;MAACX;KAAS;AAEtF,UAAM,EAAEY,eAAeC,cAAcC,eAAeC,WAAWC,cAAcC,aAAY,IAAKC,YAAY;MACxGC,UAAU;MACVf;MACAK;IACF,CAAA;AAEA,WACE,sBAAA,cAACW,OAAAA;MACE,GAAGP,aAAAA;MACJQ,WAAWC,GACT,0DACAP,aAAa,cACbC,gBAAgB,gBAChBC,gBAAgB,cAAA;OAGlB,sBAAA,cAACM,SAAUT,cAAAA,CAAAA,GACVF,cAAc,CAAA,IAAK,sBAAA,cAACY,KAAAA,MAAGZ,cAAc,CAAA,EAAGa,IAAI,IAAQ,sBAAA,cAACD,KAAAA,MAAGvB,EAAE,wBAAA,CAAA,CAAA;;;;AAGjE;;;ADxCO,IAAMyB,gBAAgBC,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ADU/C,IAAA,yBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,WAAAA;IACPC,MAAM;MAAC;MAAW;MAAW;;IAC7BC,QAAQ,CAACC,SAAwCC,IAAIC,WAAWC,UAAUH,KAAKI,OAAO;IACtFC,WAAW,CAAC,EAAEL,MAAMF,KAAI,MAAO,gBAAAQ,OAAA,cAACC,eAAAA;MAAcT;MAAYU,MAAMR,KAAKI;;EACvE,CAAA;EACAT,cAAc;IACZC,IAAI,GAAGC,WAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SAAAA;AACP,YAAMS,aAAaC,gBAChBV,KAAKW,OAA6BC,KACnCC,WAAWC,kBAAkB;AAE/B,aAAO,CAAC,CAACL;IACX;IACAJ,WAAW,CAAC,EAAEL,MAAM,EAAEe,MAAMJ,OAAM,GAAI,GAAGK,MAAAA,MAAO;AAC9C,YAAMC,aAAaD;AACnB,YAAME,eAAeC,aACnB,CAACX,SAAeS,WAAWG,gBAAgB,UAAUZ,IAAAA,GACrD;QAACO;QAAME,WAAWG;OAAc;AAGlC,aAAO,gBAAAd,OAAA,cAACe,WAAAA;QAAUV;QAAgBW,UAAUJ;;IAC9C;EACF,CAAA;CACD;",
6
+ "names": ["React", "useCallback", "Capabilities", "contributes", "createSurface", "Obj", "findAnnotation", "lazy", "React", "useCallback", "useDropzone", "findAnnotation", "useTranslation", "mx", "FileInput", "schema", "onChange", "t", "useTranslation", "WNFS_PLUGIN", "accept", "findAnnotation", "ast", "WnfsAction", "UploadAnnotationId", "onDropAccepted", "useCallback", "files", "acceptedFiles", "getRootProps", "getInputProps", "isFocused", "isDragAccept", "isDragReject", "useDropzone", "multiple", "div", "className", "mx", "input", "p", "name", "FileContainer", "lazy", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "WNFS_PLUGIN", "role", "filter", "data", "Obj", "instanceOf", "FileType", "subject", "component", "React", "FileContainer", "file", "annotation", "findAnnotation", "schema", "ast", "WnfsAction", "UploadAnnotationId", "prop", "props", "inputProps", "handleChange", "useCallback", "onValueChange", "FileInput", "onChange"]
7
7
  }
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  FileType,
3
3
  WnfsAction
4
- } from "../chunk-SCL6PT4P.mjs";
5
- import "../chunk-PHTWWADN.mjs";
4
+ } from "../chunk-CW4BENRQ.mjs";
5
+ import "../chunk-VDDGZWAY.mjs";
6
6
  export {
7
7
  FileType,
8
8
  WnfsAction
@@ -1,4 +1,4 @@
1
1
  import { type PluginContext } from '@dxos/app-framework';
2
- declare const _default: (context: PluginContext) => Promise<import("@dxos/app-framework").Capability<import("interface-blockstore").Blockstore<{}, {}, {}, {}, {}, {}, {}, {}>>>;
2
+ declare const _default: (context: PluginContext) => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("interface-blockstore").Blockstore<{}, {}, {}, {}, {}, {}, {}, {}>>>>;
3
3
  export default _default;
4
4
  //# sourceMappingURL=blockstore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"blockstore.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/blockstore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;yBAMhD,SAAS,aAAa;AAA5C,wBAOE"}
1
+ {"version":3,"file":"blockstore.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/blockstore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAe,MAAM,qBAAqB,CAAC;yBAOhD,SAAS,aAAa;AAA5C,wBAOE"}
@@ -1,4 +1,4 @@
1
1
  import { Capabilities, type PluginContext } from '@dxos/app-framework';
2
- declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<Capabilities.FileUploader>;
2
+ declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<Capabilities.FileUploader>>;
3
3
  export default _default;
4
4
  //# sourceMappingURL=file-uploader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-uploader.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/file-uploader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAoC,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;yBAKzF,SAAS,aAAa;AAAtC,wBAYE"}
1
+ {"version":3,"file":"file-uploader.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/file-uploader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAAoC,MAAM,qBAAqB,CAAC;yBAKzF,SAAS,aAAa;AAAtC,wBAYE"}
@@ -1,7 +1,7 @@
1
- export declare const Blockstore: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("interface-blockstore").Blockstore<{}, {}, {}, {}, {}, {}, {}, {}>> | import("@dxos/app-framework").AnyCapability[]>>;
2
- export declare const FileUploader: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").Capabilities.FileUploader> | import("@dxos/app-framework").AnyCapability[]>>;
3
- export declare const IntentResolver: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").Capabilities.IntentResolver> | import("@dxos/app-framework").AnyCapability[]>>;
4
- export declare const Markdown: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/plugin-markdown/types").MarkdownExtensionProvider[]> | import("@dxos/app-framework").AnyCapability[]>>;
5
- export declare const ReactSurface: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").Capabilities.ReactSurface> | import("@dxos/app-framework").AnyCapability[]>>;
1
+ export declare const Blockstore: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("interface-blockstore").Blockstore<{}, {}, {}, {}, {}, {}, {}, {}>>> | import("@dxos/app-framework").AnyCapability[]>>;
2
+ export declare const FileUploader: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-framework").Capabilities.FileUploader>> | import("@dxos/app-framework").AnyCapability[]>>;
3
+ export declare const IntentResolver: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-framework").Capabilities.IntentResolver>> | import("@dxos/app-framework").AnyCapability[]>>;
4
+ export declare const Markdown: (props?: import("@dxos/app-framework").PluginContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/plugin-markdown").MarkdownExtensionProvider[]>> | import("@dxos/app-framework").AnyCapability[]>>;
5
+ export declare const ReactSurface: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-framework").Capabilities.ReactSurface>> | import("@dxos/app-framework").AnyCapability[]>>;
6
6
  export * from './capabilities';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,UAAU,kQAAqC,CAAC;AAC7D,eAAO,MAAM,YAAY,gPAAwC,CAAC;AAClE,eAAO,MAAM,cAAc,kPAA0C,CAAC;AACtE,eAAO,MAAM,QAAQ,0PAAmC,CAAC;AACzD,eAAO,MAAM,YAAY,gMAAwC,CAAC;AAElE,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,UAAU,8SAAqC,CAAC;AAC7D,eAAO,MAAM,YAAY,4RAAwC,CAAC;AAClE,eAAO,MAAM,cAAc,8RAA0C,CAAC;AACtE,eAAO,MAAM,QAAQ,gSAAmC,CAAC;AACzD,eAAO,MAAM,YAAY,4OAAwC,CAAC;AAElE,cAAc,gBAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import { Capabilities, type PluginContext } from '@dxos/app-framework';
2
- declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<Capabilities.IntentResolver>;
2
+ declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<Capabilities.IntentResolver>>;
3
3
  export default _default;
4
4
  //# sourceMappingURL=intent-resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAe,YAAY,EAAkB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;yBAOpF,SAAS,aAAa;AAAtC,wBAoBK"}
1
+ {"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAA+B,MAAM,qBAAqB,CAAC;yBAQpF,SAAS,aAAa;AAAtC,wBAoBK"}
@@ -1,4 +1,4 @@
1
1
  import { type PluginContext } from '@dxos/app-framework';
2
- declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<import("@dxos/plugin-markdown/types").MarkdownExtensionProvider[]>;
2
+ declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/plugin-markdown").MarkdownExtensionProvider[]>>;
3
3
  export default _default;
4
4
  //# sourceMappingURL=markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/markdown.ts"],"names":[],"mappings":"AAIA,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;yBAOtD,SAAS,aAAa;AAAtC,wBAaK"}
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/markdown.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAe,MAAM,qBAAqB,CAAC;yBAQtD,SAAS,aAAa;AAAtC,wBAaK"}
@@ -1,4 +1,4 @@
1
1
  import { Capabilities } from '@dxos/app-framework';
2
- declare const _default: () => import("@dxos/app-framework").Capability<Capabilities.ReactSurface>;
2
+ declare const _default: () => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<Capabilities.ReactSurface>>;
3
3
  export default _default;
4
4
  //# sourceMappingURL=react-surface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAe,YAAY,EAAiB,MAAM,qBAAqB,CAAC;;AAS/E,wBA4BK"}
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAA8B,MAAM,qBAAqB,CAAC;;AAS/E,wBA4BK"}
@@ -1,8 +1,9 @@
1
1
  import React from 'react';
2
2
  import { type FileType } from '../types';
3
- declare const FileContainer: ({ file, role }: {
4
- file: FileType;
3
+ export type FileContainerProps = {
5
4
  role: string;
6
- }) => React.JSX.Element | null;
5
+ file: FileType;
6
+ };
7
+ export declare const FileContainer: ({ file }: FileContainerProps) => React.JSX.Element | null;
7
8
  export default FileContainer;
8
9
  //# sourceMappingURL=FileContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/FileContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAUnD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,QAAA,MAAM,aAAa,GAAI,gBAAgB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,6BA2BtE,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"FileContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/FileContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAUxC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,UAAU,kBAAkB,6BAuBzD,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,6 +1,3 @@
1
- export declare const FileContainer: import("react").LazyExoticComponent<({ file, role }: {
2
- file: import("../types").FileType;
3
- role: string;
4
- }) => import("react").JSX.Element | null>;
1
+ export declare const FileContainer: import("react").LazyExoticComponent<({ file }: import("./FileContainer").FileContainerProps) => import("react").JSX.Element | null>;
5
2
  export * from './FileInput';
6
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa;;;yCAAwC,CAAC;AAEnE,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa,qIAAwC,CAAC;AAEnE,cAAc,aAAa,CAAC"}
@@ -1,10 +1,12 @@
1
1
  import '@dxos-theme';
2
+ import { type StoryObj } from '@storybook/react-vite';
2
3
  import React from 'react';
3
- declare const _default: {
4
+ declare const meta: {
4
5
  title: string;
5
6
  render: () => React.JSX.Element;
6
7
  decorators: import("@storybook/react").Decorator[];
7
8
  };
8
- export default _default;
9
- export declare const Default: {};
9
+ export default meta;
10
+ type Story = StoryObj<typeof meta>;
11
+ export declare const Default: Story;
10
12
  //# sourceMappingURL=image.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"image.stories.d.ts","sourceRoot":"","sources":["../../../../src/extensions/image.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAGrB,OAAO,KAAgD,MAAM,OAAO,CAAC;;;;;;AAsFrE,wBAIE;AAEF,eAAO,MAAM,OAAO,IAAK,CAAC"}
1
+ {"version":3,"file":"image.stories.d.ts","sourceRoot":"","sources":["../../../../src/extensions/image.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAgD,MAAM,OAAO,CAAC;AAuFrE,QAAA,MAAM,IAAI;;;;CAI2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { Blockstore } from 'interface-blockstore';
2
- import { PrivateForest, PrivateDirectory } from 'wnfs';
2
+ import { PrivateDirectory, PrivateForest } from 'wnfs';
3
3
  import { type Space } from '@dxos/react-client/echo';
4
4
  import { type WnfsCapabilities } from '../capabilities';
5
5
  export declare const loadWnfs: ({ space, blockstore, instances, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../../../src/helpers/load.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAa,aAAa,EAAE,gBAAgB,EAAe,MAAM,MAAM,CAAC;AAE/E,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMxD,eAAO,MAAM,QAAQ,GAAU,mCAI5B;IACD,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC;CACxC;;;EAoBA,CAAC"}
1
+ {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../../../src/helpers/load.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAa,gBAAgB,EAAE,aAAa,EAAe,MAAM,MAAM,CAAC;AAE/E,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAQxD,eAAO,MAAM,QAAQ,GAAU,mCAI5B;IACD,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC;CACxC;;;EAoBA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../../src/helpers/upload.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAKvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAM/C,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,eAAO,MAAM,MAAM,GAAU,yCAK1B;IACD,IAAI,EAAE,IAAI,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC;IACvC,KAAK,EAAE,KAAK,CAAC;CACd;;;;;EAgCA,CAAC"}
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../../src/helpers/upload.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAKvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMxD,eAAO,MAAM,MAAM,GAAU,yCAK1B;IACD,IAAI,EAAE,IAAI,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC;IACvC,KAAK,EAAE,KAAK,CAAC;CACd;;;;;EAgCA,CAAC"}
@@ -1,16 +1,18 @@
1
+ import { meta } from './meta';
1
2
  import { FileType } from './types';
2
- declare const _default: {
3
- 'en-US': {
4
- [FileType.typename]: {
5
- 'typename label': string;
6
- 'object name placeholder': string;
3
+ export declare const translations: [{
4
+ readonly 'en-US': {
5
+ readonly [FileType.typename]: {
6
+ readonly 'typename label': "File";
7
+ readonly 'object name placeholder': "New file";
8
+ readonly 'rename object label': "Rename file";
9
+ readonly 'delete object label': "Delete file";
7
10
  };
8
- "dxos.org/plugin/wnfs": {
9
- 'plugin name': string;
10
- 'delete object label': string;
11
- 'file input placeholder': string;
11
+ readonly [meta.id]: {
12
+ readonly 'plugin name': "Files";
13
+ readonly 'delete object label': "Delete";
14
+ readonly 'file input placeholder': "Drop a file here, or click to select a file";
12
15
  };
13
16
  };
14
- }[];
15
- export default _default;
17
+ }];
16
18
  //# sourceMappingURL=translations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;;;QAK7B,CAAC,QAAQ,CAAC,QAAQ,CAAC;;;UAGlB;;;;;;;;AANP,wBAcE"}
1
+ {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,eAAO,MAAM,YAAY;;QAGnB,SAAA,CAAC,QAAQ,CAAC,QAAQ,CAAC;;;;;UAKlB;QACD,SAAA,CAAC,IAAI,CAAC,EAAE,CAAC;;;;UAIR;;EAGwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,yBAAiB,UAAU,CAAC;;;;;;;;;;;;;;;;;IAC1B,MAAM,OAAO,MAAO,SAAQ,WAK1B;KAAG;IAEL,MAAM,CAAC,MAAM,kBAAkB,eAAiD,CAAC;IAEjF,MAAM,CAAC,MAAM,gBAAgB;;MAS3B,CAAC;IAEH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;IAEzE,MAAM,OAAO,MAAO,SAAQ,WAG1B;KAAG;;CACN"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAOhC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,yBAAiB,UAAU,CAAC;;;;;;;;;;;;;;;;;IAC1B,MAAM,OAAO,MAAO,SAAQ,WAK1B;KAAG;IAEL,MAAM,CAAC,MAAM,kBAAkB,eAAiD,CAAC;IAEjF,MAAM,CAAC,MAAM,gBAAgB;;MAS3B,CAAC;IAEH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;IAEzE,MAAM,OAAO,MAAO,SAAQ,WAG1B;KAAG;;CACN"}