@texaryn/vue 0.4.3 → 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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # @texaryn/vue
2
2
 
3
+ ## 0.6.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 2c2786f: Add a standalone version 2 display document runtime, semantic renderer roots, bounded server update sessions, and validated host action arguments.
8
+ - 2c2786f: Add native drag reorder to every array renderer while retaining the existing accessible move controls.
9
+
10
+ ### Patch Changes
11
+
12
+ - Updated dependencies [2c2786f]
13
+ - Updated dependencies [2c2786f]
14
+ - @texaryn/core@0.15.0
15
+
16
+ ## 0.5.0
17
+
18
+ ### Minor Changes
19
+
20
+ - 82f38e9: Add explicit view expansion for recursion and budget boundaries.
21
+ - 8605d64: Adds localized Up and Down controls for reorderable array rows across all renderer families.
22
+
23
+ ### Patch Changes
24
+
25
+ - Updated dependencies [8605d64]
26
+ - Updated dependencies [82f38e9]
27
+ - Updated dependencies [8605d64]
28
+ - @texaryn/core@0.14.0
29
+
3
30
  ## 0.4.3
4
31
 
5
32
  ### Patch Changes
@@ -0,0 +1,34 @@
1
+ import type { Component, PropType } from 'vue';
2
+ import type { DocumentNode, DocumentRuntime, RendererRegistry } from '@texaryn/core';
3
+ export type DocumentWidgetComponent = Component;
4
+ export interface DocumentRootProps {
5
+ runtime: DocumentRuntime;
6
+ registry?: RendererRegistry<DocumentWidgetComponent, DocumentNode>;
7
+ onActionError?: (error: unknown) => void;
8
+ }
9
+ export declare const DocumentRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
10
+ runtime: {
11
+ type: PropType<DocumentRuntime>;
12
+ required: true;
13
+ };
14
+ registry: {
15
+ type: PropType<RendererRegistry<DocumentWidgetComponent, DocumentNode> | undefined>;
16
+ };
17
+ onActionError: {
18
+ type: PropType<(error: unknown) => void>;
19
+ };
20
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
21
+ [key: string]: any;
22
+ }> | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
23
+ runtime: {
24
+ type: PropType<DocumentRuntime>;
25
+ required: true;
26
+ };
27
+ registry: {
28
+ type: PropType<RendererRegistry<DocumentWidgetComponent, DocumentNode> | undefined>;
29
+ };
30
+ onActionError: {
31
+ type: PropType<(error: unknown) => void>;
32
+ };
33
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
34
+ //# sourceMappingURL=DocumentRoot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentRoot.d.ts","sourceRoot":"","sources":["../../src/components/DocumentRoot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAO,MAAM,KAAK,CAAA;AACnD,OAAO,KAAK,EAEV,YAAY,EACZ,eAAe,EACf,gBAAgB,EAEjB,MAAM,eAAe,CAAA;AAItB,MAAM,MAAM,uBAAuB,GAAG,SAAS,CAAA;AAE/C,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,gBAAgB,CAAC,uBAAuB,EAAE,YAAY,CAAC,CAAA;IAClE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CACzC;AAsFD,eAAO,MAAM,YAAY;;cAGM,QAAQ,CAAC,eAAe,CAAC;;;;cACxB,QAAQ,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC;;;cACtE,QAAQ,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;;;;;;cAF1C,QAAQ,CAAC,eAAe,CAAC;;;;cACxB,QAAQ,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC;;;cACtE,QAAQ,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;;iGAcvE,CAAA"}
@@ -0,0 +1,102 @@
1
+ import { computed, defineComponent, h, inject, provide, toRef } from 'vue';
2
+ import { useStore } from '../use-store.js';
3
+ const DOCUMENT_CONTEXT = Symbol('texaryn.vue.document');
4
+ const emptyRows = Object.freeze([]);
5
+ function useDocumentContext() {
6
+ const context = inject(DOCUMENT_CONTEXT);
7
+ if (!context)
8
+ throw new Error('Display nodes must be rendered below DocumentRoot');
9
+ return context;
10
+ }
11
+ let DisplayNodeView;
12
+ DisplayNodeView = defineComponent({
13
+ name: 'DisplayNodeView',
14
+ props: { nodeId: { type: String, required: true } },
15
+ setup(props) {
16
+ const context = useDocumentContext();
17
+ const node = computed(() => context.document.value.nodes[props.nodeId]);
18
+ return () => {
19
+ const current = node.value;
20
+ if (!current)
21
+ return null;
22
+ const widget = context.registry.value?.resolve(current);
23
+ if (widget)
24
+ return h(widget, { node: current, runtime: context.runtime.value });
25
+ if (current.type === 'container') {
26
+ const children = current.children.map((childId) => h(DisplayNodeView, { key: childId, nodeId: childId }));
27
+ if (current.containerType === 'group') {
28
+ return h('fieldset', [h('legend', current.annotations.title), ...children]);
29
+ }
30
+ return h('div', { 'data-texaryn-layout': '' }, children);
31
+ }
32
+ if (current.type === 'text') {
33
+ if (current.textRole === 'heading')
34
+ return h('h2', current.content);
35
+ if (current.textRole === 'help')
36
+ return h('p', { role: 'note' }, current.content);
37
+ return h('p', current.content);
38
+ }
39
+ if (current.type === 'list')
40
+ return h(DisplayList, { node: current });
41
+ if (current.type === 'table')
42
+ return h(DisplayTable, { node: current });
43
+ return h('button', {
44
+ type: 'button',
45
+ disabled: !context.runtime.value.hasActionHandler(current.actionType),
46
+ onClick: () => {
47
+ void context.runtime.value.invokeAction(current.id).catch((error) => {
48
+ if (context.onActionError.value)
49
+ context.onActionError.value(error);
50
+ else
51
+ console.error(error);
52
+ });
53
+ },
54
+ }, current.label);
55
+ };
56
+ },
57
+ });
58
+ const DisplayList = defineComponent({
59
+ name: 'DisplayList',
60
+ props: { node: { type: Object, required: true } },
61
+ setup(props) {
62
+ const context = useDocumentContext();
63
+ const rows = useStore(() => context.runtime.value.getCollection(props.node.id), emptyRows);
64
+ return () => h('ul', rows.value.map((row) => h('li', { key: row.id }, row.value === null ? '' : String(row.value))));
65
+ },
66
+ });
67
+ const DisplayTable = defineComponent({
68
+ name: 'DisplayTable',
69
+ props: { node: { type: Object, required: true } },
70
+ setup(props) {
71
+ const context = useDocumentContext();
72
+ const rows = useStore(() => context.runtime.value.getCollection(props.node.id), emptyRows);
73
+ return () => h('table', [
74
+ h('thead', [h('tr', props.node.columns.map((column) => h('th', { key: column.id, scope: 'col' }, column.label)))]),
75
+ h('tbody', rows.value.map((row) => h('tr', { key: row.id }, props.node.columns.map((column, index) => {
76
+ const value = row.cells[index] ?? null;
77
+ return h('td', { key: column.id }, value === null ? '' : String(value));
78
+ })))),
79
+ ]);
80
+ },
81
+ });
82
+ export const DocumentRoot = defineComponent({
83
+ name: 'DocumentRoot',
84
+ props: {
85
+ runtime: { type: Object, required: true },
86
+ registry: { type: Object },
87
+ onActionError: { type: Function },
88
+ },
89
+ setup(props) {
90
+ const document = useStore(() => props.runtime.document, props.runtime.document.getSnapshot());
91
+ provide(DOCUMENT_CONTEXT, {
92
+ runtime: toRef(props, 'runtime'),
93
+ document,
94
+ registry: toRef(props, 'registry'),
95
+ onActionError: toRef(props, 'onActionError'),
96
+ });
97
+ return () => document.value.nodes[document.value.rootId]
98
+ ? h(DisplayNodeView, { nodeId: document.value.rootId })
99
+ : null;
100
+ },
101
+ });
102
+ //# sourceMappingURL=DocumentRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentRoot.js","sourceRoot":"","sources":["../../src/components/DocumentRoot.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -14,6 +14,8 @@ export { useFormIdPrefix } from './id-prefix.js';
14
14
  export type { FieldAria } from './field-props.js';
