@sectile/dom 0.4.0 → 0.6.0

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 (71) hide show
  1. package/README.md +8 -0
  2. package/dist/calendar.d.ts +38 -88
  3. package/dist/calendar.d.ts.map +1 -1
  4. package/dist/calendar.js +160 -267
  5. package/dist/calendar.js.map +1 -1
  6. package/dist/date-field.d.ts +6 -6
  7. package/dist/date-field.d.ts.map +1 -1
  8. package/dist/date-field.js +6 -6
  9. package/dist/date-field.js.map +1 -1
  10. package/dist/date-picker.d.ts +11 -9
  11. package/dist/date-picker.d.ts.map +1 -1
  12. package/dist/date-picker.js +14 -12
  13. package/dist/date-picker.js.map +1 -1
  14. package/dist/date-range-field.d.ts +7 -7
  15. package/dist/date-range-field.d.ts.map +1 -1
  16. package/dist/date-range-field.js +7 -7
  17. package/dist/date-range-field.js.map +1 -1
  18. package/dist/date-range-picker.d.ts +10 -8
  19. package/dist/date-range-picker.d.ts.map +1 -1
  20. package/dist/date-range-picker.js +12 -11
  21. package/dist/date-range-picker.js.map +1 -1
  22. package/dist/date-time-field.d.ts +6 -6
  23. package/dist/date-time-field.d.ts.map +1 -1
  24. package/dist/date-time-field.js +6 -6
  25. package/dist/date-time-field.js.map +1 -1
  26. package/dist/date-time-picker.d.ts +10 -9
  27. package/dist/date-time-picker.d.ts.map +1 -1
  28. package/dist/date-time-picker.js +15 -13
  29. package/dist/date-time-picker.js.map +1 -1
  30. package/dist/date-time-range-picker.d.ts +10 -9
  31. package/dist/date-time-range-picker.d.ts.map +1 -1
  32. package/dist/date-time-range-picker.js +15 -13
  33. package/dist/date-time-range-picker.js.map +1 -1
  34. package/dist/index.d.ts +3 -2
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +2 -1
  37. package/dist/index.js.map +1 -1
  38. package/dist/internal/floating-position.d.ts.map +1 -1
  39. package/dist/internal/floating-position.js +6 -2
  40. package/dist/internal/floating-position.js.map +1 -1
  41. package/dist/internal/reference-date.d.ts +3 -0
  42. package/dist/internal/reference-date.d.ts.map +1 -0
  43. package/dist/internal/reference-date.js +8 -0
  44. package/dist/internal/reference-date.js.map +1 -0
  45. package/dist/internal/result.d.ts +19 -0
  46. package/dist/internal/result.d.ts.map +1 -0
  47. package/dist/internal/result.js +8 -0
  48. package/dist/internal/result.js.map +1 -0
  49. package/dist/month-picker.d.ts +2 -2
  50. package/dist/month-picker.d.ts.map +1 -1
  51. package/dist/month-picker.js +1 -1
  52. package/dist/month-picker.js.map +1 -1
  53. package/dist/month-range-picker.d.ts +1 -1
  54. package/dist/month-range-picker.d.ts.map +1 -1
  55. package/dist/month-range-picker.js +1 -1
  56. package/dist/month-range-picker.js.map +1 -1
  57. package/dist/reorder.d.ts.map +1 -1
  58. package/dist/reorder.js.map +1 -1
  59. package/dist/time-field.d.ts +6 -6
  60. package/dist/time-field.d.ts.map +1 -1
  61. package/dist/time-field.js +6 -6
  62. package/dist/time-field.js.map +1 -1
  63. package/dist/time-range-field.d.ts +7 -7
  64. package/dist/time-range-field.d.ts.map +1 -1
  65. package/dist/time-range-field.js +6 -6
  66. package/dist/time-range-field.js.map +1 -1
  67. package/dist/virtual.d.ts +58 -0
  68. package/dist/virtual.d.ts.map +1 -0
  69. package/dist/virtual.js +322 -0
  70. package/dist/virtual.js.map +1 -0
  71. package/package.json +9 -2
@@ -1,15 +1,15 @@
1
1
  import { unwrap } from '@sectile/core/result';
