@dxos/plugin-masonry 0.8.4-main.3c1ae3b → 0.8.4-main.3eb6e50203

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 (64) hide show
  1. package/dist/lib/browser/{chunk-4I5S2QKH.mjs → chunk-S5JKAK4O.mjs} +6 -37
  2. package/dist/lib/browser/chunk-S5JKAK4O.mjs.map +7 -0
  3. package/dist/lib/browser/chunk-U46AGJ2D.mjs +19 -0
  4. package/dist/lib/browser/chunk-U46AGJ2D.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +40 -54
  6. package/dist/lib/browser/index.mjs.map +4 -4
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/react-surface-QKCNQ7HF.mjs +95 -0
  9. package/dist/lib/browser/react-surface-QKCNQ7HF.mjs.map +7 -0
  10. package/dist/lib/browser/types/index.mjs +1 -1
  11. package/dist/lib/node-esm/chunk-P6EZJITS.mjs +21 -0
  12. package/dist/lib/node-esm/chunk-P6EZJITS.mjs.map +7 -0
  13. package/dist/lib/node-esm/{chunk-VKN225ZV.mjs → chunk-YNA44I6R.mjs} +6 -37
  14. package/dist/lib/node-esm/chunk-YNA44I6R.mjs.map +7 -0
  15. package/dist/lib/node-esm/index.mjs +40 -54
  16. package/dist/lib/node-esm/index.mjs.map +4 -4
  17. package/dist/lib/node-esm/meta.json +1 -1
  18. package/dist/lib/node-esm/react-surface-XG56AMA7.mjs +96 -0
  19. package/dist/lib/node-esm/react-surface-XG56AMA7.mjs.map +7 -0
  20. package/dist/lib/node-esm/types/index.mjs +1 -1
  21. package/dist/types/src/MasonryPlugin.d.ts +2 -1
  22. package/dist/types/src/MasonryPlugin.d.ts.map +1 -1
  23. package/dist/types/src/capabilities/index.d.ts +1 -2
  24. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  25. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  26. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  27. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  28. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  29. package/dist/types/src/components/MasonryContainer.d.ts +8 -3
  30. package/dist/types/src/components/MasonryContainer.d.ts.map +1 -1
  31. package/dist/types/src/components/MasonryContainer.stories.d.ts.map +1 -1
  32. package/dist/types/src/meta.d.ts +2 -2
  33. package/dist/types/src/meta.d.ts.map +1 -1
  34. package/dist/types/src/types/Masonry.d.ts +15 -18
  35. package/dist/types/src/types/Masonry.d.ts.map +1 -1
  36. package/dist/types/src/types/MasonryAction.d.ts +0 -17
  37. package/dist/types/src/types/MasonryAction.d.ts.map +1 -1
  38. package/dist/types/tsconfig.tsbuildinfo +1 -1
  39. package/package.json +38 -33
  40. package/src/MasonryPlugin.tsx +27 -45
  41. package/src/capabilities/index.ts +1 -4
  42. package/src/capabilities/react-surface/index.ts +7 -0
  43. package/src/capabilities/react-surface/react-surface.tsx +32 -0
  44. package/src/components/MasonryContainer.stories.tsx +26 -27
  45. package/src/components/MasonryContainer.tsx +40 -20
  46. package/src/meta.ts +2 -2
  47. package/src/types/Masonry.ts +9 -10
  48. package/src/types/MasonryAction.ts +0 -14
  49. package/dist/lib/browser/chunk-4I5S2QKH.mjs.map +0 -7
  50. package/dist/lib/browser/intent-resolver-CHMBMGXF.mjs +0 -32
  51. package/dist/lib/browser/intent-resolver-CHMBMGXF.mjs.map +0 -7
  52. package/dist/lib/browser/react-surface-7JLSS4T2.mjs +0 -96
  53. package/dist/lib/browser/react-surface-7JLSS4T2.mjs.map +0 -7
  54. package/dist/lib/node-esm/chunk-VKN225ZV.mjs.map +0 -7
  55. package/dist/lib/node-esm/intent-resolver-J7B7SXRB.mjs +0 -33
  56. package/dist/lib/node-esm/intent-resolver-J7B7SXRB.mjs.map +0 -7
  57. package/dist/lib/node-esm/react-surface-VW5VIPBJ.mjs +0 -97
  58. package/dist/lib/node-esm/react-surface-VW5VIPBJ.mjs.map +0 -7
  59. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  60. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  61. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  62. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  63. package/src/capabilities/intent-resolver.ts +0 -20
  64. package/src/capabilities/react-surface.tsx +0 -22
@@ -1,19 +1,22 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
- MasonryAction_exports,
4
- Masonry_exports,
5
3
  meta
6
- } from "./chunk-VKN225ZV.mjs";
4
+ } from "./chunk-P6EZJITS.mjs";
5
+ import {
6
+ MasonryAction_exports,
7
+ Masonry_exports
8
+ } from "./chunk-YNA44I6R.mjs";
7
9
 
8
10
  // src/MasonryPlugin.tsx
9
- import { Capabilities, Events, contributes, createIntent, defineModule, definePlugin } from "@dxos/app-framework";
11
+ import * as Effect from "effect/Effect";
12
+ import { Plugin } from "@dxos/app-framework";
13
+ import { AppPlugin } from "@dxos/app-toolkit";
10
14
  import { Type as Type2 } from "@dxos/echo";
11
- import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
15
+ import { View } from "@dxos/schema";
12
16
 
13
- // src/capabilities/index.ts
14
- import { lazy } from "@dxos/app-framework";
15
- var ReactSurface = lazy(() => import("./react-surface-VW5VIPBJ.mjs"));
16
- var IntentResolver = lazy(() => import("./intent-resolver-J7B7SXRB.mjs"));
17
+ // src/capabilities/react-surface/index.ts
18
+ import { Capability } from "@dxos/app-framework";
19
+ var ReactSurface = Capability.lazy("ReactSurface", () => import("./react-surface-XG56AMA7.mjs"));
17
20
 
