@simai-studio/view 1.1.0 → 1.2.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/README.md +5 -5
- package/dist/package-receipt.json +310 -69
- package/dist/set.json +35 -2
- package/dist/smart/rule.js +94 -0
- package/dist/smart/rule.js.gz +0 -0
- package/dist/smart/view/component.json +1 -1
- package/dist/smart/view/component.json.gz +0 -0
- package/dist/smart/view/js/view.js +1 -1
- package/dist/smart/view/js/view.js.gz +0 -0
- package/dist/smart/view/js/view.min.js +1 -1
- package/dist/smart/view/js/view.min.js.gz +0 -0
- package/dist/smart/view/smart.manifest.json +1 -1
- package/dist/smart/view/smart.manifest.json.gz +0 -0
- package/dist/smart/view/static/default/open-record.html +1 -1
- package/dist/smart/view/static/default/open-record.html.gz +0 -0
- package/dist/smart/view/static/default/reference.html +1 -1
- package/dist/smart/view/static/default/reference.html.gz +0 -0
- package/dist/smart/view-flow/component.json +612 -0
- package/dist/smart/view-flow/component.json.gz +0 -0
- package/dist/smart/view-flow/css/view-flow.css +203 -0
- package/dist/smart/view-flow/css/view-flow.css.gz +0 -0
- package/dist/smart/view-flow/css/view-flow.min.css +2 -0
- package/dist/smart/view-flow/css/view-flow.min.css.gz +0 -0
- package/dist/smart/view-flow/examples.json +452 -0
- package/dist/smart/view-flow/examples.json.gz +0 -0
- package/dist/smart/view-flow/js/view-flow.js +5858 -0
- package/dist/smart/view-flow/js/view-flow.js.gz +0 -0
- package/dist/smart/view-flow/js/view-flow.min.js +638 -0
- package/dist/smart/view-flow/js/view-flow.min.js.gz +0 -0
- package/dist/smart/view-flow/lang/en.json +24 -0
- package/dist/smart/view-flow/lang/en.json.gz +0 -0
- package/dist/smart/view-flow/lang/ru.json +24 -0
- package/dist/smart/view-flow/lang/ru.json.gz +0 -0
- package/dist/smart/view-flow/probe.json +149 -0
- package/dist/smart/view-flow/probe.json.gz +0 -0
- package/dist/smart/view-flow/smart.manifest.json +478 -0
- package/dist/smart/view-flow/smart.manifest.json.gz +0 -0
- package/dist/smart/view-flow/static/default/answered.html +57 -0
- package/dist/smart/view-flow/static/default/answered.html.gz +0 -0
- package/dist/smart/view-flow/static/default/ask.html +146 -0
- package/dist/smart/view-flow/static/default/ask.html.gz +0 -0
- package/dist/smart/view-flow/static/default/expired.html +16 -0
- package/dist/smart/view-flow/static/default/expired.html.gz +0 -0
- package/dist/smart/view-flow/static/default/groups.html +44 -0
- package/dist/smart/view-flow/static/default/groups.html.gz +0 -0
- package/dist/smart/view-flow/static/default/reference.html +72 -0
- package/dist/smart/view-flow/static/default/reference.html.gz +0 -0
- package/dist/smart/view-flow/static/default/untitled.html +41 -0
- package/dist/smart/view-flow/static/default/untitled.html.gz +0 -0
- package/dist/smart/view-flow/static/sheets.json +443 -0
- package/dist/smart/view-flow/static/sheets.json.gz +0 -0
- package/dist/smart/view-flow/template/default.css +180 -0
- package/dist/smart/view-flow/template/default.css.gz +0 -0
- package/dist/smart/view-flow/template/default.js +136 -0
- package/dist/smart/view-flow/template/default.js.gz +0 -0
- package/dist/smart/view-properties/component.json +1 -1
- package/dist/smart/view-properties/component.json.gz +0 -0
- package/dist/smart/view-properties/js/view-properties.js +59 -21
- package/dist/smart/view-properties/js/view-properties.js.gz +0 -0
- package/dist/smart/view-properties/js/view-properties.min.js +8 -6
- package/dist/smart/view-properties/js/view-properties.min.js.gz +0 -0
- package/dist/smart/view-properties/smart.manifest.json +6 -2
- package/dist/smart/view-properties/smart.manifest.json.gz +0 -0
- package/dist/smart/view-properties/template/default.js +1 -77
- package/dist/smart/view-properties/template/default.js.gz +0 -0
- package/dist/smart/view-table/js/view-table.js +2 -0
- package/dist/smart/view-table/js/view-table.js.gz +0 -0
- package/dist/smart/view-table/js/view-table.min.js +2 -0
- package/dist/smart/view-table/js/view-table.min.js.gz +0 -0
- package/package.json +1 -1
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import {html, nothing} from "lit";
|
|
2
|
+
import "./default.css";
|
|
3
|
+
import {renderFieldValue} from "../../../view-properties/js/field-value.js";
|
|
4
|
+
import {allFields, conditionedField, fieldDisabled, shownFields, valuesOnScreen} from "../answer.js";
|
|
5
|
+
|
|
6
|
+
// A few properties in a flow: the header line, the fields, the status line and
|
|
7
|
+
// the answers.
|
|
8
|
+
//
|
|
9
|
+
// The heading is a role="heading" with the level the host chooses, not a fixed
|
|
10
|
+
// <h2>: the block is placed inside a message, a feed entry or a page, and the
|
|
11
|
+
// level right in one is a skipped level in another.
|
|
12
|
+
//
|
|
13
|
+
// Every value is drawn by sf-view-properties' field value over the Framework
|
|
14
|
+
// field renderers (../../../view-properties/js/field-value.js): the block has
|
|
15
|
+
// no field code. A field is a label above its value, the record component's
|
|
16
|
+
// reading order; a half-width field pairs up with the next one.
|
|
17
|
+
//
|
|
18
|
+
// The status line is a polite live region that is always in the page, and the
|
|
19
|
+
// place focus goes when the answers go (the confirm surface). Send is filled and
|
|
20
|
+
// Cancel outlined: a form's answer is to send it, and cancelling is the way out,
|
|
21
|
+
// not a second equal choice.
|
|
22
|
+
|
|
23
|
+
function renderField(context, field) {
|
|
24
|
+
const key = String(field.key);
|
|
25
|
+
const values = context.values;
|
|
26
|
+
const editing = context.editing;
|
|
27
|
+
const disabled = editing && fieldDisabled(field, values);
|
|
28
|
+
const shown = editing ? conditionedField(field, values) : {...field, value: context.component.shownValue(field)};
|
|
29
|
+
// A message the control draws under itself (a mask not filled) is not drawn twice.
|
|
30
|
+
const error = context.controlErrors.has(key) ? null : context.errors.get(key);
|
|
31
|
+
const width = field.width === "full" ? "full" : "half";
|
|
32
|
+
return html`
|
|
33
|
+
<div class="sf-view-flow__field sf-view-flow__field--${width} flex flex-col gap-1/4 min-w-0"
|
|
34
|
+
data-field=${key}
|
|
35
|
+
data-invalid=${context.errors.has(key) ? "true" : nothing}>
|
|
36
|
+
<div class="sf-view-flow__label flex items-cross-center gap-1/3 color-on-surface-variant">
|
|
37
|
+
<span>${String(field.label ?? key)}</span>
|
|
38
|
+
${shown.required && editing
|
|
39
|
+
? html`<span class="sf-view-flow__required color-error" aria-hidden="true">*</span>`
|
|
40
|
+
: nothing}
|
|
41
|
+
${field.hint
|
|
42
|
+
? html`<sf-help-mark class="sf-view-flow__hint" label=${String(field.hint)} text=${String(field.hint)}></sf-help-mark>`
|
|
43
|
+
: nothing}
|
|
44
|
+
</div>
|
|
45
|
+
<div class="sf-view-flow__value min-w-0 flex items-cross-center gap-1 flex-wrap">${renderFieldValue(context, shown, editing, {disabled})}</div>
|
|
46
|
+
${error ? html`<div class="sf-view-flow__error color-error" role="alert">${error}</div>` : nothing}
|
|
47
|
+
</div>`;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function renderGroup(context, group, index) {
|
|
51
|
+
const fields = shownFields(group.fields, context.values);
|
|
52
|
+
if (!fields.length) return nothing;
|
|
53
|
+
const component = context.component;
|
|
54
|
+
const collapsed = component.groupCollapsed(group);
|
|
55
|
+
const bodyId = `${context.headingId.replace(/--heading$/u, "")}--group-${index + 1}`;
|
|
56
|
+
const body = html`
|
|
57
|
+
<div class="sf-view-flow__fields" id=${bodyId} ?hidden=${collapsed}>
|
|
58
|
+
${fields.map((field) => renderField(context, field))}
|
|
59
|
+
</div>`;
|
|
60
|
+
if (!group.label) return html`<div class="sf-view-flow__group" data-group=${group.key}>${body}</div>`;
|
|
61
|
+
return html`
|
|
62
|
+
<div class="sf-view-flow__group" data-group=${group.key} data-collapsed=${collapsed ? "true" : nothing}>
|
|
63
|
+
${group.collapsible
|
|
64
|
+
? html`<button type="button" class="sf-view-flow__group-label sf-view-flow__toggle flex items-cross-center gap-1/4"
|
|
65
|
+
aria-expanded=${collapsed ? "false" : "true"} aria-controls=${bodyId}
|
|
66
|
+
@click=${() => component.toggleGroup(group.key)}>
|
|
67
|
+
<sf-icon icon="expand_more" size="1/2" aria-hidden="true"></sf-icon>
|
|
68
|
+
<span>${group.label}</span>
|
|
69
|
+
</button>`
|
|
70
|
+
: html`<div class="sf-view-flow__group-label">${group.label}</div>`}
|
|
71
|
+
${body}
|
|
72
|
+
</div>`;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
function renderFoot(context) {
|
|
76
|
+
if (!context.footShown) return nothing;
|
|
77
|
+
const component = context.component;
|
|
78
|
+
const answering = context.open || context.pending;
|
|
79
|
+
return html`
|
|
80
|
+
<footer class="sf-view-flow__footer">
|
|
81
|
+
<!-- Always in the page, empty while there is nothing to say: a live
|
|
82
|
+
region that appears together with its words is not heard. -->
|
|
83
|
+
<p class="sf-view-flow__status${context.statusError ? " sf-view-flow__status--error" : ""}"
|
|
84
|
+
role="status" tabindex="-1">
|
|
85
|
+
${context.statusText
|
|
86
|
+
? html`<sf-icon icon=${context.statusIcon} size="1/2" aria-hidden="true"></sf-icon><span>${context.statusText}</span>`
|
|
87
|
+
: nothing}
|
|
88
|
+
</p>
|
|
89
|
+
<div class="sf-view-flow__actions" ?hidden=${!answering}>
|
|
90
|
+
${context.cancelable
|
|
91
|
+
? html`<sf-button appearance="outline" scheme="on-surface" size=${context.size}
|
|
92
|
+
text=${context.cancelText} data-action="cancel"
|
|
93
|
+
?loading=${context.pressed === false}
|
|
94
|
+
?disabled=${context.answersLocked && context.pressed !== false}
|
|
95
|
+
@click=${() => component.cancel()}></sf-button>`
|
|
96
|
+
: nothing}
|
|
97
|
+
<sf-button scheme="primary" size=${context.size}
|
|
98
|
+
text=${context.submitText} data-action="submit"
|
|
99
|
+
?loading=${context.pressed === true}
|
|
100
|
+
?disabled=${context.answersLocked && context.pressed !== true}
|
|
101
|
+
@click=${() => component.confirm()}></sf-button>
|
|
102
|
+
</div>
|
|
103
|
+
</footer>`;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export function renderViewFlowTemplate(context) {
|
|
107
|
+
// The values the conditions read: what is typed while the block takes an
|
|
108
|
+
// answer, else what it shows (the answer sent, or the host's values).
|
|
109
|
+
const values = context.editing
|
|
110
|
+
? valuesOnScreen(context.groups, context.changed)
|
|
111
|
+
: new Map(allFields(context.groups).map((field) => [String(field.key), context.component.shownValue(field)]));
|
|
112
|
+
const scoped = {...context, values};
|
|
113
|
+
return html`
|
|
114
|
+
<section
|
|
115
|
+
class="sf-view-flow sf-view-flow--${context.mode}${context.editing ? " sf-view-flow--editing" : ""} sf-view-flow--${context.state} sf-view-flow--size-${context.size === "1" ? "1" : "1-2"}"
|
|
116
|
+
aria-labelledby=${context.heading ? context.headingId : nothing}
|
|
117
|
+
aria-label=${context.heading ? nothing : context.blockLabel}
|
|
118
|
+
aria-busy=${context.pending ? "true" : nothing}
|
|
119
|
+
data-state=${context.mode === "edit" ? context.state : nothing}
|
|
120
|
+
>
|
|
121
|
+
${context.heading
|
|
122
|
+
? html`<div class="sf-view-flow__heading" id=${context.headingId} role="heading"
|
|
123
|
+
aria-level=${context.headingLevel}>${context.heading}</div>`
|
|
124
|
+
: nothing}
|
|
125
|
+
${context.hasDescription
|
|
126
|
+
? html`<div class="sf-view-flow__description">${context.descriptionContent}</div>`
|
|
127
|
+
: nothing}
|
|
128
|
+
${context.fieldsShown
|
|
129
|
+
? html`<div class="sf-view-flow__groups" ?inert=${context.fieldsLocked}>
|
|
130
|
+
${context.groups.map((group, index) => renderGroup(scoped, group, index))}
|
|
131
|
+
</div>`
|
|
132
|
+
: nothing}
|
|
133
|
+
${renderFoot(context)}
|
|
134
|
+
</section>
|
|
135
|
+
`;
|
|
136
|
+
}
|
|
Binary file
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$comment": "sf-property-view from its component.json (standard simai.smart-component 1.3.8, vocabulary 1.1.5), migrated from ui-control control/smart-architecture/migration/out/property-view; every x-todo decided in x-decisions.",
|
|
3
3
|
"id": "smart.view-properties",
|
|
4
4
|
"tag": "sf-view-properties",
|
|
5
|
-
"version": "1.10.
|
|
5
|
+
"version": "1.10.1",
|
|
6
6
|
"kind": "leaf",
|
|
7
7
|
"family": "record",
|
|
8
8
|
"implements": [
|
|
Binary file
|
|
@@ -2037,6 +2037,7 @@ function renderChoiceEdit(field, value, host) {
|
|
|
2037
2037
|
name=${fieldName(field)}
|
|
2038
2038
|
?required=${Boolean(field.required)}
|
|
2039
2039
|
value=${value ?? ''}
|
|
2040
|
+
placeholder=${field.placeholder || lit__WEBPACK_IMPORTED_MODULE_0__.nothing}
|
|
2040
2041
|
aria-label=${field.label || field.key || ''}
|
|
2041
2042
|
.options=${editOptions(field, value, false)}
|
|
2042
2043
|
@change=${event => host.setFieldValue(field, event.detail?.value ?? null)}
|
|
@@ -2090,6 +2091,7 @@ function renderChoicesEdit(field, value, host) {
|
|
|
2090
2091
|
search="false"
|
|
2091
2092
|
name=${fieldName(field)}
|
|
2092
2093
|
?required=${Boolean(field.required)}
|
|
2094
|
+
placeholder=${field.placeholder || lit__WEBPACK_IMPORTED_MODULE_0__.nothing}
|
|
2093
2095
|
aria-label=${field.label || field.key || ''}
|
|
2094
2096
|
.options=${editOptions(field, value, true)}
|
|
2095
2097
|
@change=${event => {
|
|
@@ -7581,28 +7583,35 @@ function fieldConditions(field, values) {
|
|
|
7581
7583
|
|
|
7582
7584
|
/***/ },
|
|
7583
7585
|
|
|
7584
|
-
/***/ "
|
|
7586
|
+
/***/ "62c5c417c97d"
|
|
7585
7587
|
(module, __webpack_exports__, __webpack_require__) {
|
|
7586
7588
|
|
|
7587
7589
|
__webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
|
|
7588
7590
|
__webpack_require__.r(__webpack_exports__);
|
|
7589
7591
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
7590
|
-
/* harmony export */
|
|
7592
|
+
/* harmony export */ renderFieldValue: () => (/* binding */ renderFieldValue)
|
|
7591
7593
|
/* harmony export */ });
|
|
7592
7594
|
/* harmony import */ var lit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("2a080a730149");
|
|
7593
|
-
/* harmony import */ var
|
|
7594
|
-
|
|
7595
|
-
|
|
7596
|
-
([lit__WEBPACK_IMPORTED_MODULE_0__, _field_renderers_index_js__WEBPACK_IMPORTED_MODULE_2__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
|
|
7595
|
+
/* harmony import */ var _field_renderers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("e5483002f3ea");
|
|
7596
|
+
var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([lit__WEBPACK_IMPORTED_MODULE_0__, _field_renderers_index_js__WEBPACK_IMPORTED_MODULE_1__]);
|
|
7597
|
+
([lit__WEBPACK_IMPORTED_MODULE_0__, _field_renderers_index_js__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
|
|
7597
7598
|
/* harmony import */ var lit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lit__WEBPACK_IMPORTED_MODULE_0__);
|
|
7598
7599
|
|
|
7599
|
-
|
|
7600
|
-
|
|
7601
|
-
// the
|
|
7602
|
-
//
|
|
7603
|
-
//
|
|
7604
|
-
//
|
|
7605
|
-
//
|
|
7600
|
+
// One field's value, shown or edited, drawn by the SIMAI Framework field
|
|
7601
|
+
// renderers. Moved out of the record component's template (sf-view-properties
|
|
7602
|
+
// 1.10.0) so that every view of the set that draws a field draws it the same
|
|
7603
|
+
// way: sf-view-properties and sf-view-flow import this, and neither
|
|
7604
|
+
// has field code of its own (reuse rule, naming decision 2026-11-02).
|
|
7605
|
+
//
|
|
7606
|
+
// `context` is what the caller's template reads:
|
|
7607
|
+
// component changeField(field, value), reportFieldError(field, message),
|
|
7608
|
+
// openReference(field, value); with the uploads and the
|
|
7609
|
+
// picker methods when canUploadFiles / canPickRecords
|
|
7610
|
+
// changed a Map of the values typed and not saved yet, by key
|
|
7611
|
+
// size '1' or '1/2', the renderers' size
|
|
7612
|
+
// viewHost the host the view renderers read (formatFieldValue)
|
|
7613
|
+
// emptyText what an empty value reads as
|
|
7614
|
+
// canUploadFiles, canPickRecords whether the host offers those
|
|
7606
7615
|
|
|
7607
7616
|
function renderFieldValue(context, field, editing, {
|
|
7608
7617
|
disabled = false
|
|
@@ -7631,14 +7640,14 @@ function renderFieldValue(context, field, editing, {
|
|
|
7631
7640
|
// the time in a masked field -- which cut the day short in a half-width
|
|
7632
7641
|
// field and held half-typed entries of its own.
|
|
7633
7642
|
|
|
7634
|
-
const content = editing ? (0,
|
|
7643
|
+
const content = editing ? (0,_field_renderers_index_js__WEBPACK_IMPORTED_MODULE_1__.renderEditField)(field, context.changed.has(key) ? context.changed.get(key) : field.value, editHost, // A field its condition turns off is drawn disabled where the set
|
|
7635
7644
|
// draws disabled apart from read-only (a choice as buttons).
|
|
7636
7645
|
{
|
|
7637
7646
|
size: context.size,
|
|
7638
7647
|
...(disabled ? {
|
|
7639
7648
|
disabled: true
|
|
7640
7649
|
} : {})
|
|
7641
|
-
}) : (0,
|
|
7650
|
+
}) : (0,_field_renderers_index_js__WEBPACK_IMPORTED_MODULE_1__.renderViewField)(field, field.value, context.viewHost, {
|
|
7642
7651
|
size: context.size
|
|
7643
7652
|
});
|
|
7644
7653
|
const reference = ['record', 'relation', 'user'].includes(field.propertyType || field.type) && field.value && typeof field.value === 'object';
|
|
@@ -7665,7 +7674,7 @@ function renderFieldValue(context, field, editing, {
|
|
|
7665
7674
|
|
|
7666
7675
|
|
|
7667
7676
|
if (editing && (content === null || typeof content === 'undefined' || content === lit__WEBPACK_IMPORTED_MODULE_0__.nothing)) {
|
|
7668
|
-
const shown = (0,
|
|
7677
|
+
const shown = (0,_field_renderers_index_js__WEBPACK_IMPORTED_MODULE_1__.renderViewField)(field, field.value, context.viewHost, {
|
|
7669
7678
|
size: context.size
|
|
7670
7679
|
});
|
|
7671
7680
|
|
|
@@ -7679,12 +7688,41 @@ function renderFieldValue(context, field, editing, {
|
|
|
7679
7688
|
}
|
|
7680
7689
|
|
|
7681
7690
|
return content;
|
|
7682
|
-
}
|
|
7691
|
+
}
|
|
7692
|
+
__webpack_async_result__();
|
|
7693
|
+
} catch(e) { __webpack_async_result__(e); } });
|
|
7694
|
+
|
|
7695
|
+
/***/ },
|
|
7696
|
+
|
|
7697
|
+
/***/ "40b137e60526"
|
|
7698
|
+
(module, __webpack_exports__, __webpack_require__) {
|
|
7699
|
+
|
|
7700
|
+
__webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
|
|
7701
|
+
__webpack_require__.r(__webpack_exports__);
|
|
7702
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
7703
|
+
/* harmony export */ renderPropertyViewTemplate: () => (/* binding */ renderPropertyViewTemplate)
|
|
7704
|
+
/* harmony export */ });
|
|
7705
|
+
/* harmony import */ var lit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("2a080a730149");
|
|
7706
|
+
/* harmony import */ var _default_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("9e9dad7bcc09");
|
|
7707
|
+
/* harmony import */ var _field_renderers_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("e5483002f3ea");
|
|
7708
|
+
/* harmony import */ var _field_value_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("62c5c417c97d");
|
|
7709
|
+
var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([lit__WEBPACK_IMPORTED_MODULE_0__, _field_renderers_index_js__WEBPACK_IMPORTED_MODULE_2__, _field_value_js__WEBPACK_IMPORTED_MODULE_3__]);
|
|
7710
|
+
([lit__WEBPACK_IMPORTED_MODULE_0__, _field_renderers_index_js__WEBPACK_IMPORTED_MODULE_2__, _field_value_js__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
|
|
7711
|
+
/* harmony import */ var lit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lit__WEBPACK_IMPORTED_MODULE_0__);
|
|
7712
|
+
|
|
7713
|
+
|
|
7714
|
+
|
|
7715
|
+
// The arrangement, drawn in the component's own light DOM. Not in a shadow root:
|
|
7716
|
+
// the field controls are Smart elements whose stylesheets are document-level, and
|
|
7717
|
+
// a document stylesheet does not cross a shadow boundary. sf-view slots its
|
|
7718
|
+
// children for exactly this reason and says so beside the slot; the first version
|
|
7719
|
+
// of this composite built them inside a shadow root and every control came out
|
|
7720
|
+
// with its markup and none of its CSS.
|
|
7721
|
+
// While the view is being configured every entry is listed, hidden and rare ones
|
|
7683
7722
|
// included: a hidden field a person cannot see is a field they cannot show again,
|
|
7684
7723
|
// and «показать редкие поля» is a reading choice rather than part of the
|
|
7685
7724
|
// arrangement being edited.
|
|
7686
7725
|
|
|
7687
|
-
|
|
7688
7726
|
function listed(context, entries) {
|
|
7689
7727
|
return context.configuring ? entries ?? [] : context.visible(entries);
|
|
7690
7728
|
} // The chooser names the layers this person may write and nothing else. A layer
|
|
@@ -8038,7 +8076,7 @@ function renderField(context, field, editing, sectionKey = '', groupKey = '') {
|
|
|
8038
8076
|
${field.rare ? (0,lit__WEBPACK_IMPORTED_MODULE_0__.html)`<span class="sf-property-view-rare color-on-surface-variant">${context.rareText}</span>` : lit__WEBPACK_IMPORTED_MODULE_0__.nothing}
|
|
8039
8077
|
${field.inherited && !editing ? (0,lit__WEBPACK_IMPORTED_MODULE_0__.html)`<span class="sf-property-view-inherited color-on-surface-variant">${context.inheritedText}</span>` : lit__WEBPACK_IMPORTED_MODULE_0__.nothing}
|
|
8040
8078
|
</div>
|
|
8041
|
-
${editing || context.configuring || field.readonly === true || !context.mayEdit || context.openAll ? (0,lit__WEBPACK_IMPORTED_MODULE_0__.html)`<div class="sf-property-view-field-value min-w-0 flex items-cross-center gap-2 flex-wrap">${renderFieldValue(context, field, editing, {
|
|
8079
|
+
${editing || context.configuring || field.readonly === true || !context.mayEdit || context.openAll ? (0,lit__WEBPACK_IMPORTED_MODULE_0__.html)`<div class="sf-property-view-field-value min-w-0 flex items-cross-center gap-2 flex-wrap">${(0,_field_value_js__WEBPACK_IMPORTED_MODULE_3__.renderFieldValue)(context, field, editing, {
|
|
8042
8080
|
disabled
|
|
8043
8081
|
})}</div>` : (0,lit__WEBPACK_IMPORTED_MODULE_0__.html)`
|
|
8044
8082
|
<button
|
|
@@ -8060,7 +8098,7 @@ function renderField(context, field, editing, sectionKey = '', groupKey = '') {
|
|
|
8060
8098
|
context.component.editGroup(sectionKey, groupKey);
|
|
8061
8099
|
}}
|
|
8062
8100
|
>
|
|
8063
|
-
${renderFieldValue(context, field, editing)}
|
|
8101
|
+
${(0,_field_value_js__WEBPACK_IMPORTED_MODULE_3__.renderFieldValue)(context, field, editing)}
|
|
8064
8102
|
<i class="sf-icon sf-icon--size-1/2 sf-property-view-pen" aria-hidden="true">edit</i>
|
|
8065
8103
|
</button>`}
|
|
8066
8104
|
${context.configuring ? renderFieldActions(context, field, key) : lit__WEBPACK_IMPORTED_MODULE_0__.nothing}
|
|
@@ -10358,7 +10396,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"$comment":"Dated aliases of sf-view-
|
|
|
10358
10396
|
/***/ "3ea81f4c3c20"
|
|
10359
10397
|
(module) {
|
|
10360
10398
|
|
|
10361
|
-
module.exports = /*#__PURE__*/JSON.parse('{"id":"smart.view-properties","tag":"sf-view-properties","version":"1.10.
|
|
10399
|
+
module.exports = /*#__PURE__*/JSON.parse('{"id":"smart.view-properties","tag":"sf-view-properties","version":"1.10.1","kind":"leaf","implements":["record-view@1"],"settings":{"add-field-text":{"type":"string","default-from":"runtime.add-field-text"},"add-group-text":{"type":"string","default-from":"runtime.add-group-text"},"add-section-text":{"type":"string","default-from":"runtime.add-section-text"},"back-label":{"type":"string","default-from":"runtime.back-label"},"cancel-configuring-text":{"type":"string","default-from":"runtime.cancel-configuring-text"},"cancel-name-text":{"type":"string","default-from":"runtime.cancel-name-text"},"cancel-text":{"type":"string","default-from":"runtime.cancel-text"},"changed-text":{"type":"string","default-from":"runtime.changed-text"},"close-label":{"type":"string","default-from":"runtime.close-label"},"collection":{"type":"string","default":""},"collection-icon":{"type":"icon","default":""},"collection-label":{"type":"string","default":""},"configure-hint-narrow-text":{"type":"string","default-from":"runtime.configure-hint-narrow-text"},"configure-hint-text":{"type":"string","default-from":"runtime.configure-hint-text"},"configure-text":{"type":"string","default-from":"runtime.configure-text"},"conflict-text":{"type":"string","default-from":"runtime.conflict-text"},"copy-link-label":{"type":"string","default-from":"runtime.copy-link-label"},"delete-text":{"type":"string","default-from":"runtime.delete-text"},"done-configuring-text":{"type":"string","default-from":"runtime.done-configuring-text"},"edit-text":{"type":"string","default-from":"runtime.edit-text"},"empty-record-text":{"type":"string","default-from":"runtime.empty-record-text"},"empty-text":{"type":"string","default-from":"runtime.empty-text"},"errors-text":{"type":"string","default-from":"runtime.errors-text"},"favourite":{"type":"boolean","default":false},"favourite-label":{"type":"string","default-from":"runtime.favourite-label"},"field-label-text":{"type":"string","default-from":"runtime.field-label-text"},"field-settings-text":{"type":"string","default-from":"runtime.field-settings-text"},"hidden-text":{"type":"string","default-from":"runtime.hidden-text"},"hide-rare-text":{"type":"string","default-from":"runtime.hide-rare-text"},"hint-text":{"type":"string","default-from":"runtime.hint-text"},"in-this-group-text":{"type":"string","default-from":"runtime.in-this-group-text"},"inherited-text":{"type":"string","default-from":"runtime.inherited-text"},"link-copied-label":{"type":"string","default-from":"runtime.link-copied-label"},"menu-label":{"type":"string","default-from":"runtime.menu-label"},"move-down-text":{"type":"string","default-from":"runtime.move-down-text"},"move-up-text":{"type":"string","default-from":"runtime.move-up-text"},"new-group-title":{"type":"string","default-from":"runtime.new-group-title"},"new-section-title":{"type":"string","default-from":"runtime.new-section-title"},"no-match-text":{"type":"string","default-from":"runtime.no-match-text"},"open-full-label":{"type":"string","default-from":"runtime.open-full-label"},"panel":{"type":"boolean","default":false},"panel-label":{"type":"string","default":""},"panel-size":{"type":"enum","values":["1/2","1","2","full"],"default":"1"},"size":{"type":"enum","values":["1","1/2"],"default":"1"},"mode":{"type":"enum","values":["view","auto","edit","create"],"default":"auto"},"panel-width":{"type":"string","default":""},"personal-layer-text":{"type":"string","default-from":"runtime.personal-layer-text"},"rare-text":{"type":"string","default-from":"runtime.rare-text"},"record-id":{"type":"id","default":""},"remove-field-text":{"type":"string","default-from":"runtime.remove-field-text"},"remove-group-text":{"type":"string","default-from":"runtime.remove-group-text"},"remove-section-text":{"type":"string","default-from":"runtime.remove-section-text"},"rename-text":{"type":"string","default-from":"runtime.rename-text"},"reset-view-ask-text":{"type":"string","default-from":"runtime.reset-view-ask-text"},"reset-view-text":{"type":"string","default-from":"runtime.reset-view-text"},"save-name-text":{"type":"string","default-from":"runtime.save-name-text"},"save-text":{"type":"string","default-from":"runtime.save-text"},"section-icon-text":{"type":"string","default-from":"runtime.section-icon-text"},"section-icons":{"type":"string","default":""},"sections-as":{"type":"enum","values":["list","tabs"],"default":"list"},"sections-label":{"type":"string","default-from":"runtime.sections-label"},"shared-layer-text":{"type":"string","default-from":"runtime.shared-layer-text"},"show-rare":{"type":"boolean","default":false},"show-rare-text":{"type":"string","default-from":"runtime.show-rare-text"},"shown-text":{"type":"string","default-from":"runtime.shown-text"},"unplaced-hint-text":{"type":"string","default-from":"runtime.unplaced-hint-text"},"unplaced-title":{"type":"string","default-from":"runtime.unplaced-title"},"variant-text":{"type":"string","default-from":"runtime.variant-text"},"view-conflict-text":{"type":"string","default-from":"runtime.view-conflict-text"},"view-denied-text":{"type":"string","default-from":"runtime.view-denied-text"},"width-text":{"type":"string","default-from":"runtime.width-text"},"view-profile-label":{"type":"string","default-from":"runtime.view-profile-label"},"add-view-text":{"type":"string","default-from":"runtime.add-view-text"},"new-view-text":{"type":"string","default-from":"runtime.new-view-text"},"delete-view-text":{"type":"string","default-from":"runtime.delete-view-text"},"last-shared-view-text":{"type":"string","default-from":"runtime.last-shared-view-text"},"full":{"type":"boolean","default":false},"open":{"type":"boolean","default":true}},"values":{"revision":{"type":"string"},"section":{"type":"string"}},"events":{"close":{"carries":{"reason":{"type":"enum","values":["close","escape","cancelled","deleted","api"]},"record_id":{"type":"id","nullable":true},"unsaved_fields":{"type":"list"}},"cancelable":true},"open-full":{"carries":{"id":"id","address":"string","record_id":{"type":"id","nullable":true}}},"saved":{"carries":{"id":"id","revision":{"type":"string","optional":true}}},"failed":{"carries":{"reason":"string","message":{"type":"string","optional":true}}},"open":{"carries":{"field":"string","value":"object","answer":"string"}},"delete":{"carries":{"collection":"string","revision":"string","answer":"string","record_id":{"type":"id","nullable":true}}},"created":{"carries":{"collection":{"type":"string","nullable":true},"record_id":{"type":"id","nullable":true}}},"cancel":{"carries":{"mode":{"type":"enum","values":["auto","edit","create"]},"scope":{"type":"enum","values":["group"],"optional":true},"section":{"type":"string","optional":true},"group":{"type":"string","optional":true}}},"state":{"carries":{"state":"string","message":"string"},"own-verb":true},"address-copy":{"carries":{},"own-verb":true},"favourite":{"carries":{"collection":{"type":"string","nullable":true},"favourite":"boolean","record_id":{"type":"id","nullable":true}},"own-verb":true}},"actions":{"refresh":{},"load":{"with":{"reason":{"type":"string","optional":true}}},"edit-group":{"with":{"section":"string","group":"string"}},"cancel-edit":{},"save-group":{"with":{"options":{"type":"object","optional":true}},"concurrency":"drop"},"select-section":{"with":{"key":"string"}},"close-panel":{"with":{"reason":{"type":"string","optional":true}}},"copy-address":{},"open-full-page":{},"confirm-save":{},"cancel-confirmation":{}},"port":{"id":"simai.property-view-port","version":"1.17.0","contract":"src/core/contracts/ports/simai.property-view-port/1.17.0/port.json"},"presentation":{"skeleton":{"file":"skeleton.html","late":[]}},"css-variables":{"--sf-property-view--sections-width":{"type":"length","state":"default"},"--sf-property-view--title-size":{"type":"length","state":"default"},"--sf-property-view--label-size":{"type":"length","state":"default"},"--sf-property-view--value-size":{"type":"length","state":"default"},"--sf-property-view--group-size":{"type":"length","state":"default"},"--sf-property-view--edge-room":{"type":"length","state":"open"}},"host-states":{"data-state":"string","aria-busy":"string"}}');
|
|
10362
10400
|
|
|
10363
10401
|
/***/ },
|
|
10364
10402
|
|
|
Binary file
|