2
- import { applyTimeRangeFieldEvent, tryCreateTimeRangeFieldState } from '@sectile/core/time-range-field';
3
- import { createFacadeConnection } from '@sectile/core/adapter-runtime';
4
- import { createSemanticController } from '@sectile/core/adapter-runtime';
2
+ import { createDOMTemporalController, createDOMTemporalFacadeConnection } from './internal/result.js';
3
+ import { applyTimeRangeFieldEvent, tryCreateTimeRangeFieldState } from '@sectile/temporal/time-range-field';
4
+ import {} from '@sectile/core/adapter-runtime';
5
5
  import { setFieldValidity, setInteractionAttributes } from './internal/interaction.js';
6
6
  import { DOMTextElementBinding } from './internal/text-element.js';
7
7
  import { toTextEvent } from './text.js';
8
8
  export function createTimeRangeField(options) { return unwrap(tryCreateTimeRangeField(options)); }
9
- export function tryCreateTimeRangeField(options) { return createFacadeConnection(options, construct); }
9
+ export function tryCreateTimeRangeField(options) { return createDOMTemporalFacadeConnection(options, construct); }
10
10
  function construct(options) {
11
11
  const controlled = { value: options.value !== undefined, start: options.startInputState !== undefined, end: options.endInputState !== undefined };
12
- const runtime = createSemanticController({
12
+ const runtime = createDOMTemporalController({
13
13
  initial: tryCreateTimeRangeFieldState({ value: options.value !== undefined ? options.value : options.defaultValue ?? null, ...optionalInputState('startInputState', options.startInputState ?? options.defaultStartInputState), ...optionalInputState('endInputState', options.endInputState ?? options.defaultEndInputState) }),
14
14
  reducer: (state, event) => applyTimeRangeFieldEvent(state, event, { ...options.policies, ...(options.required === undefined ? {} : { required: options.required }) }),
15
15
  reconcile: (previous, proposed) => tryCreateTimeRangeFieldState({ startValue: controlled.value ? previous.start.value : proposed.start.value, endValue: controlled.value ? previous.end.value : proposed.end.value, startInputState: controlled.start ? previous.start.inputState : proposed.start.inputState, endInputState: controlled.end ? previous.end.inputState : proposed.end.inputState, active: proposed.active }),
@@ -94,5 +94,5 @@ class DOMTimeRangeField {
94
94
  this.handleEvent({ type: 'field', endpoint, event: 'cancel' }); }
95
95
  }
96
96
  function optionalInputState(key, value) { return value === undefined ? {} : { [key]: value }; }
97
- export { tryCreateTimeRangeFieldState } from '@sectile/core/time-range-field';
97
+ export { tryCreateTimeRangeFieldState } from '@sectile/temporal/time-range-field';
98
98
  //# sourceMappingURL=time-range-field.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-range-field.js","sourceRoot":"","sources":["../src/time-range-field.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"time-range-field.js","sourceRoot":"","sources":["../src/time-range-field.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import type { SectileError, StableID } from '@sectile/core';
2
+ import type { ExtentUpdate } from '@sectile/virtual/extent-index';
3
+ import type { VirtualInsets, VirtualLayoutMutation, VirtualLayoutPlan, VirtualLayoutStrategy, VirtualPlacement, VirtualPoint, VirtualRect, VirtualScrollAlignment } from '@sectile/virtual/layout';
4
+ import type { VirtualErrorCode } from '@sectile/virtual';
5
+ import type { DOMVirtualResult } from './internal/result.js';
6
+ export interface VirtualizerEnvironment {
7
+ requestFrame(callback: FrameRequestCallback): number;
8
+ cancelFrame(handle: number): void;
9
+ createResizeObserver(callback: ResizeObserverCallback): ResizeObserver;
10
+ }
11
+ export interface VirtualMeasurementContext<State, ID extends StableID> {
12
+ readonly element: HTMLElement;
13
+ readonly entry: ResizeObserverEntry;
14
+ readonly placement: VirtualPlacement<ID>;
15
+ readonly state: State;
16
+ }
17
+ export type VirtualMeasurementResolver<State, ID extends StableID, Measurement> = (context: VirtualMeasurementContext<State, ID>) => Measurement | readonly Measurement[] | null;
18
+ export type VirtualViewportReader = (root: HTMLElement) => VirtualRect;
19
+ export type VirtualScrollWriter = (root: HTMLElement, point: VirtualPoint) => void;
20
+ export interface VirtualizerOptions<State, ID extends StableID, Measurement, Mutation> {
21
+ readonly root: HTMLElement;
22
+ readonly state: State;
23
+ readonly strategy: VirtualLayoutStrategy<State, ID, Measurement, Mutation>;
24
+ readonly overscan?: number | Partial<VirtualInsets>;
25
+ readonly measure?: VirtualMeasurementResolver<State, ID, Measurement>;
26
+ readonly readViewport?: VirtualViewportReader;
27
+ readonly writeScroll?: VirtualScrollWriter;
28
+ readonly environment?: VirtualizerEnvironment;
29
+ readonly onPlanChange?: (plan: VirtualLayoutPlan<ID>, connection: VirtualizerConnection<State, ID, Measurement, Mutation>) => void;
30
+ readonly onStateChange?: (state: State) => void;
31
+ readonly onError?: (error: SectileError<VirtualErrorCode>) => void;
32
+ }
33
+ export type VirtualizerPlanChangeHandler<ID extends StableID = StableID> = NonNullable<VirtualizerOptions<unknown, ID, unknown, unknown>['onPlanChange']>;
34
+ export type VirtualizerStateChangeHandler<State> = NonNullable<VirtualizerOptions<State, StableID, unknown, unknown>['onStateChange']>;
35
+ export type VirtualizerErrorHandler = NonNullable<VirtualizerOptions<unknown, StableID, unknown, unknown>['onError']>;
36
+ export interface VirtualizerConnection<State, ID extends StableID, Measurement, Mutation> {
37
+ getState(): State;
38
+ getPlan(): VirtualLayoutPlan<ID>;
39
+ setState(state: State): DOMVirtualResult<VirtualLayoutPlan<ID>>;
40
+ setOverscan(overscan?: number | Partial<VirtualInsets>): DOMVirtualResult<VirtualLayoutPlan<ID>>;
41
+ registerItem(element: HTMLElement, id: ID): () => void;
42
+ measure(measurements: readonly Measurement[]): DOMVirtualResult<VirtualLayoutMutation<State>>;
43
+ mutate(mutation: Mutation): DOMVirtualResult<VirtualLayoutMutation<State>>;
44
+ scrollTo(id: ID, alignment?: VirtualScrollAlignment): DOMVirtualResult<VirtualPoint>;
45
+ refresh(): void;
46
+ flush(): DOMVirtualResult<VirtualLayoutPlan<ID>>;
47
+ disconnect(): void;
48
+ }
49
+ export interface VirtualItemStyleOptions {
50
+ readonly width?: boolean;
51
+ readonly height?: boolean;
52
+ }
53
+ export declare function createVirtualizer<State, ID extends StableID, Measurement, Mutation>(options: VirtualizerOptions<State, ID, Measurement, Mutation>): VirtualizerConnection<State, ID, Measurement, Mutation>;
54
+ export declare function createAxisMeasurementResolver<State, ID extends StableID>(axis: 'vertical' | 'horizontal'): VirtualMeasurementResolver<State, ID, ExtentUpdate>;
55
+ export declare function virtualContentStyle<ID extends StableID>(plan: VirtualLayoutPlan<ID>): Readonly<Record<string, string>>;
56
+ export declare function virtualItemStyle<ID extends StableID>(placement: VirtualPlacement<ID>, options?: VirtualItemStyleOptions): Readonly<Record<string, string | number>>;
57
+ export type { ExtentUpdate, VirtualInsets, VirtualLayoutMutation, VirtualLayoutPlan, VirtualLayoutStrategy, VirtualPlacement, VirtualPoint, VirtualRect, VirtualScrollAlignment, };
58
+ //# sourceMappingURL=virtual.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual.d.ts","sourceRoot":"","sources":["../src/virtual.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,322 @@
1
+ import { unwrap } from '@sectile/core/result';
2
+ export function createVirtualizer(options) {
3
+ return new DOMVirtualizer(options);
4
+ }
5
+ export function createAxisMeasurementResolver(axis) {
6
+ return ({ element, placement }) => {
7
+ const bounds = element.getBoundingClientRect();
8
+ return Object.freeze({
9
+ index: placement.index,
10
+ extent: Object.freeze({
11
+ kind: 'exact',
12
+ value: axis === 'vertical' ? bounds.height : bounds.width,
13
+ }),
14
+ });
15
+ };
16
+ }
17
+ export function virtualContentStyle(plan) {
18
+ return Object.freeze({
19
+ position: 'relative',
20
+ width: `${plan.contentSize.width}px`,
21
+ height: `${plan.contentSize.height}px`,
22
+ });
23
+ }
24
+ export function virtualItemStyle(placement, options = {}) {
25
+ const style = {
26
+ position: 'absolute',
27
+ top: '0',
28
+ left: '0',
29
+ transform: `translate3d(${placement.rect.x}px, ${placement.rect.y}px, 0)`,
30
+ };
31
+ if (options.width === true)
32
+ style['width'] = `${placement.rect.width}px`;
33
+ if (options.height === true)
34
+ style['height'] = `${placement.rect.height}px`;
35
+ if ('zIndex' in placement && typeof placement['zIndex'] === 'number') {
36
+ style['zIndex'] = placement['zIndex'];
37
+ }
38
+ return Object.freeze(style);
39
+ }
40
+ class DOMVirtualizer {
41
+ #root;
42
+ #strategy;
43
+ #measure;
44
+ #readViewport;
45
+ #writeScroll;
46
+ #environment;
47
+ #onPlanChange;
48
+ #onStateChange;
49
+ #onError;
50
+ #rootObserver;
51
+ #itemObserver;
52
+ #items = new Map();
53
+ #itemIDs = new Map();
54
+ #pendingEntries = new Map();
55
+ #handleScroll;
56
+ #state;
57
+ #plan;
58
+ #overscan;
59
+ #frame = null;
60
+ #disconnected = false;
61
+ constructor(options) {
62
+ this.#root = options.root;
63
+ this.#state = options.state;
64
+ this.#strategy = options.strategy;
65
+ this.#overscan = options.overscan;
66
+ this.#measure = options.measure;
67
+ this.#readViewport = options.readViewport ?? defaultViewport;
68
+ this.#writeScroll = options.writeScroll ?? defaultScrollWriter;
69
+ this.#environment = options.environment ?? browserEnvironment(options.root);
70
+ this.#onPlanChange = options.onPlanChange;
71
+ this.#onStateChange = options.onStateChange;
72
+ this.#onError = options.onError;
73
+ this.#plan = unwrap(this.#query(this.#state, this.#overscan));
74
+ this.#handleScroll = () => {
75
+ this.refresh();
76
+ };
77
+ this.#rootObserver = this.#environment.createResizeObserver(() => {
78
+ this.refresh();
79
+ });
80
+ this.#itemObserver = this.#environment.createResizeObserver((entries) => {
81
+ for (const entry of entries) {
82
+ if (this.#itemIDs.has(entry.target))
83
+ this.#pendingEntries.set(entry.target, entry);
84
+ }
85
+ this.refresh();
86
+ });
87
+ this.#root.addEventListener('scroll', this.#handleScroll, {
88
+ passive: true,
89
+ });
90
+ this.#rootObserver.observe(this.#root);
91
+ this.#onPlanChange?.(this.#plan, this);
92
+ }
93
+ getState() {
94
+ return this.#state;
95
+ }
96
+ getPlan() {
97
+ return this.#plan;
98
+ }
99
+ setState(state) {
100
+ this.#requireConnected();
101
+ if (Object.is(state, this.#state))
102
+ return { ok: true, value: this.#plan };
103
+ const plan = this.#query(state, this.#overscan);
104
+ if (!plan.ok)
105
+ return this.#report(plan);
106
+ this.#state = state;
107
+ this.#publish(plan.value);
108
+ return plan;
109
+ }
110
+ setOverscan(overscan) {
111
+ this.#requireConnected();
112
+ const plan = this.#query(this.#state, overscan);
113
+ if (!plan.ok)
114
+ return this.#report(plan);
115
+ this.#overscan = overscan;
116
+ this.#publish(plan.value);
117
+ return plan;
118
+ }
119
+ registerItem(element, id) {
120
+ this.#requireConnected();
121
+ const previous = this.#items.get(id);
122
+ if (previous !== undefined && previous !== element) {
123
+ this.#itemObserver.unobserve(previous);
124
+ this.#itemIDs.delete(previous);
125
+ this.#pendingEntries.delete(previous);
126
+ }
127
+ const previousID = this.#itemIDs.get(element);
128
+ if (previousID !== undefined && previousID !== id)
129
+ this.#items.delete(previousID);
130
+ this.#items.set(id, element);
131
+ this.#itemIDs.set(element, id);
132
+ if (this.#measure !== undefined)
133
+ this.#itemObserver.observe(element);
134
+ return () => {
135
+ if (this.#items.get(id) !== element)
136
+ return;
137
+ this.#items.delete(id);
138
+ this.#itemIDs.delete(element);
139
+ this.#pendingEntries.delete(element);
140
+ this.#itemObserver.unobserve(element);
141
+ };
142
+ }
143
+ measure(measurements) {
144
+ this.#requireConnected();
145
+ const before = this.#query(this.#state, this.#overscan);
146
+ if (!before.ok)
147
+ return this.#reportFailure(before);
148
+ const result = this.#strategy.tryMeasure(this.#state, {
149
+ generation: before.value.generation,
150
+ measurements,
151
+ anchor: before.value.anchor,
152
+ });
153
+ if (!result.ok)
154
+ return this.#report(result);
155
+ this.#applyMutation(result.value);
156
+ this.#publishCurrent();
157
+ return result;
158
+ }
159
+ mutate(mutation) {
160
+ this.#requireConnected();
161
+ const before = this.#query(this.#state, this.#overscan);
162
+ if (!before.ok)
163
+ return this.#reportFailure(before);
164
+ const result = this.#strategy.tryMutate(this.#state, {
165
+ mutation,
166
+ anchor: before.value.anchor,
167
+ });
168
+ if (!result.ok)
169
+ return this.#report(result);
170
+ this.#applyMutation(result.value);
171
+ this.#publishCurrent();
172
+ return result;
173
+ }
174
+ scrollTo(id, alignment = 'nearest') {
175
+ this.#requireConnected();
176
+ const result = this.#strategy.tryScrollTarget(this.#state, id, this.#readViewport(this.#root), alignment);
177
+ if (!result.ok)
178
+ return this.#report(result);
179
+ this.#writeScroll(this.#root, result.value);
180
+ this.#publishCurrent();
181
+ return result;
182
+ }
183
+ refresh() {
184
+ if (this.#disconnected || this.#frame !== null)
185
+ return;
186
+ this.#frame = this.#environment.requestFrame(() => {
187
+ this.#frame = null;
188
+ this.flush();
189
+ });
190
+ }
191
+ flush() {
192
+ this.#requireConnected();
193
+ if (this.#frame !== null) {
194
+ this.#environment.cancelFrame(this.#frame);
195
+ this.#frame = null;
196
+ }
197
+ const before = this.#query(this.#state, this.#overscan);
198
+ if (!before.ok)
199
+ return this.#report(before);
200
+ const entries = [...this.#pendingEntries.values()];
201
+ this.#pendingEntries.clear();
202
+ if (this.#measure !== undefined && entries.length > 0) {
203
+ const placements = new Map(before.value.placements.map((placement) => [placement.id, placement]));
204
+ const measurements = [];
205
+ for (const entry of entries) {
206
+ const id = this.#itemIDs.get(entry.target);
207
+ if (id === undefined)
208
+ continue;
209
+ const placement = placements.get(id);
210
+ const element = this.#items.get(id);
211
+ if (placement === undefined || element === undefined)
212
+ continue;
213
+ const resolved = this.#measure({
214
+ element,
215
+ entry,
216
+ placement,
217
+ state: this.#state,
218
+ });
219
+ if (resolved === null)
220
+ continue;
221
+ if (Array.isArray(resolved))
222
+ measurements.push(...resolved);
223
+ else
224
+ measurements.push(resolved);
225
+ }
226
+ if (measurements.length > 0) {
227
+ const measured = this.#strategy.tryMeasure(this.#state, {
228
+ generation: before.value.generation,
229
+ measurements,
230
+ anchor: before.value.anchor,
231
+ });
232
+ if (!measured.ok)
233
+ this.#report(measured);
234
+ else
235
+ this.#applyMutation(measured.value);
236
+ }
237
+ }
238
+ return this.#publishCurrent();
239
+ }
240
+ disconnect() {
241
+ if (this.#disconnected)
242
+ return;
243
+ this.#disconnected = true;
244
+ if (this.#frame !== null)
245
+ this.#environment.cancelFrame(this.#frame);
246
+ this.#frame = null;
247
+ this.#root.removeEventListener('scroll', this.#handleScroll);
248
+ this.#rootObserver.disconnect();
249
+ this.#itemObserver.disconnect();
250
+ this.#items.clear();
251
+ this.#itemIDs.clear();
252
+ this.#pendingEntries.clear();
253
+ }
254
+ #query(state, overscan) {
255
+ return this.#strategy.tryQuery(state, {
256
+ viewport: this.#readViewport(this.#root),
257
+ ...(overscan === undefined ? {} : { overscan }),
258
+ });
259
+ }
260
+ #applyMutation(mutation) {
261
+ this.#state = mutation.state;
262
+ if (mutation.scrollDelta.x !== 0 || mutation.scrollDelta.y !== 0) {
263
+ const viewport = this.#readViewport(this.#root);
264
+ this.#writeScroll(this.#root, {
265
+ x: viewport.x + mutation.scrollDelta.x,
266
+ y: viewport.y + mutation.scrollDelta.y,
267
+ });
268
+ }
269
+ this.#onStateChange?.(this.#state);
270
+ }
271
+ #publishCurrent() {
272
+ const plan = this.#query(this.#state, this.#overscan);
273
+ if (!plan.ok)
274
+ return this.#report(plan);
275
+ this.#publish(plan.value);
276
+ return plan;
277
+ }
278
+ #publish(plan) {
279
+ this.#plan = plan;
280
+ this.#onPlanChange?.(plan, this);
281
+ }
282
+ #report(result) {
283
+ if (!result.ok)
284
+ this.#onError?.(result.error);
285
+ return result;
286
+ }
287
+ #reportFailure(result) {
288
+ if (result.ok)
289
+ throw new TypeError('Expected a failed virtual layout result.');
290
+ this.#onError?.(result.error);
291
+ return { ok: false, error: result.error };
292
+ }
293
+ #requireConnected() {
294
+ if (this.#disconnected)
295
+ throw new TypeError('Virtualizer connection is disconnected.');
296
+ }
297
+ }
298
+ function defaultViewport(root) {
299
+ return Object.freeze({
300
+ x: Math.max(0, root.scrollLeft),
301
+ y: Math.max(0, root.scrollTop),
302
+ width: Math.max(0, root.clientWidth),
303
+ height: Math.max(0, root.clientHeight),
304
+ });
305
+ }
306
+ function defaultScrollWriter(root, point) {
307
+ root.scrollTo({ left: point.x, top: point.y, behavior: 'auto' });
308
+ }
309
+ function browserEnvironment(root) {
310
+ const view = root.ownerDocument.defaultView;
311
+ if (view === null || typeof view.ResizeObserver !== 'function') {
312
+ throw new TypeError('Virtualizer requires a browser window with ResizeObserver support.');
313
+ }
314
+ return Object.freeze({
315
+ requestFrame: (callback) => view.requestAnimationFrame(callback),
316
+ cancelFrame: (handle) => {
317
+ view.cancelAnimationFrame(handle);
318
+ },
319
+ createResizeObserver: (callback) => new view.ResizeObserver(callback),
320
+ });
321
+ }
322
+ //# sourceMappingURL=virtual.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual.js","sourceRoot":"","sources":["../src/virtual.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sectile/dom",
3
- "version": "0.4.0",
3
+ "version": "0.6.0",
4
4
  "description": "DOM host adapters for Sectile semantic interaction machines.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -331,12 +331,19 @@
331
331
  "import": "./dist/editable.js",
332
332
  "default": "./dist/editable.js"
333
333
  },
334
+ "./virtual": {
335
+ "types": "./dist/virtual.d.ts",
336
+ "import": "./dist/virtual.js",
337
+ "default": "./dist/virtual.js"
338
+ },
334
339
  "./package.json": "./package.json"
335
340
  },
336
341
  "dependencies": {
337
342
  "@floating-ui/dom": "^1.8.0",
338
343
  "@standard-schema/spec": "^1.1.0",
339
- "@sectile/core": "0.4.0"
344
+ "@sectile/core": "0.6.0",
345
+ "@sectile/temporal": "0.6.0",
346
+ "@sectile/virtual": "0.6.0"
340
347
  },
341
348
  "devDependencies": {
342
349
  "happy-dom": "^20.11.6",