atom.io 0.14.0 → 0.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/dist/index.cjs +1421 -52
- package/data/dist/index.cjs.map +1 -1
- package/data/dist/index.d.cts +317 -16
- package/data/dist/index.js +10 -267
- package/data/dist/index.js.map +1 -1
- package/data/package.json +5 -5
- package/data/src/join.ts +3 -3
- package/dist/chunk-C4YZZNRH.js +67 -0
- package/dist/chunk-C4YZZNRH.js.map +1 -0
- package/dist/chunk-CWKKQKVQ.js +68 -0
- package/dist/chunk-CWKKQKVQ.js.map +1 -0
- package/dist/chunk-GMN5KH6A.js +309 -0
- package/dist/chunk-GMN5KH6A.js.map +1 -0
- package/dist/chunk-N7ADBQJG.js +176 -0
- package/dist/chunk-N7ADBQJG.js.map +1 -0
- package/dist/chunk-NYCVSXQB.js +181 -0
- package/dist/chunk-NYCVSXQB.js.map +1 -0
- package/dist/chunk-PURABO5G.js +2581 -0
- package/dist/chunk-PURABO5G.js.map +1 -0
- package/dist/index.cjs +2330 -55
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +272 -22
- package/dist/index.js +1 -152
- package/dist/index.js.map +1 -1
- package/dist/metafile-cjs.json +1 -1
- package/internal/dist/index.cjs +299 -106
- package/internal/dist/index.cjs.map +1 -1
- package/internal/dist/index.d.cts +231 -30
- package/internal/dist/index.js +1 -2240
- package/internal/dist/index.js.map +1 -1
- package/internal/package.json +5 -5
- package/internal/src/atom/create-atom.ts +3 -1
- package/internal/src/families/create-atom-family.ts +3 -4
- package/internal/src/mutable/get-update-family.ts +23 -0
- package/internal/src/mutable/index.ts +1 -4
- package/internal/src/mutable/is-mutable.ts +44 -0
- package/internal/src/mutable/tracker.ts +9 -2
- package/internal/src/subject.ts +2 -1
- package/internal/src/timeline/add-atom-to-timeline.ts +10 -1
- package/internal/src/timeline/create-timeline.ts +44 -16
- package/introspection/dist/index.cjs +1566 -46
- package/introspection/dist/index.cjs.map +1 -1
- package/introspection/dist/index.d.cts +376 -4
- package/introspection/dist/index.js +2 -316
- package/introspection/dist/index.js.map +1 -1
- package/introspection/package.json +5 -5
- package/json/dist/index.cjs +1505 -8
- package/json/dist/index.cjs.map +1 -1
- package/json/dist/index.d.cts +373 -7
- package/json/dist/index.js +1 -76
- package/json/dist/index.js.map +1 -1
- package/json/package.json +5 -5
- package/package.json +5 -4
- package/react/dist/index.cjs +1549 -14
- package/react/dist/index.cjs.map +1 -1
- package/react/dist/index.d.cts +377 -4
- package/react/dist/index.js +2 -68
- package/react/dist/index.js.map +1 -1
- package/react/package.json +5 -5
- package/react-devtools/dist/index.cjs +2216 -198
- package/react-devtools/dist/index.cjs.map +1 -1
- package/react-devtools/dist/index.css +2 -2
- package/react-devtools/dist/index.d.cts +150 -24
- package/react-devtools/dist/index.js +57 -297
- package/react-devtools/dist/index.js.map +1 -1
- package/react-devtools/package.json +5 -5
- package/realtime-client/dist/index.cjs +1530 -35
- package/realtime-client/dist/index.cjs.map +1 -1
- package/realtime-client/dist/index.d.cts +384 -12
- package/realtime-client/dist/index.js +2 -165
- package/realtime-client/dist/index.js.map +1 -1
- package/realtime-client/package.json +5 -5
- package/realtime-react/dist/index.cjs +1727 -35
- package/realtime-react/dist/index.cjs.map +1 -1
- package/realtime-react/dist/index.d.cts +49 -9
- package/realtime-react/dist/index.js +4 -66
- package/realtime-react/dist/index.js.map +1 -1
- package/realtime-react/package.json +5 -5
- package/realtime-server/dist/index.cjs +1549 -58
- package/realtime-server/dist/index.cjs.map +1 -1
- package/realtime-server/dist/index.d.cts +394 -11
- package/realtime-server/dist/index.js +27 -21
- package/realtime-server/dist/index.js.map +1 -1
- package/realtime-server/package.json +6 -6
- package/realtime-testing/dist/index.cjs +2377 -16
- package/realtime-testing/dist/index.cjs.map +1 -1
- package/realtime-testing/dist/index.d.cts +489 -3
- package/realtime-testing/dist/index.js +10 -31
- package/realtime-testing/dist/index.js.map +1 -1
- package/realtime-testing/package.json +5 -5
- package/src/atom.ts +3 -1
- package/transceivers/set-rtx/dist/index.cjs +32 -10
- package/transceivers/set-rtx/dist/index.cjs.map +1 -1
- package/transceivers/set-rtx/dist/index.d.cts +29 -3
- package/transceivers/set-rtx/dist/index.js +2 -3
- package/transceivers/set-rtx/dist/index.js.map +1 -1
- package/transceivers/set-rtx/package.json +6 -6
- package/data/dist/index.d.ts +0 -158
- package/data/dist/metafile-cjs.json +0 -1
- package/data/dist/metafile-esm.json +0 -1
- package/dist/index.d.ts +0 -243
- package/dist/metafile-esm.json +0 -1
- package/internal/dist/index.d.ts +0 -421
- package/internal/dist/metafile-cjs.json +0 -1
- package/internal/dist/metafile-esm.json +0 -1
- package/internal/src/mutable/is-atom-token-mutable.ts +0 -7
- package/introspection/dist/index.d.ts +0 -24
- package/introspection/dist/metafile-cjs.json +0 -1
- package/introspection/dist/metafile-esm.json +0 -1
- package/json/dist/index.d.ts +0 -51
- package/json/dist/metafile-cjs.json +0 -1
- package/json/dist/metafile-esm.json +0 -1
- package/react/dist/index.d.ts +0 -23
- package/react/dist/metafile-cjs.json +0 -1
- package/react/dist/metafile-esm.json +0 -1
- package/react-devtools/dist/index.d.ts +0 -341
- package/react-devtools/dist/metafile-cjs.json +0 -1
- package/react-devtools/dist/metafile-esm.json +0 -1
- package/realtime-client/dist/index.d.ts +0 -22
- package/realtime-client/dist/metafile-cjs.json +0 -1
- package/realtime-client/dist/metafile-esm.json +0 -1
- package/realtime-react/dist/index.d.ts +0 -27
- package/realtime-react/dist/metafile-cjs.json +0 -1
- package/realtime-react/dist/metafile-esm.json +0 -1
- package/realtime-server/dist/index.d.ts +0 -25
- package/realtime-server/dist/metafile-cjs.json +0 -1
- package/realtime-server/dist/metafile-esm.json +0 -1
- package/realtime-testing/dist/index.d.ts +0 -49
- package/realtime-testing/dist/metafile-cjs.json +0 -1
- package/realtime-testing/dist/metafile-esm.json +0 -1
- package/transceivers/set-rtx/dist/index.d.ts +0 -40
- package/transceivers/set-rtx/dist/metafile-cjs.json +0 -1
- package/transceivers/set-rtx/dist/metafile-esm.json +0 -1
|
@@ -9,7 +9,10 @@ import type {
|
|
|
9
9
|
} from "atom.io"
|
|
10
10
|
|
|
11
11
|
import { newest } from "../lineage"
|
|
12
|
-
import
|
|
12
|
+
import { getUpdateToken } from "../mutable"
|
|
13
|
+
import { getUpdateFamily } from "../mutable/get-update-family"
|
|
14
|
+
import { isMutable } from "../mutable/is-mutable"
|
|
15
|
+
import { type Store, withdraw } from "../store"
|
|
13
16
|
import { Subject } from "../subject"
|
|
14
17
|
import { addAtomToTimeline } from "./add-atom-to-timeline"
|
|
15
18
|
|
|
@@ -70,21 +73,26 @@ export function createTimeline(
|
|
|
70
73
|
if (options.shouldCapture) {
|
|
71
74
|
tl.shouldCapture = options.shouldCapture
|
|
72
75
|
}
|
|
73
|
-
|
|
76
|
+
const timelineKey = options.key
|
|
74
77
|
const target = newest(store)
|
|
75
78
|
for (const tokenOrFamily of options.atoms) {
|
|
76
|
-
|
|
77
|
-
|
|
79
|
+
let atomKey = tokenOrFamily.key
|
|
80
|
+
const existingTimelineKey = target.timelineAtoms.getRelatedKey(atomKey)
|
|
81
|
+
if (existingTimelineKey) {
|
|
78
82
|
store.logger.error(
|
|
79
83
|
`❌`,
|
|
80
84
|
`timeline`,
|
|
81
85
|
options.key,
|
|
82
|
-
`Failed to add atom "${
|
|
86
|
+
`Failed to add atom "${atomKey}" because it already belongs to timeline "${existingTimelineKey}"`,
|
|
83
87
|
)
|
|
84
88
|
continue
|
|
85
89
|
}
|
|
86
90
|
if (tokenOrFamily.type === `atom_family`) {
|
|
87
|
-
|
|
91
|
+
let family = tokenOrFamily
|
|
92
|
+
if (isMutable(family)) {
|
|
93
|
+
family = getUpdateFamily(family, store)
|
|
94
|
+
atomKey = family.key
|
|
95
|
+
}
|
|
88
96
|
family.subject.subscribe(`timeline:${options.key}`, (token) => {
|
|
89
97
|
addAtomToTimeline(token, tl, store)
|
|
90
98
|
})
|
|
@@ -94,32 +102,52 @@ export function createTimeline(
|
|
|
94
102
|
}
|
|
95
103
|
}
|
|
96
104
|
} else {
|
|
97
|
-
|
|
98
|
-
if (
|
|
105
|
+
let atom = withdraw(tokenOrFamily, store)
|
|
106
|
+
if (atom === undefined) {
|
|
107
|
+
store.logger.error(
|
|
108
|
+
`❌`,
|
|
109
|
+
`timeline`,
|
|
110
|
+
options.key,
|
|
111
|
+
`Failed to add atom "${atomKey}" because it does not exist in the store`,
|
|
112
|
+
)
|
|
113
|
+
continue
|
|
114
|
+
}
|
|
115
|
+
if (isMutable(atom)) {
|
|
116
|
+
const updateAtom = withdraw(getUpdateToken(atom), store)
|
|
117
|
+
if (updateAtom === undefined) {
|
|
118
|
+
store.logger.error(
|
|
119
|
+
`❌`,
|
|
120
|
+
`timeline`,
|
|
121
|
+
options.key,
|
|
122
|
+
`Failed to add update atom "${atomKey}" because it does not exist in the store`,
|
|
123
|
+
)
|
|
124
|
+
continue
|
|
125
|
+
}
|
|
126
|
+
atom = updateAtom
|
|
127
|
+
atomKey = atom.key
|
|
128
|
+
}
|
|
129
|
+
if (`family` in atom) {
|
|
99
130
|
const familyTimelineKey = target.timelineAtoms.getRelatedKey(
|
|
100
|
-
|
|
131
|
+
atom.family.key,
|
|
101
132
|
)
|
|
102
133
|
if (familyTimelineKey) {
|
|
103
134
|
store.logger.error(
|
|
104
135
|
`❌`,
|
|
105
136
|
`timeline`,
|
|
106
137
|
options.key,
|
|
107
|
-
`Failed to add atom "${
|
|
138
|
+
`Failed to add atom "${atom.key}" because its family "${atom.family.key}" already belongs to timeline "${familyTimelineKey}"`,
|
|
108
139
|
)
|
|
109
140
|
continue
|
|
110
141
|
}
|
|
111
142
|
}
|
|
112
|
-
addAtomToTimeline(
|
|
143
|
+
addAtomToTimeline(atom, tl, store)
|
|
113
144
|
}
|
|
114
|
-
target.timelineAtoms
|
|
115
|
-
atomKey: tokenOrFamily.key,
|
|
116
|
-
timelineKey: options.key,
|
|
117
|
-
})
|
|
145
|
+
target.timelineAtoms.set({ atomKey, timelineKey })
|
|
118
146
|
}
|
|
119
147
|
|
|
120
148
|
store.timelines.set(options.key, tl)
|
|
121
149
|
const token: TimelineToken = {
|
|
122
|
-
key:
|
|
150
|
+
key: timelineKey,
|
|
123
151
|
type: `timeline`,
|
|
124
152
|
}
|
|
125
153
|
store.subject.timelineCreation.next(token)
|