15
15
  export type { WidgetComponent } from './widget.js';
16
16
  export { FormRoot } from './components/FormRoot.js';
17
+ export { DocumentRoot } from './components/DocumentRoot.js';
18
+ export type { DocumentRootProps, DocumentWidgetComponent } from './components/DocumentRoot.js';
17
19
  export { ErrorSummary } from './components/ErrorSummary.js';
18
20
  export { NodeRenderer } from './components/NodeRenderer.js';
19
21
  export { FieldErrors } from './widgets/FieldErrors.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,cAAc,CAAA;AACrB,YAAY,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACxF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,cAAc,CAAA;AACrB,YAAY,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACxF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA"}
package/dist/index.js CHANGED
@@ -7,6 +7,7 @@ export { useFieldWidget } from './use-field-widget.js';
7
7
  export { fieldAria, fieldLabel, makeId } from './field-props.js';
8
8
  export { useFormIdPrefix } from './id-prefix.js';
9
9
  export { FormRoot } from './components/FormRoot.js';
10
+ export { DocumentRoot } from './components/DocumentRoot.js';
10
11
  export { ErrorSummary } from './components/ErrorSummary.js';
11
12
  export { NodeRenderer } from './components/NodeRenderer.js';
12
13
  export { FieldErrors } from './widgets/FieldErrors.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,cAAc,CAAA;AAGrB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAGtD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIhD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACxF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,cAAc,CAAA;AAGrB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAGtD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIhD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACxF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"containers.d.ts","sourceRoot":"","sources":["../../src/widgets/containers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAEnC,OAAO,KAAK,EAAiB,MAAM,EAAE,MAAM,eAAe,CAAA;AAQ1D,eAAO,MAAM,YAAY;;uBAFkB,QAAQ,CAAC,MAAM,CAAC;;;;;;;uBAAhB,QAAQ,CAAC,MAAM,CAAC;;;iGAyCzD,CAAA;AAEF,eAAO,MAAM,YAAY;;uBA3CkB,QAAQ,CAAC,MAAM,CAAC;;;;;;;uBAAhB,QAAQ,CAAC,MAAM,CAAC;;;iGA0HzD,CAAA"}