18
21
  // src/translations.ts
19
22
  import { Type } from "@dxos/echo";
@@ -38,51 +41,34 @@ var translations = [
38
41
  ];
39
42
 
40
43
  // src/MasonryPlugin.tsx
41
- var MasonryPlugin = definePlugin(meta, () => [
42
- defineModule({
43
- id: `${meta.id}/module/translations`,
44
- activatesOn: Events.SetupTranslations,
45
- activate: () => contributes(Capabilities.Translations, translations)
46
- }),
47
- defineModule({
48
- id: `${meta.id}/module/react-surface`,
49
- activatesOn: Events.SetupReactSurface,
50
- activate: ReactSurface
51
- }),
52
- defineModule({
53
- id: `${meta.id}/module/metadata`,
54
- activatesOn: Events.SetupMetadata,
55
- activate: () => contributes(Capabilities.Metadata, {
56
- id: Type2.getTypename(Masonry_exports.Masonry),
57
- metadata: {
58
- icon: "ph--wall--regular",
59
- iconHue: "green",
60
- inputSchema: MasonryAction_exports.MasonryProps,
61
- createObjectIntent: (props, options) => createIntent(MasonryAction_exports.CreateMasonry, {
62
- ...props,
63
- space: options.space
64
- })
65
- }
66
- })
67
- }),
68
- defineModule({
69
- id: `${meta.id}/module/schema`,
70
- activatesOn: ClientEvents.SetupSchema,
71
- activate: () => contributes(ClientCapabilities.Schema, [
72
- Masonry_exports.Masonry
73
- ])
74
- }),
75
- defineModule({
76
- id: `${meta.id}/module/react-surface`,
77
- activatesOn: Events.SetupReactSurface,
78
- activate: ReactSurface
79
- }),
80
- defineModule({
81
- id: `${meta.id}/module/intent-resolver`,
82
- activatesOn: Events.SetupIntentResolver,
83
- activate: IntentResolver
84
- })
85
- ]);
44
+ var MasonryPlugin = Plugin.define(meta).pipe(AppPlugin.addMetadataModule({
45
+ metadata: {
46
+ id: Type2.getTypename(Masonry_exports.Masonry),
47
+ metadata: {
48
+ icon: "ph--wall--regular",
49
+ iconHue: "green",
50
+ inputSchema: MasonryAction_exports.MasonryProps,
51
+ createObject: (props, { db }) => Effect.promise(async () => {
52
+ const { view } = await View.makeFromDatabase({
53
+ db,
54
+ typename: props.typename
55
+ });
56
+ return Masonry_exports.make({
57
+ name: props.name,
58
+ view
59
+ });
60
+ })
61
+ }
62
+ }
63
+ }), AppPlugin.addSchemaModule({
64
+ schema: [
65
+ Masonry_exports.Masonry
66
+ ]
67
+ }), AppPlugin.addSurfaceModule({
68
+ activate: ReactSurface
69
+ }), AppPlugin.addTranslationsModule({
70
+ translations
71
+ }), Plugin.make);
86
72
  export {
87
73
  MasonryPlugin,
88
74
  meta
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/MasonryPlugin.tsx", "../../../src/capabilities/index.ts", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, Events, contributes, createIntent, defineModule, definePlugin } from '@dxos/app-framework';\nimport { Type } from '@dxos/echo';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { type CreateObjectIntent } from '@dxos/plugin-space/types';\n\nimport { IntentResolver, ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { Masonry, MasonryAction } from './types';\n\nexport const MasonryPlugin = definePlugin(meta, () => [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: Type.getTypename(Masonry.Masonry),\n metadata: {\n icon: 'ph--wall--regular',\n iconHue: 'green',\n inputSchema: MasonryAction.MasonryProps,\n createObjectIntent: ((props, options) =>\n createIntent(MasonryAction.CreateMasonry, { ...props, space: options.space })) satisfies CreateObjectIntent,\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [Masonry.Masonry]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const ReactSurface = lazy(() => import('./react-surface'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\nimport { Masonry } from './types';\n\nexport const translations = [\n {\n 'en-US': {\n [Type.getTypename(Masonry.Masonry)]: {\n 'typename label': 'Masonry',\n 'typename label_zero': 'Masonries',\n 'typename label_one': 'Masonry',\n 'typename label_other': 'Masonries',\n 'object name placeholder': 'New masonry',\n 'rename object label': 'Rename masonry',\n 'delete object label': 'Delete masonry',\n 'object deleted label': 'Masonry deleted',\n },\n [meta.id]: {\n 'plugin name': 'Masonry',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
- "mappings": ";;;;;;;;AAIA,SAASA,cAAcC,QAAQC,aAAaC,cAAcC,cAAcC,oBAAoB;AAC5F,SAASC,QAAAA,aAAY;AACrB,SAASC,oBAAoBC,oBAAoB;;;ACFjD,SAASC,YAAY;AAEd,IAAMC,eAAeC,KAAK,MAAM,OAAO,8BAAA,CAAA;AACvC,IAAMC,iBAAiBD,KAAK,MAAM,OAAO,gCAAA,CAAA;;;ACHhD,SAASE,YAAY;AAMd,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,KAAKC,YAAYC,gBAAQA,OAAO,CAAA,GAAI;QACnC,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACC,KAAKC,EAAE,GAAG;QACT,eAAe;MACjB;IACF;EACF;;;;AFbK,IAAMC,gBAAgBC,aAAaC,MAAM,MAAM;EACpDC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,YAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOO;IACpBL,UAAUM;EACZ,CAAA;EACAX,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOS;IACpBP,UAAU,MACRC,YAAYC,aAAaM,UAAU;MACjCZ,IAAIa,MAAKC,YAAYC,gBAAQA,OAAO;MACpCC,UAAU;QACRC,MAAM;QACNC,SAAS;QACTC,aAAaC,sBAAcC;QAC3BC,oBAAqB,CAACC,OAAOC,YAC3BC,aAAaL,sBAAcM,eAAe;UAAE,GAAGH;UAAOI,OAAOH,QAAQG;QAAM,CAAA;MAC/E;IACF,CAAA;EACJ,CAAA;EACA5B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAa2B,aAAaC;IAC1BzB,UAAU,MAAMC,YAAYyB,mBAAmBC,QAAQ;MAAChB,gBAAQA;KAAQ;EAC1E,CAAA;EACAhB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOO;IACpBL,UAAUM;EACZ,CAAA;EACAX,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO8B;IACpB5B,UAAU6B;EACZ,CAAA;CACD;",
6
- "names": ["Capabilities", "Events", "contributes", "createIntent", "defineModule", "definePlugin", "Type", "ClientCapabilities", "ClientEvents", "lazy", "ReactSurface", "lazy", "IntentResolver", "Type", "translations", "Type", "getTypename", "Masonry", "meta", "id", "MasonryPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupReactSurface", "ReactSurface", "SetupMetadata", "Metadata", "Type", "getTypename", "Masonry", "metadata", "icon", "iconHue", "inputSchema", "MasonryAction", "MasonryProps", "createObjectIntent", "props", "options", "createIntent", "CreateMasonry", "space", "ClientEvents", "SetupSchema", "ClientCapabilities", "Schema", "SetupIntentResolver", "IntentResolver"]
3
+ "sources": ["../../../src/MasonryPlugin.tsx", "../../../src/capabilities/react-surface/index.ts", "../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { Type } from '@dxos/echo';\nimport { type CreateObject } from '@dxos/plugin-space/types';\nimport { View } from '@dxos/schema';\n\nimport { ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { Masonry, MasonryAction } from './types';\n\nexport const MasonryPlugin = Plugin.define(meta).pipe(\n AppPlugin.addMetadataModule({\n metadata: {\n id: Type.getTypename(Masonry.Masonry),\n metadata: {\n icon: 'ph--wall--regular',\n iconHue: 'green',\n inputSchema: MasonryAction.MasonryProps,\n createObject: ((props, { db }) =>\n Effect.promise(async () => {\n const { view } = await View.makeFromDatabase({ db, typename: props.typename });\n return Masonry.make({ name: props.name, view });\n })) satisfies CreateObject,\n },\n },\n }),\n AppPlugin.addSchemaModule({ schema: [Masonry.Masonry] }),\n AppPlugin.addSurfaceModule({ activate: ReactSurface }),\n AppPlugin.addTranslationsModule({ translations }),\n Plugin.make,\n);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\nimport { Masonry } from './types';\n\nexport const translations = [\n {\n 'en-US': {\n [Type.getTypename(Masonry.Masonry)]: {\n 'typename label': 'Masonry',\n 'typename label_zero': 'Masonries',\n 'typename label_one': 'Masonry',\n 'typename label_other': 'Masonries',\n 'object name placeholder': 'New masonry',\n 'rename object label': 'Rename masonry',\n 'delete object label': 'Delete masonry',\n 'object deleted label': 'Masonry deleted',\n },\n [meta.id]: {\n 'plugin name': 'Masonry',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": ";;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAC1B,SAASC,QAAAA,aAAY;AAErB,SAASC,YAAY;;;ACNrB,SAASC,kBAAkB;AAEpB,IAAMC,eAAeC,WAAWC,KAAK,gBAAgB,MAAM,OAAO,8BAAA,CAAA;;;ACFzE,SAASC,YAAY;AAMd,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,KAAKC,YAAYC,gBAAQA,OAAO,CAAA,GAAI;QACnC,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACC,KAAKC,EAAE,GAAG;QACT,eAAe;MACjB;IACF;EACF;;;;AFVK,IAAMC,gBAAgBC,OAAOC,OAAOC,IAAAA,EAAMC,KAC/CC,UAAUC,kBAAkB;EAC1BC,UAAU;IACRC,IAAIC,MAAKC,YAAYC,gBAAQA,OAAO;IACpCJ,UAAU;MACRK,MAAM;MACNC,SAAS;MACTC,aAAaC,sBAAcC;MAC3BC,cAAe,CAACC,OAAO,EAAEC,GAAE,MAClBC,eAAQ,YAAA;AACb,cAAM,EAAEC,KAAI,IAAK,MAAMC,KAAKC,iBAAiB;UAAEJ;UAAIK,UAAUN,MAAMM;QAAS,CAAA;AAC5E,eAAOb,gBAAQc,KAAK;UAAEC,MAAMR,MAAMQ;UAAML;QAAK,CAAA;MAC/C,CAAA;IACJ;EACF;AACF,CAAA,GACAhB,UAAUsB,gBAAgB;EAAEC,QAAQ;IAACjB,gBAAQA;;AAAS,CAAA,GACtDN,UAAUwB,iBAAiB;EAAEC,UAAUC;AAAa,CAAA,GACpD1B,UAAU2B,sBAAsB;EAAEC;AAAa,CAAA,GAC/ChC,OAAOwB,IAAI;",
6
+ "names": ["Effect", "Plugin", "AppPlugin", "Type", "View", "Capability", "ReactSurface", "Capability", "lazy", "Type", "translations", "Type", "getTypename", "Masonry", "meta", "id", "MasonryPlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addMetadataModule", "metadata", "id", "Type", "getTypename", "Masonry", "icon", "iconHue", "inputSchema", "MasonryAction", "MasonryProps", "createObject", "props", "db", "promise", "view", "View", "makeFromDatabase", "typename", "make", "name", "addSchemaModule", "schema", "addSurfaceModule", "activate", "ReactSurface", "addTranslationsModule", "translations"]
7
7
  }
@@ -1 +1 @@
1
- {"inputs":{"src/meta.ts":{"bytes":1970,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/components/MasonryContainer.tsx":{"bytes":8163,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-masonry","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/types/Masonry.ts":{"bytes":6175,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/types/MasonryAction.ts":{"bytes":4027,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"src/types/Masonry.ts","kind":"import-statement","original":"./Masonry"}],"format":"esm"},"src/types/index.ts":{"bytes":708,"imports":[{"path":"src/types/Masonry.ts","kind":"import-statement","original":"./Masonry"},{"path":"src/types/MasonryAction.ts","kind":"import-statement","original":"./MasonryAction"}],"format":"esm"},"src/capabilities/react-surface.tsx":{"bytes":2912,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"src/components/MasonryContainer.tsx","kind":"import-statement","original":"../components/MasonryContainer"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/capabilities/intent-resolver.ts":{"bytes":2922,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":1037,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"}],"format":"esm"},"src/translations.ts":{"bytes":2691,"imports":[{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/MasonryPlugin.tsx":{"bytes":7519,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/index.ts":{"bytes":555,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/MasonryPlugin.tsx","kind":"import-statement","original":"./MasonryPlugin"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5275},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-VKN225ZV.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/react-surface-VW5VIPBJ.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/intent-resolver-J7B7SXRB.mjs","kind":"dynamic-import"},{"path":"@dxos/echo","kind":"import-statement","external":true}],"exports":["MasonryPlugin","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/MasonryPlugin.tsx":{"bytesInOutput":1600},"src/capabilities/index.ts":{"bytesInOutput":190},"src/translations.ts":{"bytesInOutput":575}},"bytes":2725},"dist/lib/node-esm/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/types/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-VKN225ZV.mjs","kind":"import-statement"}],"exports":["Masonry","MasonryAction"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":294},"dist/lib/node-esm/react-surface-VW5VIPBJ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5603},"dist/lib/node-esm/react-surface-VW5VIPBJ.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-VKN225ZV.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-masonry","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface.tsx","inputs":{"src/capabilities/react-surface.tsx":{"bytesInOutput":530},"src/components/MasonryContainer.tsx":{"bytesInOutput":2194}},"bytes":3099},"dist/lib/node-esm/intent-resolver-J7B7SXRB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1447},"dist/lib/node-esm/intent-resolver-J7B7SXRB.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-VKN225ZV.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/intent-resolver.ts","inputs":{"src/capabilities/intent-resolver.ts":{"bytesInOutput":591}},"bytes":909},"dist/lib/node-esm/chunk-VKN225ZV.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6088},"dist/lib/node-esm/chunk-VKN225ZV.mjs":{"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["MasonryAction_exports","Masonry_exports","meta"],"inputs":{"src/types/Masonry.ts":{"bytesInOutput":1318},"src/types/index.ts":{"bytesInOutput":0},"src/types/MasonryAction.ts":{"bytesInOutput":1006},"src/meta.ts":{"bytesInOutput":482}},"bytes":3276}}}
1
+ {"inputs":{"src/meta.ts":{"bytes":1966,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/components/MasonryContainer.tsx":{"bytes":8879,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-masonry","kind":"import-statement","external":true},{"path":"@dxos/react-ui-mosaic","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/types/Masonry.ts":{"bytes":5570,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/types/MasonryAction.ts":{"bytes":2399,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true}],"format":"esm"},"src/types/index.ts":{"bytes":708,"imports":[{"path":"src/types/Masonry.ts","kind":"import-statement","original":"./Masonry"},{"path":"src/types/MasonryAction.ts","kind":"import-statement","original":"./MasonryAction"}],"format":"esm"},"src/capabilities/react-surface/react-surface.tsx":{"bytes":4234,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/components/MasonryContainer.tsx","kind":"import-statement","original":"../../components/MasonryContainer"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"../../types"}],"format":"esm"},"src/capabilities/react-surface/index.ts":{"bytes":911,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/react-surface/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":488,"imports":[{"path":"src/capabilities/react-surface/index.ts","kind":"import-statement","original":"./react-surface"}],"format":"esm"},"src/translations.ts":{"bytes":2691,"imports":[{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/MasonryPlugin.tsx":{"bytes":5024,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/index.ts":{"bytes":555,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/MasonryPlugin.tsx","kind":"import-statement","original":"./MasonryPlugin"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4056},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-P6EZJITS.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-YNA44I6R.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/react-surface-XG56AMA7.mjs","kind":"dynamic-import"},{"path":"@dxos/echo","kind":"import-statement","external":true}],"exports":["MasonryPlugin","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/MasonryPlugin.tsx":{"bytesInOutput":985},"src/capabilities/react-surface/index.ts":{"bytesInOutput":148},"src/capabilities/index.ts":{"bytesInOutput":0},"src/translations.ts":{"bytesInOutput":575}},"bytes":2121},"dist/lib/node-esm/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/types/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-YNA44I6R.mjs","kind":"import-statement"}],"exports":["Masonry","MasonryAction"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":294},"dist/lib/node-esm/react-surface-XG56AMA7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6944},"dist/lib/node-esm/react-surface-XG56AMA7.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-P6EZJITS.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-YNA44I6R.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-masonry","kind":"import-statement","external":true},{"path":"@dxos/react-ui-mosaic","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface/react-surface.tsx","inputs":{"src/capabilities/react-surface/react-surface.tsx":{"bytesInOutput":865},"src/components/MasonryContainer.tsx":{"bytesInOutput":2252}},"bytes":3559},"dist/lib/node-esm/chunk-P6EZJITS.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":950},"dist/lib/node-esm/chunk-P6EZJITS.mjs":{"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["meta"],"inputs":{"src/meta.ts":{"bytesInOutput":482}},"bytes":654},"dist/lib/node-esm/chunk-YNA44I6R.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4068},"dist/lib/node-esm/chunk-YNA44I6R.mjs":{"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true}],"exports":["MasonryAction_exports","Masonry_exports"],"inputs":{"src/types/Masonry.ts":{"bytesInOutput":1215},"src/types/index.ts":{"bytesInOutput":0},"src/types/MasonryAction.ts":{"bytesInOutput":640}},"bytes":2270}}}
@@ -0,0 +1,96 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ meta
4
+ } from "./chunk-P6EZJITS.mjs";
5
+ import {
6
+ Masonry_exports
7
+ } from "./chunk-YNA44I6R.mjs";
8
+
9
+ // src/capabilities/react-surface/react-surface.tsx
10
+ import * as Effect from "effect/Effect";
11
+ import React2 from "react";
12
+ import { Capabilities, Capability } from "@dxos/app-framework";
13
+ import { Surface as Surface2 } from "@dxos/app-framework/ui";
14
+ import { Obj as Obj2 } from "@dxos/echo";
15
+ import { View } from "@dxos/schema";
16
+
17
+ // src/components/MasonryContainer.tsx
18
+ import React, { useEffect, useState } from "react";
19
+ import { Surface, useCapabilities } from "@dxos/app-framework/ui";
20
+ import { AppCapabilities } from "@dxos/app-toolkit";
21
+ import { Filter, Obj, Type } from "@dxos/echo";
22
+ import { useGlobalFilteredObjects } from "@dxos/plugin-search";
23
+ import { useObject, useQuery } from "@dxos/react-client/echo";
24
+ import { Masonry as MasonryComponent } from "@dxos/react-ui-masonry";
25
+ import { Card } from "@dxos/react-ui-mosaic";
26
+ import { getTypenameFromQuery } from "@dxos/schema";
27
+ var MasonryContainer = ({ view: viewOrRef, role: _role }) => {
28
+ const [view] = useObject(viewOrRef);
29
+ const schemas = useCapabilities(AppCapabilities.Schema);
30
+ const db = view && Obj.getDatabase(view);
31
+ const typename = view?.query ? getTypenameFromQuery(view.query.ast) : void 0;
32
+ const [cardSchema, setCardSchema] = useState();
33
+ useEffect(() => {
34
+ const staticSchema = schemas.flat().find((schema) => Type.getTypename(schema) === typename);
35
+ if (staticSchema) {
36
+ setCardSchema(() => staticSchema);
37
+ }
38
+ if (!staticSchema && typename && db) {
39
+ const query = db.schemaRegistry.query({
40
+ typename
41
+ });
42
+ const unsubscribe = query.subscribe(() => {
43
+ const [schema] = query.results;
44
+ if (schema) {
45
+ setCardSchema(schema);
46
+ }
47
+ }, {
48
+ fire: true
49
+ });
50
+ return unsubscribe;
51
+ }
52
+ }, [
53
+ schemas,
54
+ typename,
55
+ db
56
+ ]);
57
+ const objects = useQuery(db, cardSchema ? Filter.type(cardSchema) : Filter.nothing());
58
+ const filteredObjects = useGlobalFilteredObjects(objects);
59
+ return /* @__PURE__ */ React.createElement(MasonryComponent.Root, {
60
+ items: filteredObjects,
61
+ render: Item,
62
+ classNames: "is-full max-is-full bs-full max-bs-full overflow-y-auto p-4"
63
+ });
64
+ };
65
+ var Item = ({ data }) => {
66
+ return /* @__PURE__ */ React.createElement(Card.Root, null, /* @__PURE__ */ React.createElement(Card.Toolbar, null, /* @__PURE__ */ React.createElement("span", null), /* @__PURE__ */ React.createElement(Card.Title, null, Obj.getLabel(data)), /* @__PURE__ */ React.createElement(Card.Menu, null)), /* @__PURE__ */ React.createElement(Surface.Surface, {
67
+ role: "card--content",
68
+ limit: 1,
69
+ data: {
70
+ subject: data
71
+ }
72
+ }));
73
+ };
74
+
75
+ // src/capabilities/react-surface/react-surface.tsx
76
+ var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Capabilities.ReactSurface, [
77
+ Surface2.create({
78
+ id: meta.id,
79
+ role: [
80
+ "article",
81
+ "section"
82
+ ],
83
+ filter: (data) => Obj2.instanceOf(Masonry_exports.Masonry, data.subject) || Obj2.instanceOf(View.View, data.subject),
84
+ component: ({ data, role }) => {
85
+ const view = Obj2.instanceOf(View.View, data.subject) ? data.subject : data.subject.view;
86
+ return /* @__PURE__ */ React2.createElement(MasonryContainer, {
87
+ view,
88
+ role
89
+ });
90
+ }
91
+ })
92
+ ])));
93
+ export {
94
+ react_surface_default as default
95
+ };
96
+ //# sourceMappingURL=react-surface-XG56AMA7.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface/react-surface.tsx", "../../../src/components/MasonryContainer.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface } from '@dxos/app-framework/ui';\nimport { Obj } from '@dxos/echo';\nimport { View } from '@dxos/schema';\n\nimport { MasonryContainer } from '../../components/MasonryContainer';\nimport { meta } from '../../meta';\nimport { Masonry } from '../../types';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: meta.id,\n role: ['article', 'section'],\n filter: (data): data is { subject: Masonry.Masonry | View.View } =>\n Obj.instanceOf(Masonry.Masonry, data.subject) || Obj.instanceOf(View.View, data.subject),\n component: ({ data, role }) => {\n const view = Obj.instanceOf(View.View, data.subject) ? data.subject : data.subject.view;\n return <MasonryContainer view={view} role={role} />;\n },\n }),\n ]),\n ),\n);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Schema from 'effect/Schema';\nimport React, { useEffect, useState } from 'react';\n\nimport { Surface, useCapabilities } from '@dxos/app-framework/ui';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { Filter, Obj, type Ref, Type } from '@dxos/echo';\nimport { useGlobalFilteredObjects } from '@dxos/plugin-search';\nimport { useObject, useQuery } from '@dxos/react-client/echo';\nimport { Masonry as MasonryComponent } from '@dxos/react-ui-masonry';\nimport { Card } from '@dxos/react-ui-mosaic';\nimport { type View, getTypenameFromQuery } from '@dxos/schema';\n\nexport type MasonryContainerProps = {\n view: View.View;\n role?: string;\n};\n\nexport const MasonryContainer = ({\n view: viewOrRef,\n role: _role,\n}: {\n view: View.View | Ref.Ref<View.View>;\n role?: string;\n}) => {\n const [view] = useObject(viewOrRef);\n const schemas = useCapabilities(AppCapabilities.Schema);\n const db = view && Obj.getDatabase(view);\n const typename = view?.query ? getTypenameFromQuery(view.query.ast) : undefined;\n\n const [cardSchema, setCardSchema] = useState<Schema.Schema.AnyNoContext>();\n\n useEffect(() => {\n const staticSchema = schemas.flat().find((schema) => Type.getTypename(schema) === typename);\n if (staticSchema) {\n setCardSchema(() => staticSchema);\n }\n if (!staticSchema && typename && db) {\n const query = db.schemaRegistry.query({ typename });\n const unsubscribe = query.subscribe(\n () => {\n const [schema] = query.results;\n if (schema) {\n setCardSchema(schema);\n }\n },\n { fire: true },\n );\n return unsubscribe;\n }\n }, [schemas, typename, db]);\n\n const objects = useQuery(db, cardSchema ? Filter.type(cardSchema) : Filter.nothing());\n const filteredObjects = useGlobalFilteredObjects(objects);\n\n return (\n <MasonryComponent.Root\n items={filteredObjects}\n render={Item as any}\n classNames='is-full max-is-full bs-full max-bs-full overflow-y-auto p-4'\n />\n );\n};\n\nconst Item = ({ data }: { data: any }) => {\n return (\n <Card.Root>\n <Card.Toolbar>\n <span />\n <Card.Title>{Obj.getLabel(data)}</Card.Title>\n <Card.Menu />\n </Card.Toolbar>\n <Surface.Surface role='card--content' limit={1} data={{ subject: data }} />\n </Card.Root>\n );\n};\n"],
5
+ "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AACxB,OAAOC,YAAW;AAElB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,WAAAA,gBAAe;AACxB,SAASC,OAAAA,YAAW;AACpB,SAASC,YAAY;;;ACLrB,OAAOC,SAASC,WAAWC,gBAAgB;AAE3C,SAASC,SAASC,uBAAuB;AACzC,SAASC,uBAAuB;AAChC,SAASC,QAAQC,KAAeC,YAAY;AAC5C,SAASC,gCAAgC;AACzC,SAASC,WAAWC,gBAAgB;AACpC,SAASC,WAAWC,wBAAwB;AAC5C,SAASC,YAAY;AACrB,SAAoBC,4BAA4B;AAOzC,IAAMC,mBAAmB,CAAC,EAC/BC,MAAMC,WACNC,MAAMC,MAAK,MAIZ;AACC,QAAM,CAACH,IAAAA,IAAQI,UAAUH,SAAAA;AACzB,QAAMI,UAAUC,gBAAgBC,gBAAgBC,MAAM;AACtD,QAAMC,KAAKT,QAAQU,IAAIC,YAAYX,IAAAA;AACnC,QAAMY,WAAWZ,MAAMa,QAAQC,qBAAqBd,KAAKa,MAAME,GAAG,IAAIC;AAEtE,QAAM,CAACC,YAAYC,aAAAA,IAAiBC,SAAAA;AAEpCC,YAAU,MAAA;AACR,UAAMC,eAAehB,QAAQiB,KAAI,EAAGC,KAAK,CAACC,WAAWC,KAAKC,YAAYF,MAAAA,MAAYZ,QAAAA;AAClF,QAAIS,cAAc;AAChBH,oBAAc,MAAMG,YAAAA;IACtB;AACA,QAAI,CAACA,gBAAgBT,YAAYH,IAAI;AACnC,YAAMI,QAAQJ,GAAGkB,eAAed,MAAM;QAAED;MAAS,CAAA;AACjD,YAAMgB,cAAcf,MAAMgB,UACxB,MAAA;AACE,cAAM,CAACL,MAAAA,IAAUX,MAAMiB;AACvB,YAAIN,QAAQ;AACVN,wBAAcM,MAAAA;QAChB;MACF,GACA;QAAEO,MAAM;MAAK,CAAA;AAEf,aAAOH;IACT;EACF,GAAG;IAACvB;IAASO;IAAUH;GAAG;AAE1B,QAAMuB,UAAUC,SAASxB,IAAIQ,aAAaiB,OAAOC,KAAKlB,UAAAA,IAAciB,OAAOE,QAAO,CAAA;AAClF,QAAMC,kBAAkBC,yBAAyBN,OAAAA;AAEjD,SACE,sBAAA,cAACO,iBAAiBC,MAAI;IACpBC,OAAOJ;IACPK,QAAQC;IACRC,YAAW;;AAGjB;AAEA,IAAMD,OAAO,CAAC,EAAEE,KAAI,MAAiB;AACnC,SACE,sBAAA,cAACC,KAAKN,MAAI,MACR,sBAAA,cAACM,KAAKC,SAAO,MACX,sBAAA,cAACC,QAAAA,IAAAA,GACD,sBAAA,cAACF,KAAKG,OAAK,MAAEvC,IAAIwC,SAASL,IAAAA,CAAAA,GAC1B,sBAAA,cAACC,KAAKK,MAAI,IAAA,CAAA,GAEZ,sBAAA,cAACC,QAAQA,SAAO;IAAClD,MAAK;IAAgBmD,OAAO;IAAGR,MAAM;MAAES,SAAST;IAAK;;AAG5E;;;AD9DA,IAAA,wBAAeU,WAAWC,WAAW,MAC5BC,eACLF,WAAWG,YAAYC,aAAaC,cAAc;EAChDC,SAAQC,OAAO;IACbC,IAAIC,KAAKD;IACTE,MAAM;MAAC;MAAW;;IAClBC,QAAQ,CAACC,SACPC,KAAIC,WAAWC,gBAAQA,SAASH,KAAKI,OAAO,KAAKH,KAAIC,WAAWG,KAAKA,MAAML,KAAKI,OAAO;IACzFE,WAAW,CAAC,EAAEN,MAAMF,KAAI,MAAE;AACxB,YAAMS,OAAON,KAAIC,WAAWG,KAAKA,MAAML,KAAKI,OAAO,IAAIJ,KAAKI,UAAUJ,KAAKI,QAAQG;AACnF,aAAO,gBAAAC,OAAA,cAACC,kBAAAA;QAAiBF;QAAYT;;IACvC;EACF,CAAA;CACD,CAAA,CAAA;",
6
+ "names": ["Effect", "React", "Capabilities", "Capability", "Surface", "Obj", "View", "React", "useEffect", "useState", "Surface", "useCapabilities", "AppCapabilities", "Filter", "Obj", "Type", "useGlobalFilteredObjects", "useObject", "useQuery", "Masonry", "MasonryComponent", "Card", "getTypenameFromQuery", "MasonryContainer", "view", "viewOrRef", "role", "_role", "useObject", "schemas", "useCapabilities", "AppCapabilities", "Schema", "db", "Obj", "getDatabase", "typename", "query", "getTypenameFromQuery", "ast", "undefined", "cardSchema", "setCardSchema", "useState", "useEffect", "staticSchema", "flat", "find", "schema", "Type", "getTypename", "schemaRegistry", "unsubscribe", "subscribe", "results", "fire", "objects", "useQuery", "Filter", "type", "nothing", "filteredObjects", "useGlobalFilteredObjects", "MasonryComponent", "Root", "items", "render", "Item", "classNames", "data", "Card", "Toolbar", "span", "Title", "getLabel", "Menu", "Surface", "limit", "subject", "Capability", "makeModule", "succeed", "contributes", "Capabilities", "ReactSurface", "Surface", "create", "id", "meta", "role", "filter", "data", "Obj", "instanceOf", "Masonry", "subject", "View", "component", "view", "React", "MasonryContainer"]
7
+ }
@@ -2,7 +2,7 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  MasonryAction_exports,
4
4
  Masonry_exports