1
+ {"version":3,"file":"containers.d.ts","sourceRoot":"","sources":["../../src/widgets/containers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;AAEnC,OAAO,KAAK,EAA+B,MAAM,EAAE,MAAM,eAAe,CAAA;AAQxE,eAAO,MAAM,YAAY;;uBAFkB,QAAQ,CAAC,MAAM,CAAC;;;;;;;uBAAhB,QAAQ,CAAC,MAAM,CAAC;;;iGAwEzD,CAAA;AAEF,eAAO,MAAM,YAAY;;uBA1EkB,QAAQ,CAAC,MAAM,CAAC;;;;;;;uBAAhB,QAAQ,CAAC,MAAM,CAAC;;;iGA4TzD,CAAA"}
@@ -1,5 +1,5 @@
1
- import { computed, defineComponent, h } from 'vue';
2
- import { objectChildKey } from '@texaryn/core';
1
+ import { computed, defineComponent, h, nextTick, onBeforeUnmount, ref, shallowRef, watchEffect } from 'vue';
2
+ import { englishMessages, objectChildKey } from '@texaryn/core';
3
3
  import { useFormMessages, useFormRuntime } from '../context.js';
4
4
  import { useStore } from '../use-store.js';
5
5
  import { useFieldArray } from '../use-field-array.js';
@@ -10,6 +10,7 @@ export const ObjectLayout = defineComponent({
10
10
  props: nodeProp,
11
11
  setup(props) {
12
12
  const runtime = useFormRuntime();
13
+ const messages = useFormMessages();
13
14
  const document = useStore(runtime.document, runtime.document.getSnapshot());
14
15
  // Whether a node is nested is fixed for its lifetime, but its title is
15
16
  // not: a conditional subschema can add or drop one on any recompile.
@@ -19,20 +20,44 @@ export const ObjectLayout = defineComponent({
19
20
  const nested = props.node.parentId !== null;
20
21
  const current = computed(() => (document.value.nodes[props.node.id] ?? props.node));
21
22
  const title = computed(() => current.value.annotations.title);
23
+ const boundaryTargets = computed(() => current.value.boundaryTargets ?? []);
22
24
  const children = computed(() => current.value.children
23
25
  .map((id) => document.value.nodes[id])
24
26
  .filter((child) => child != null));
25
27
  return () => {
26
28
  const rendered = children.value.map((child) => h(NodeRenderer, { key: objectChildKey(child), node: child }));
29
+ const firstTargetByReason = new Map();
30
+ for (const target of boundaryTargets.value) {
31
+ if (!firstTargetByReason.has(target.reason))
32
+ firstTargetByReason.set(target.reason, target);
33
+ }
34
+ const expandActions = [...firstTargetByReason.values()].map((target) => {
35
+ const message = (messages.value.expandBoundary ?? englishMessages.expandBoundary)({
36
+ boundary: target.reason,
37
+ containerTitle: title.value,
38
+ position: 1,
39
+ count: 1,
40
+ });
41
+ return h('button', {
42
+ key: target.reason,
43
+ type: 'button',
44
+ 'aria-label': message.accessibleName,
45
+ onClick: () => runtime.dispatch({
46
+ type: 'ExpandBoundary',
47
+ containerId: current.value.id,
48
+ targetToken: target.token,
49
+ }),
50
+ }, message.label);
51
+ });
27
52
  if (!nested)
28
- return h('div', rendered);
53
+ return h('div', [...rendered, ...expandActions]);
29
54
  // The root object is the form itself, so only a nested titled object
30
55
  // names a group. An unnamed group is noise, so the fieldset stops being
31
56
  // one. Children sit in their own element so the legend is never a
32
57
  // candidate for reorder.
33
58
  return h('fieldset', { role: title.value === undefined ? 'none' : undefined }, [
34
59
  ...(title.value === undefined ? [] : [h('legend', title.value)]),
35
- h('div', rendered),
60
+ h('div', [...rendered, ...expandActions]),
36
61
  ]);
37
62
  };
38
63
  },
@@ -49,7 +74,121 @@ export const ArrayControl = defineComponent({
49
74
  const currentArray = computed(() => (document.value.nodes[props.node.id] ?? props.node));
50
75
  const arrayTitle = computed(() => currentArray.value.annotations.title);
51
76
  const itemTemplateTitle = computed(() => currentArray.value.arrayMeta?.itemTitle);
52
- return () => h('div', [
77
+ const rootRef = ref(null);
78
+ const canDrag = computed(() => array.canReorder.value && !currentArray.value.readOnly && !currentArray.value.disabled);
79
+ const dragSession = shallowRef(null);
80
+ function clearDrag() {
81
+ const root = rootRef.value;
82
+ root?.removeAttribute('data-array-drag-active');
83
+ root?.querySelectorAll('[data-dragging], [data-drop-target]').forEach((row) => {
84
+ row.removeAttribute('data-dragging');
85
+ row.removeAttribute('data-drop-target');
86
+ });
87
+ dragSession.value = null;
88
+ }
89
+ function ownsArrayTarget(event, root) {
90
+ return event.target instanceof Element && event.target.closest('[data-array-container]') === root;
91
+ }
92
+ watchEffect(() => {
93
+ const session = dragSession.value;
94
+ if (!session)
95
+ return;
96
+ if (session.runtime !== runtime || session.root !== rootRef.value ||
97
+ session.identityKey !== currentArray.value.arrayMeta?.identityKey || !canDrag.value ||
98
+ !array.items.value.some((item) => item.id === session.itemId))
99
+ clearDrag();
100
+ });
101
+ onBeforeUnmount(clearDrag);
102
+ function handleProps(itemId) {
103
+ return {
104
+ 'aria-hidden': 'true',
105
+ class: 'texaryn-array-drag-handle',
106
+ draggable: canDrag.value,
107
+ tabindex: -1,
108
+ onDragstart(event) {
109
+ const root = rootRef.value;
110
+ const identityKey = currentArray.value.arrayMeta?.identityKey;
111
+ if (!canDrag.value || !root || identityKey === undefined || !currentArray.value.arrayMeta?.itemIds.includes(itemId)) {
112
+ event.preventDefault();
113
+ return;
114
+ }
115
+ event.stopPropagation();
116
+ event.dataTransfer?.setData('application/x-texaryn-array-item', itemId);
117
+ if (event.dataTransfer)
118
+ event.dataTransfer.effectAllowed = 'move';
119
+ dragSession.value = { runtime, identityKey, root, itemId };
120
+ root.setAttribute('data-array-drag-active', '');
121
+ event.currentTarget.closest('[data-array-row]')?.setAttribute('data-dragging', '');
122
+ },
123
+ onDragend(event) {
124
+ event.dataTransfer?.clearData('application/x-texaryn-array-item');
125
+ clearDrag();
126
+ },
127
+ };
128
+ }
129
+ function rowProps(itemId) {
130
+ return {
131
+ 'data-array-row': '',
132
+ 'data-array-item-id': itemId,
133
+ onDragover(event) {
134
+ if (!Array.from(event.dataTransfer?.types ?? []).includes('application/x-texaryn-array-item'))
135
+ return;
136
+ const root = rootRef.value;
137
+ if (!root || !ownsArrayTarget(event, root)) {
138
+ event.stopPropagation();
139
+ return;
140
+ }
141
+ const session = dragSession.value;
142
+ const ids = currentArray.value.arrayMeta?.itemIds ?? [];
143
+ if (!session || session.runtime !== runtime || session.root !== root ||
144
+ session.identityKey !== currentArray.value.arrayMeta?.identityKey || !canDrag.value ||
145
+ !ids.includes(session.itemId) || !ids.includes(itemId)) {
146
+ event.stopPropagation();
147
+ return;
148
+ }
149
+ event.preventDefault();
150
+ event.stopPropagation();
151
+ if (event.dataTransfer)
152
+ event.dataTransfer.dropEffect = 'move';
153
+ event.currentTarget.setAttribute('data-drop-target', '');
154
+ },
155
+ onDragleave(event) {
156
+ if (event.dataTransfer && Array.from(event.dataTransfer.types).includes('application/x-texaryn-array-item')) {
157
+ ;
158
+ event.currentTarget.removeAttribute('data-drop-target');
159
+ }
160
+ },
161
+ onDrop(event) {
162
+ if (!Array.from(event.dataTransfer?.types ?? []).includes('application/x-texaryn-array-item'))
163
+ return;
164
+ event.stopPropagation();
165
+ const root = rootRef.value;
166
+ const session = dragSession.value;
167
+ const ids = currentArray.value.arrayMeta?.itemIds ?? [];
168
+ if (!root || !ownsArrayTarget(event, root) || !session) {
169
+ clearDrag();
170
+ return;
171
+ }
172
+ const sourceIndex = ids.indexOf(session.itemId);
173
+ const targetIndex = ids.indexOf(itemId);
174
+ if (session.runtime !== runtime || session.root !== root ||
175
+ session.identityKey !== currentArray.value.arrayMeta?.identityKey || !canDrag.value ||
176
+ sourceIndex < 0 || targetIndex < 0) {
177
+ clearDrag();
178
+ return;
179
+ }
180
+ event.preventDefault();
181
+ const bounds = event.currentTarget.getBoundingClientRect();
182
+ const after = event.clientY >= bounds.top + bounds.height / 2;
183
+ const boundary = targetIndex + (after ? 1 : 0);
184
+ const destination = boundary > sourceIndex ? boundary - 1 : boundary;
185
+ clearDrag();
186
+ if (destination !== sourceIndex)
187
+ array.move(sourceIndex, destination);
188
+ },
189
+ };
190
+ }
191
+ return () => h('div', { ref: rootRef, 'data-array-container': '' }, [
53
192
  ...array.items.value.map((item, index) => {
54
193
  const child = item.nodeId ? document.value.nodes[item.nodeId] : undefined;
55
194
  const itemTitle = child?.annotations.title;
@@ -58,28 +197,63 @@ export const ArrayControl = defineComponent({
58
197
  // is what makes a move preserve the row's component instance and
59
198
  // its DOM, and it is also what hands the surviving instance a
60
199
  // different node than the one it mounted with.
61
- { key: item.id }, [
200
+ { key: item.id, ...rowProps(item.id) }, [
201
+ canDrag.value ? h('span', handleProps(item.id), '⠿') : null,
62
202
  child ? h(NodeRenderer, { node: child }) : null,
63
- // The visible word stays short; the distinguishing name goes in
64
- // aria-label, which contains it so speech input still works.
65
- array.canRemove.value
203
+ array.canReorder.value && index > 0
66
204
  ? (() => {
67
- const remove = messages.value.removeItem({
205
+ const up = messages.value.moveItemUp({
68
206
  position: index + 1,
69
207
  itemTitle,
70
208
  containerTitle: arrayTitle.value,
71
209
  });
72
- return h('button', { type: 'button', 'aria-label': remove.accessibleName, onClick: () => array.remove(index) }, remove.label);
210
+ return h('button', {
211
+ type: 'button',
212
+ 'aria-label': up.accessibleName,
213
+ 'data-reorder-direction': 'up',
214
+ onClick: (event) => {
215
+ const wasFocused = globalThis.document.activeElement === event.currentTarget;
216
+ const row = event.currentTarget.closest('[data-array-row]');
217
+ array.move(index, index - 1);
218
+ if (wasFocused && index === 1) {
219
+ void nextTick(() => row?.querySelector(':scope > [data-reorder-direction="down"]')?.focus());
220
+ }
221
+ },
222
+ }, up.label);
73
223
  })()
74
224
  : null,
75
- array.canReorder.value && index > 0
225
+ array.canReorder.value && index < array.items.value.length - 1
76
226
  ? (() => {
77
- const up = messages.value.moveItemUp({
227
+ const down = messages.value.moveItemDown({
228
+ position: index + 1,
229
+ itemTitle,
230
+ containerTitle: arrayTitle.value,
231
+ });
232
+ return h('button', {
233
+ type: 'button',
234
+ 'aria-label': down.accessibleName,
235
+ 'data-reorder-direction': 'down',
236
+ onClick: (event) => {
237
+ const wasFocused = globalThis.document.activeElement === event.currentTarget;
238
+ const row = event.currentTarget.closest('[data-array-row]');
239
+ array.move(index, index + 1);
240
+ if (wasFocused && index === array.items.value.length - 2) {
241
+ void nextTick(() => row?.querySelector(':scope > [data-reorder-direction="up"]')?.focus());
242
+ }
243
+ },
244
+ }, down.label);
245
+ })()
246
+ : null,
247
+ // The visible word stays short; the distinguishing name goes in
248
+ // aria-label, which contains it so speech input still works.
249
+ array.canRemove.value
250
+ ? (() => {
251
+ const remove = messages.value.removeItem({
78
252
  position: index + 1,
79
253
  itemTitle,
80
254
  containerTitle: arrayTitle.value,
81
255
  });
82
- return h('button', { type: 'button', 'aria-label': up.accessibleName, onClick: () => array.move(index, index - 1) }, up.label);
256
+ return h('button', { type: 'button', 'aria-label': remove.accessibleName, onClick: () => array.remove(index) }, remove.label);
83
257
  })()
84
258
  : null,
85
259
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"containers.js","sourceRoot":"","sources":["../../src/widgets/containers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"containers.js","sourceRoot":"","sources":["../../src/widgets/containers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@texaryn/vue",
3
- "version": "0.4.3",
3
+ "version": "0.6.0",
4
4
  "description": "Vue 3 bindings, composables, and default widgets for Texaryn",
5
5
  "keywords": [
6
6
  "vue",
@@ -44,7 +44,7 @@
44
44
  "CHANGELOG.md"
45
45
  ],
46
46
  "dependencies": {
47
- "@texaryn/core": "^0.13.0"
47
+ "@texaryn/core": "^0.15.0"
48
48
  },
49
49
  "peerDependencies": {
50
50
  "vue": ">=3.5.0"
@@ -55,7 +55,7 @@
55
55
  "jsdom": "^25.0.0",
56
56
  "vue": "^3.5.0",
57
57
  "@texaryn/examples": "0.0.0",
58
- "@texaryn/schema-json": "0.7.0"
58
+ "@texaryn/schema-json": "0.8.3"
59
59
  },
60
60
  "scripts": {
61
61
  "build": "tsc --build"