5
- } from "../chunk-VKN225ZV.mjs";
5
+ } from "../chunk-YNA44I6R.mjs";
6
6
  export {
7
7
  Masonry_exports as Masonry,
8
8
  MasonryAction_exports as MasonryAction
@@ -1,2 +1,3 @@
1
- export declare const MasonryPlugin: import("@dxos/app-framework").PluginFactory<void>;
1
+ import { Plugin } from '@dxos/app-framework';
2
+ export declare const MasonryPlugin: Plugin.PluginFactory<void>;
2
3
  //# sourceMappingURL=MasonryPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MasonryPlugin.d.ts","sourceRoot":"","sources":["../../../src/MasonryPlugin.tsx"],"names":[],"mappings":"AAcA,eAAO,MAAM,aAAa,mDAyCxB,CAAC"}
1
+ {"version":3,"file":"MasonryPlugin.d.ts","sourceRoot":"","sources":["../../../src/MasonryPlugin.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAW7C,eAAO,MAAM,aAAa,4BAoBzB,CAAC"}
@@ -1,3 +1,2 @@
1
- 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[]>>;
2
- 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[]>>;
1
+ export * from './react-surface';
3
2
  //# 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,YAAY,4OAAwC,CAAC;AAClE,eAAO,MAAM,cAAc,8RAA0C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Capability } from '@dxos/app-framework';
2
+ export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Capabilities").ReactSurface>>, Error>;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,YAAY,iJAAmE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capabilities, Capability } from '@dxos/app-framework';
3
+ declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Capabilities.ReactSurface>>, never, never>;
4
+ export default _default;
5
+ //# sourceMappingURL=react-surface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;;AAS/D,wBAeE"}
@@ -1,7 +1,12 @@
1
1
  import React from 'react';
2
- import { type Masonry } from '../types';
3
- export declare const MasonryContainer: ({ object, role }: {
4
- object: Masonry.Masonry;
2
+ import { type Ref } from '@dxos/echo';
3
+ import { type View } from '@dxos/schema';
4
+ export type MasonryContainerProps = {
5
+ view: View.View;
6
+ role?: string;
7
+ };
8
+ export declare const MasonryContainer: ({ view: viewOrRef, role: _role, }: {
9
+ view: View.View | Ref.Ref<View.View>;
5
10
  role?: string;
6
11
  }) => React.JSX.Element;
7
12
  //# sourceMappingURL=MasonryContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MasonryContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/MasonryContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAWnD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AAMxC,eAAO,MAAM,gBAAgB,GAAI,kBAAkB;IAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,sBAqC5F,CAAC"}
1
+ {"version":3,"file":"MasonryContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/MasonryContainer.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAe,KAAK,GAAG,EAAQ,MAAM,YAAY,CAAC;AAKzD,OAAO,EAAE,KAAK,IAAI,EAAwB,MAAM,cAAc,CAAC;AAE/D,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,mCAG9B;IACD,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,sBAsCA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MasonryContainer.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/MasonryContainer.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAgC1B,QAAA,MAAM,IAAI;;;;;;;;CAmCM,CAAC;AAEjB,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"MasonryContainer.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/MasonryContainer.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,MAAM,OAAO,CAAC;AA4B1B,QAAA,MAAM,IAAI;;;;;;;;CAqCM,CAAC;AAEjB,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -1,3 +1,3 @@
1
- import { type PluginMeta } from '@dxos/app-framework';
2
- export declare const meta: PluginMeta;
1
+ import { type Plugin } from '@dxos/app-framework';
2
+ export declare const meta: Plugin.Meta;
3
3
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,eAAO,MAAM,IAAI,EAAE,UAWlB,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,IAWzB,CAAC"}
@@ -1,19 +1,16 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import { Obj, Type } from '@dxos/echo';
3
3
  import { View } from '@dxos/schema';
4
- declare const MasonrySchema: Type.obj<Schema.Struct<{
5
- name: Schema.optional<typeof Schema.String>;
6
- view: import("@dxos/echo/internal").RefSchema<View.View>;
7
- arrangement: Schema.optional<Schema.mutable<Schema.Array$<Schema.mutable<Schema.Struct<{
8
- ids: Schema.Array$<import("@dxos/keys").ObjectIdClass>;
9
- hidden: Schema.optional<typeof Schema.Boolean>;
10
- }>>>>>;
11
- }>>;
12
- export interface Masonry extends Schema.Schema.Type<typeof MasonrySchema> {
4
+ export declare const Masonry: Type.Obj<{
5
+ readonly view: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & View.View>;
6
+ readonly name?: string | undefined;
7
+ readonly arrangement?: readonly {
8
+ readonly hidden?: boolean | undefined;
9
+ readonly ids: readonly string[];
10
+ }[] | undefined;
11
+ }, Schema.Struct.Fields>;
12
+ export interface Masonry extends Schema.Schema.Type<typeof Masonry> {
13
13
  }
14
- export interface MasonryEncoded extends Schema.Schema.Encoded<typeof MasonrySchema> {
15
- }
16
- export declare const Masonry: Schema.Schema<Masonry, MasonryEncoded>;
17
14
  type MakeProps = Omit<Partial<Obj.MakeProps<typeof Masonry>>, 'view'> & {
18
15
  view: View.View;
19
16
  };
@@ -21,11 +18,11 @@ type MakeProps = Omit<Partial<Obj.MakeProps<typeof Masonry>>, 'view'> & {
21
18
  * Make a masonry as a view of a data set.
22
19
  */
23
20
  export declare const make: ({ name, arrangement, view }: MakeProps) => Masonry;
24
- export declare const MasonryV1: Type.obj<Schema.Struct<{
25
- arrangement: Schema.optional<Schema.mutable<Schema.Array$<Schema.mutable<Schema.Struct<{
26
- ids: Schema.Array$<import("@dxos/keys").ObjectIdClass>;
27
- hidden: Schema.optional<typeof Schema.Boolean>;
28
- }>>>>>;
29
- }>>;
21
+ export declare const MasonryV1: Type.Obj<{
22
+ readonly arrangement?: readonly {
23
+ readonly hidden?: boolean | undefined;
24
+ readonly ids: readonly string[];
25
+ }[] | undefined;
26
+ }, Schema.Struct.Fields>;
30
27
  export {};
31
28
  //# sourceMappingURL=Masonry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Masonry.d.ts","sourceRoot":"","sources":["../../../../src/types/Masonry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,GAAG,EAAO,IAAI,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAkB,MAAM,cAAc,CAAC;AAEpD,QAAA,MAAM,aAAa;;;;;;;GAmBlB,CAAC;AACF,MAAM,WAAW,OAAQ,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC;CAAG;AAC5E,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,aAAa,CAAC;CAAG;AACtF,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,CAAiB,CAAC;AAE7E,KAAK,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG;IACtE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,IAAI,GAAI,6BAAkC,SAAS,KAAG,OAElE,CAAC;AAMF,eAAO,MAAM,SAAS;;;;;GAYrB,CAAC"}
1
+ {"version":3,"file":"Masonry.d.ts","sourceRoot":"","sources":["../../../../src/types/Masonry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,GAAG,EAAO,IAAI,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAkB,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,OAAO;;;;;;;wBAmBnB,CAAC;AAEF,MAAM,WAAW,OAAQ,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC;CAAG;AAEtE,KAAK,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG;IACtE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,IAAI,GAAI,6BAAkC,SAAS,KAAG,OAElE,CAAC;AAMF,eAAO,MAAM,SAAS;;;;;wBAYrB,CAAC"}
@@ -1,23 +1,6 @@
1
1
  import * as Schema from 'effect/Schema';
2
- import * as Masonry from './Masonry';
3
2
  export declare const MasonryProps: Schema.Struct<{
4
3
  name: Schema.optional<typeof Schema.String>;
5
4
  typename: Schema.optional<Schema.SchemaClass<string, string, never>>;
6
5
  }>;
7
- declare const CreateMasonry_base: Schema.TaggedClass<CreateMasonry, `${string}/create`, {
8
- readonly _tag: Schema.tag<`${string}/create`>;
9
- } & {
10
- input: Schema.extend<Schema.Struct<{
11
- space: Schema.Schema<import("@dxos/client-protocol").Space, import("@dxos/client-protocol").Space, never>;
12
- }>, Schema.Struct<{
13
- name: Schema.optional<typeof Schema.String>;
14
- typename: Schema.optional<Schema.SchemaClass<string, string, never>>;
15
- }>>;
16
- output: Schema.Struct<{
17
- object: Schema.Schema<Masonry.Masonry, Masonry.MasonryEncoded, never>;
18
- }>;
19
- }>;
20
- export declare class CreateMasonry extends CreateMasonry_base {
21
- }
22
- export {};
23
6
  //# sourceMappingURL=MasonryAction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MasonryAction.d.ts","sourceRoot":"","sources":["../../../../src/types/MasonryAction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAIrC,eAAO,MAAM,YAAY;;;EAYvB,CAAC;;;;;;;;;;;;;;AAEH,qBAAa,aAAc,SAAQ,kBAKjC;CAAG"}
1
+ {"version":3,"file":"MasonryAction.d.ts","sourceRoot":"","sources":["../../../../src/types/MasonryAction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,eAAO,MAAM,YAAY;;;EAYvB,CAAC"}