@simai-studio/view 0.0.0-stage → 1.0.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/LICENSE.md +183 -0
- package/README.md +75 -2
- package/dist/package-receipt.json +971 -0
- package/dist/set.json +141 -0
- package/dist/smart/rule.js +278 -0
- package/dist/smart/rule.js.gz +0 -0
- package/dist/smart/view/aliases.json +129 -0
- package/dist/smart/view/aliases.json.gz +0 -0
- package/dist/smart/view/component.json +1620 -0
- package/dist/smart/view/component.json.gz +0 -0
- package/dist/smart/view/css/view.css +208 -0
- package/dist/smart/view/css/view.css.gz +0 -0
- package/dist/smart/view/css/view.min.css +2 -0
- package/dist/smart/view/css/view.min.css.gz +0 -0
- package/dist/smart/view/examples.json +668 -0
- package/dist/smart/view/examples.json.gz +0 -0
- package/dist/smart/view/js/view.js +3938 -0
- package/dist/smart/view/js/view.js.gz +0 -0
- package/dist/smart/view/js/view.min.js +1 -0
- package/dist/smart/view/js/view.min.js.gz +0 -0
- package/dist/smart/view/lang/en.json +61 -0
- package/dist/smart/view/lang/en.json.gz +0 -0
- package/dist/smart/view/lang/ru.json +61 -0
- package/dist/smart/view/lang/ru.json.gz +0 -0
- package/dist/smart/view/probe.json +165 -0
- package/dist/smart/view/probe.json.gz +0 -0
- package/dist/smart/view/smart.manifest.json +1570 -0
- package/dist/smart/view/smart.manifest.json.gz +0 -0
- package/dist/smart/view/static/default/embedded.html +96 -0
- package/dist/smart/view/static/default/embedded.html.gz +0 -0
- package/dist/smart/view/static/default/open-record.html +247 -0
- package/dist/smart/view/static/default/open-record.html.gz +0 -0
- package/dist/smart/view/static/default/reference.html +247 -0
- package/dist/smart/view/static/default/reference.html.gz +0 -0
- package/dist/smart/view/static/sheets.json +282 -0
- package/dist/smart/view/static/sheets.json.gz +0 -0
- package/dist/smart/view-properties/aliases.json +174 -0
- package/dist/smart/view-properties/aliases.json.gz +0 -0
- package/dist/smart/view-properties/component.json +1898 -0
- package/dist/smart/view-properties/component.json.gz +0 -0
- package/dist/smart/view-properties/css/view-properties.css +1153 -0
- package/dist/smart/view-properties/css/view-properties.css.gz +0 -0
- package/dist/smart/view-properties/css/view-properties.min.css +2 -0
- package/dist/smart/view-properties/css/view-properties.min.css.gz +0 -0
- package/dist/smart/view-properties/examples.json +841 -0
- package/dist/smart/view-properties/examples.json.gz +0 -0
- package/dist/smart/view-properties/js/view-properties.js +10416 -0
- package/dist/smart/view-properties/js/view-properties.js.gz +0 -0
- package/dist/smart/view-properties/js/view-properties.min.js +1421 -0
- package/dist/smart/view-properties/js/view-properties.min.js.gz +0 -0
- package/dist/smart/view-properties/lang/en.json +96 -0
- package/dist/smart/view-properties/lang/en.json.gz +0 -0
- package/dist/smart/view-properties/lang/ru.json +96 -0
- package/dist/smart/view-properties/lang/ru.json.gz +0 -0
- package/dist/smart/view-properties/probe.json +188 -0
- package/dist/smart/view-properties/probe.json.gz +0 -0
- package/dist/smart/view-properties/skeleton.html +13 -0
- package/dist/smart/view-properties/skeleton.html.gz +0 -0
- package/dist/smart/view-properties/smart.manifest.json +1590 -0
- package/dist/smart/view-properties/smart.manifest.json.gz +0 -0
- package/dist/smart/view-properties/static/default/full.html +2 -0
- package/dist/smart/view-properties/static/default/full.html.gz +0 -0
- package/dist/smart/view-properties/static/default/panel-closed.html +4 -0
- package/dist/smart/view-properties/static/default/panel-closed.html.gz +0 -0
- package/dist/smart/view-properties/static/default/panel.html +4 -0
- package/dist/smart/view-properties/static/default/panel.html.gz +0 -0
- package/dist/smart/view-properties/static/default/reference.html +2 -0
- package/dist/smart/view-properties/static/default/reference.html.gz +0 -0
- package/dist/smart/view-properties/static/sheets.json +426 -0
- package/dist/smart/view-properties/static/sheets.json.gz +0 -0
- package/dist/smart/view-properties/template/default.css +989 -0
- package/dist/smart/view-properties/template/default.css.gz +0 -0
- package/dist/smart/view-properties/template/default.js +1660 -0
- package/dist/smart/view-properties/template/default.js.gz +0 -0
- package/dist/smart/view-table/aliases.json +448 -0
- package/dist/smart/view-table/aliases.json.gz +0 -0
- package/dist/smart/view-table/component.json +2738 -0
- package/dist/smart/view-table/component.json.gz +0 -0
- package/dist/smart/view-table/css/view-table.css +3658 -0
- package/dist/smart/view-table/css/view-table.css.gz +0 -0
- package/dist/smart/view-table/css/view-table.min.css +2 -0
- package/dist/smart/view-table/css/view-table.min.css.gz +0 -0
- package/dist/smart/view-table/examples.json +499 -0
- package/dist/smart/view-table/examples.json.gz +0 -0
- package/dist/smart/view-table/js/view-table.js +13879 -0
- package/dist/smart/view-table/js/view-table.js.gz +0 -0
- package/dist/smart/view-table/js/view-table.min.js +1440 -0
- package/dist/smart/view-table/js/view-table.min.js.gz +0 -0
- package/dist/smart/view-table/lang/en.json +132 -0
- package/dist/smart/view-table/lang/en.json.gz +0 -0
- package/dist/smart/view-table/lang/ru.json +132 -0
- package/dist/smart/view-table/lang/ru.json.gz +0 -0
- package/dist/smart/view-table/probe.json +275 -0
- package/dist/smart/view-table/probe.json.gz +0 -0
- package/dist/smart/view-table/smart.manifest.json +2524 -0
- package/dist/smart/view-table/smart.manifest.json.gz +0 -0
- package/dist/smart/view-table/static/default/current.html +141 -0
- package/dist/smart/view-table/static/default/current.html.gz +0 -0
- package/dist/smart/view-table/static/default/current.skeleton.html +141 -0
- package/dist/smart/view-table/static/default/current.skeleton.html.gz +0 -0
- package/dist/smart/view-table/static/default/empty.html +149 -0
- package/dist/smart/view-table/static/default/empty.html.gz +0 -0
- package/dist/smart/view-table/static/default/loading.html +180 -0
- package/dist/smart/view-table/static/default/loading.html.gz +0 -0
- package/dist/smart/view-table/static/default/many.html +180 -0
- package/dist/smart/view-table/static/default/many.html.gz +0 -0
- package/dist/smart/view-table/static/default/reference.html +136 -0
- package/dist/smart/view-table/static/default/reference.html.gz +0 -0
- package/dist/smart/view-table/static/default/reference.skeleton.html +136 -0
- package/dist/smart/view-table/static/default/reference.skeleton.html.gz +0 -0
- package/dist/smart/view-table/static/default/typed-cells.html +229 -0
- package/dist/smart/view-table/static/default/typed-cells.html.gz +0 -0
- package/dist/smart/view-table/static/default/typed-cells.skeleton.html +229 -0
- package/dist/smart/view-table/static/default/typed-cells.skeleton.html.gz +0 -0
- package/dist/smart/view-table/static/sheets.json +480 -0
- package/dist/smart/view-table/static/sheets.json.gz +0 -0
- package/dist/smart/view-table/studio.fixture.json +17 -0
- package/dist/smart/view-table/studio.fixture.json.gz +0 -0
- package/dist/smart/view-table/studio.scenario.json +30 -0
- package/dist/smart/view-table/studio.scenario.json.gz +0 -0
- package/dist/smart/view-table/template/default.css +1301 -0
- package/dist/smart/view-table/template/default.css.gz +0 -0
- package/dist/smart/view-table/template/default.js +1215 -0
- package/dist/smart/view-table/template/default.js.gz +0 -0
- package/dist/smart/view-table/template/link-cell-contract.js +48 -0
- package/dist/smart/view-table/template/link-cell-contract.js.gz +0 -0
- package/package.json +29 -4
|
Binary file
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<!-- sf-view-table, example «current»: the static markup (standard simai.smart-component 1.3.8 §5.4). Generated by scripts/snapshot-first-paint.mjs from the built output; do not edit, run it again. -->
|
|
2
|
+
<sf-view-table aria-label="Записи" current="2" style="display: contents;"><script type="application/json" data-sf-settings>{"columns":[{"key":"title","label":"Название"}],"rows":[{"id":"1","title":"Первая"},{"id":"2","title":"Вторая"}]}</script>
|
|
3
|
+
<section class="sf-table min-w-0 flex flex-col gap-1/3 flex-1 min-h-0 " data-state="populated" data-sf-static>
|
|
4
|
+
|
|
5
|
+
<div class="sf-table-toolbar flex gap-1/2 content-main-between flex-none" data-sf-filter-tags="0">
|
|
6
|
+
<div class="sf-table-toolbar-start flex items-cross-center gap-1/3 flex-wrap min-w-0">
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
</div>
|
|
11
|
+
<div class="sf-table-toolbar-end flex items-cross-center gap-1/3 flex-wrap flex-auto min-w-0">
|
|
12
|
+
<sf-input root-class="sf-search-input m-inline-start-auto" appearance="bordered" name="sf_table_search" hint-icon="search" size="1" value placeholder="Поиск" style="display: contents;">
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
<label class="sf-input sf-input--size-1 sf-input--bordered sf-search-input m-inline-start-auto flex flex-col" data-mask="false" data-mask-pattern data-mask-lazy data-mask-placeholder-char data-mask-options data-sf-input-bound="1" for="sf-view-table-current-1" data-sf-static>
|
|
16
|
+
|
|
17
|
+
<span class="sf-input-field items-cross-center transition flex">
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
<input id="sf-view-table-current-1" type="text" placeholder="Поиск" value data-mask="false" data-mask-pattern data-mask-lazy data-mask-placeholder-char data-mask-options>
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
<sf-button-icon appearance="link" scheme="on-surface" size="1" icon="search" aria-label="Поиск" style="display: contents;">
|
|
25
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Поиск" data-sf-static>
|
|
26
|
+
|
|
27
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="search" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>search</i></sf-icon>
|
|
28
|
+
</button>
|
|
29
|
+
</sf-button-icon>
|
|
30
|
+
|
|
31
|
+
</span>
|
|
32
|
+
|
|
33
|
+
</label>
|
|
34
|
+
</sf-input>
|
|
35
|
+
|
|
36
|
+
<div class="flex items-cross-center">
|
|
37
|
+
<sf-button appearance="outline" scheme="on-surface" size="1" text="Создать" style="display: contents;">
|
|
38
|
+
<button type="button" class="sf-button sf-button--size-1 sf-button--outline sf-button--on-surface flex items-cross-center" data-sf-static>
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
<span class="sf-button-text-container text-center pointer-event-none flex-1">
|
|
42
|
+
Создать
|
|
43
|
+
</span>
|
|
44
|
+
|
|
45
|
+
</button>
|
|
46
|
+
</sf-button>
|
|
47
|
+
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
<div class="table-wrap min-w-0 max-w-full flex flex-col flex-1 min-h-0">
|
|
57
|
+
<div class="sf-table-scroll min-h-0 min-w-0 overflow-auto flex-1 relative" data-sf-vertical-scroll="self">
|
|
58
|
+
<div class="sf-table-resize-guide" aria-hidden="true" hidden></div>
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
<table class="table border-separate border-spacing-0 min-w-full sf-table-content-sized table-fixed transition" aria-label="Записи" style="--sf-table-pin-select: 0px;">
|
|
62
|
+
|
|
63
|
+
<colgroup>
|
|
64
|
+
|
|
65
|
+
<col data-key="select" style="width: calc(var(--sf-text-height-1) + var(--sf-b6) + calc(var(--sf-px) * 2))">
|
|
66
|
+
|
|
67
|
+
<col data-key="settings" style="width: calc(var(--sf-text-height-1) + (var(--sf-ui-1--space-y-tightness-default) * 2) + var(--sf-b6))" data-sf-pin-edge>
|
|
68
|
+
|
|
69
|
+
<col data-key="title">
|
|
70
|
+
|
|
71
|
+
<col data-key="actions" style="width: calc(3 * (var(--sf-text-height-1) + var(--sf-ui-1--space-y-tightness-default) * 2) + 2 * var(--sf-space-1\/3) + var(--sf-b6))">
|
|
72
|
+
|
|
73
|
+
</colgroup>
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
<thead class="sticky top-0 z-5">
|
|
77
|
+
<tr>
|
|
78
|
+
|
|
79
|
+
<th class="relative" data-key="select" data-label="select" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-select, 0px); z-index: 2;">
|
|
80
|
+
<sf-checkbox position="end" root-class="content-main-between" size="1" aria-label="Выбрать все строки" style="display: contents;">
|
|
81
|
+
<label class="sf-checkbox sf-checkbox--size-1 flex content-main-between cursor-pointer" data-sf-static>
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
<span class="sf-checkbox-box transition flex">
|
|
86
|
+
<input type="checkbox" value="on" aria-label="Выбрать все строки">
|
|
87
|
+
<sf-icon aria-hidden="true" icon style="display: contents;"><i class="sf-icon sf-icon--weight-regular" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static></i></sf-icon>
|
|
88
|
+
</span>
|
|
89
|
+
</label>
|
|
90
|
+
</sf-checkbox>
|
|
91
|
+
</th>
|
|
92
|
+
<th class="relative" data-key="settings" data-label="settings" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-settings, 0px); z-index: 2;" data-sf-pin-edge>
|
|
93
|
+
<sf-button-icon size="1" appearance="link" scheme="on-surface" icon="settings" aria-label="Настройки" value="settings" style="display: contents;">
|
|
94
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Настройки" value="settings" data-sf-static>
|
|
95
|
+
|
|
96
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="settings" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>settings</i></sf-icon>
|
|
97
|
+
</button>
|
|
98
|
+
</sf-button-icon>
|
|
99
|
+
</th>
|
|
100
|
+
<th class="relative" data-key="title" data-label="Название">
|
|
101
|
+
<div class="sidebar-resizer flex items-cross-center h-full select-none">
|
|
102
|
+
Название
|
|
103
|
+
|
|
104
|
+
<button type="button" role="separator" aria-orientation="vertical" class="sf-table-column-resizer" aria-keyshortcuts="ArrowLeft ArrowRight Home End Enter" id="sf-view-table-current-2" data-sf-column-resizer="title" aria-label="Изменить ширину столбца: Название"></button>
|
|
105
|
+
</div>
|
|
106
|
+
</th>
|
|
107
|
+
<th class="relative" data-key="actions" data-label="Действия">
|
|
108
|
+
<span class="sf-table-visually-hidden">Действия</span>
|
|
109
|
+
</th>
|
|
110
|
+
</tr>
|
|
111
|
+
</thead>
|
|
112
|
+
|
|
113
|
+
<tbody><tr tabindex="-1" data-row-id="1"><td data-key="select" data-item="1_select" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-select, 0px); z-index: 2;"><label class="sf-checkbox sf-checkbox--size-1 flex content-main-between cursor-pointer" data-sf-checkbox-bound="1"><span class="sf-checkbox-box transition flex"><input type="checkbox" data-sf-row-box value="1" aria-label="Выбрать строку: Первая"></span></label></td><td data-key="settings" data-item="1_settings" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-settings, 0px); z-index: 2;" data-sf-pin-edge><button type="button" value="menu" data-sf-row-menu class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Меню"><i class="sf-icon sf-icon--weight-regular pointer-event-none" aria-hidden="true">menu</i></button></td><td data-key="title" data-item="1_title"><span class="sf-table-cell-text">Первая</span></td><td data-key="actions" data-item="1_actions"><div class="sf-table-row-actions" data-row-actions="idle"></div></td></tr><tr tabindex="-1" data-row-id="2" data-current aria-current="true"><td data-key="select" data-item="2_select" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-select, 0px); z-index: 2;"><label class="sf-checkbox sf-checkbox--size-1 flex content-main-between cursor-pointer" data-sf-checkbox-bound="1"><span class="sf-checkbox-box transition flex"><input type="checkbox" data-sf-row-box value="2" aria-label="Выбрать строку: Вторая"></span></label></td><td data-key="settings" data-item="2_settings" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-settings, 0px); z-index: 2;" data-sf-pin-edge><button type="button" value="menu" data-sf-row-menu class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Меню"><i class="sf-icon sf-icon--weight-regular pointer-event-none" aria-hidden="true">menu</i></button></td><td data-key="title" data-item="2_title"><span class="sf-table-cell-text">Вторая</span></td><td data-key="actions" data-item="2_actions">
|
|
114
|
+
<div class="sf-table-row-actions flex items-cross-center gap-1/3">
|
|
115
|
+
<sf-button-icon name="Редактировать" id="edit" kind="icon" size="1" appearance="link" scheme="on-surface" icon="edit" aria-label="Редактировать" value="edit" style="display: contents;">
|
|
116
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Редактировать" name="Редактировать" value="edit" data-sf-static>
|
|
117
|
+
|
|
118
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="edit" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>edit</i></sf-icon>
|
|
119
|
+
</button>
|
|
120
|
+
</sf-button-icon><sf-button-icon name="Посмотреть" id="view" kind="icon" size="1" appearance="link" scheme="on-surface" icon="visibility" aria-label="Посмотреть" value="view" style="display: contents;">
|
|
121
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Посмотреть" name="Посмотреть" value="view" data-sf-static>
|
|
122
|
+
|
|
123
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="visibility" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>visibility</i></sf-icon>
|
|
124
|
+
</button>
|
|
125
|
+
</sf-button-icon><sf-button-icon name="Удалить" id="delete" danger kind="icon" size="1" appearance="link" scheme="on-surface" status="error" icon="delete" aria-label="Удалить" value="delete" style="display: contents;">
|
|
126
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--error" aria-label="Удалить" name="Удалить" danger value="delete" data-sf-static>
|
|
127
|
+
|
|
128
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="delete" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>delete</i></sf-icon>
|
|
129
|
+
</button>
|
|
130
|
+
</sf-button-icon>
|
|
131
|
+
</div>
|
|
132
|
+
</td></tr></tbody>
|
|
133
|
+
</table>
|
|
134
|
+
</div>
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
</div>
|
|
138
|
+
</section>
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
</sf-view-table>
|
|
Binary file
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<!-- sf-view-table, example «current»: the skeleton, derived (standard simai.smart-component 1.3.8 §5.4). Generated by scripts/snapshot-first-paint.mjs from the built output; do not edit, run it again. -->
|
|
2
|
+
<sf-view-table aria-label="Записи" current="2" style="display: contents;" data-sf-first-paint="skeleton" aria-busy="true"><script type="application/json" data-sf-settings>{"columns":[{"key":"title","label":"Название"}]}</script>
|
|
3
|
+
<section class="sf-table min-w-0 flex flex-col gap-1/3 flex-1 min-h-0 " data-state="populated" data-sf-static aria-hidden="true">
|
|
4
|
+
|
|
5
|
+
<div class="sf-table-toolbar flex gap-1/2 content-main-between flex-none" data-sf-filter-tags="0">
|
|
6
|
+
<div class="sf-table-toolbar-start flex items-cross-center gap-1/3 flex-wrap min-w-0">
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
</div>
|
|
11
|
+
<div class="sf-table-toolbar-end flex items-cross-center gap-1/3 flex-wrap flex-auto min-w-0">
|
|
12
|
+
<sf-input root-class="sf-search-input m-inline-start-auto" appearance="bordered" name="sf_table_search" hint-icon="search" size="1" value placeholder="Поиск" style="display: contents;">
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
<label class="sf-input sf-input--size-1 sf-input--bordered sf-search-input m-inline-start-auto flex flex-col" data-mask="false" data-mask-pattern data-mask-lazy data-mask-placeholder-char data-mask-options data-sf-input-bound="1" for="sf-view-table-current-1" data-sf-static aria-hidden="true">
|
|
16
|
+
|
|
17
|
+
<span class="sf-input-field items-cross-center transition flex">
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
<input id="sf-view-table-current-1" type="text" placeholder="Поиск" value data-mask="false" data-mask-pattern data-mask-lazy data-mask-placeholder-char data-mask-options>
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
<sf-button-icon appearance="link" scheme="on-surface" size="1" icon="search" aria-label="Поиск" style="display: contents;">
|
|
25
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Поиск" data-sf-static aria-hidden="true">
|
|
26
|
+
|
|
27
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="search" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>search</i></sf-icon>
|
|
28
|
+
</button>
|
|
29
|
+
</sf-button-icon>
|
|
30
|
+
|
|
31
|
+
</span>
|
|
32
|
+
|
|
33
|
+
</label>
|
|
34
|
+
</sf-input>
|
|
35
|
+
|
|
36
|
+
<div class="flex items-cross-center">
|
|
37
|
+
<sf-button appearance="outline" scheme="on-surface" size="1" text="Создать" style="display: contents;">
|
|
38
|
+
<button type="button" class="sf-button sf-button--size-1 sf-button--outline sf-button--on-surface flex items-cross-center" data-sf-static aria-hidden="true">
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
<span class="sf-button-text-container text-center pointer-event-none flex-1">
|
|
42
|
+
<span class="sf-first-paint-bar" aria-hidden="true">Создать</span>
|
|
43
|
+
</span>
|
|
44
|
+
|
|
45
|
+
</button>
|
|
46
|
+
</sf-button>
|
|
47
|
+
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
<div class="table-wrap min-w-0 max-w-full flex flex-col flex-1 min-h-0">
|
|
57
|
+
<div class="sf-table-scroll min-h-0 min-w-0 overflow-auto flex-1 relative" data-sf-vertical-scroll="self">
|
|
58
|
+
<div class="sf-table-resize-guide" aria-hidden="true" hidden></div>
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
<table class="table border-separate border-spacing-0 min-w-full sf-table-content-sized table-fixed transition" aria-label="Записи" style="--sf-table-pin-select: 0px;">
|
|
62
|
+
|
|
63
|
+
<colgroup>
|
|
64
|
+
|
|
65
|
+
<col data-key="select" style="width: calc(var(--sf-text-height-1) + var(--sf-b6) + calc(var(--sf-px) * 2))">
|
|
66
|
+
|
|
67
|
+
<col data-key="settings" style="width: calc(var(--sf-text-height-1) + (var(--sf-ui-1--space-y-tightness-default) * 2) + var(--sf-b6))" data-sf-pin-edge>
|
|
68
|
+
|
|
69
|
+
<col data-key="title">
|
|
70
|
+
|
|
71
|
+
<col data-key="actions" style="width: calc(3 * (var(--sf-text-height-1) + var(--sf-ui-1--space-y-tightness-default) * 2) + 2 * var(--sf-space-1\/3) + var(--sf-b6))">
|
|
72
|
+
|
|
73
|
+
</colgroup>
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
<thead class="sticky top-0 z-5">
|
|
77
|
+
<tr>
|
|
78
|
+
|
|
79
|
+
<th class="relative" data-key="select" data-label="select" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-select, 0px); z-index: 2;">
|
|
80
|
+
<sf-checkbox position="end" root-class="content-main-between" size="1" aria-label="Выбрать все строки" style="display: contents;">
|
|
81
|
+
<label class="sf-checkbox sf-checkbox--size-1 flex content-main-between cursor-pointer" data-sf-static aria-hidden="true">
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
<span class="sf-checkbox-box transition flex">
|
|
86
|
+
<input type="checkbox" value="" aria-label="Выбрать все строки">
|
|
87
|
+
<sf-icon aria-hidden="true" icon style="display: contents;"><i class="sf-icon sf-icon--weight-regular" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static></i></sf-icon>
|
|
88
|
+
</span>
|
|
89
|
+
</label>
|
|
90
|
+
</sf-checkbox>
|
|
91
|
+
</th>
|
|
92
|
+
<th class="relative" data-key="settings" data-label="settings" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-settings, 0px); z-index: 2;" data-sf-pin-edge>
|
|
93
|
+
<sf-button-icon size="1" appearance="link" scheme="on-surface" icon="settings" aria-label="Настройки" value="settings" style="display: contents;">
|
|
94
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Настройки" value="settings" data-sf-static aria-hidden="true">
|
|
95
|
+
|
|
96
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="settings" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>settings</i></sf-icon>
|
|
97
|
+
</button>
|
|
98
|
+
</sf-button-icon>
|
|
99
|
+
</th>
|
|
100
|
+
<th class="relative" data-key="title" data-label="Название">
|
|
101
|
+
<div class="sidebar-resizer flex items-cross-center h-full select-none">
|
|
102
|
+
<span class="sf-first-paint-bar" aria-hidden="true">Название</span>
|
|
103
|
+
|
|
104
|
+
<button type="button" role="separator" aria-orientation="vertical" class="sf-table-column-resizer" aria-keyshortcuts="ArrowLeft ArrowRight Home End Enter" id="sf-view-table-current-2" data-sf-column-resizer="title" aria-label="Изменить ширину столбца: Название"></button>
|
|
105
|
+
</div>
|
|
106
|
+
</th>
|
|
107
|
+
<th class="relative" data-key="actions" data-label="Действия">
|
|
108
|
+
<span class="sf-table-visually-hidden"><span class="sf-first-paint-bar" aria-hidden="true">Действия</span></span>
|
|
109
|
+
</th>
|
|
110
|
+
</tr>
|
|
111
|
+
</thead>
|
|
112
|
+
|
|
113
|
+
<tbody><tr tabindex="-1" data-row-id="1"><td data-key="select" data-item="1_select" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-select, 0px); z-index: 2;"><label class="sf-checkbox sf-checkbox--size-1 flex content-main-between cursor-pointer" data-sf-checkbox-bound="1"><span class="sf-checkbox-box transition flex"><input type="checkbox" data-sf-row-box value="" aria-label="Выбрать строку: Первая"></span></label></td><td data-key="settings" data-item="1_settings" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-settings, 0px); z-index: 2;" data-sf-pin-edge><button type="button" value="menu" data-sf-row-menu class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Меню"><i class="sf-icon sf-icon--weight-regular pointer-event-none" aria-hidden="true">menu</i></button></td><td data-key="title" data-item="1_title"><span class="sf-table-cell-text"><span class="sf-first-paint-bar" aria-hidden="true">Первая</span></span></td><td data-key="actions" data-item="1_actions"><div class="sf-table-row-actions" data-row-actions="idle"></div></td></tr><tr tabindex="-1" data-row-id="2" data-current aria-current="true"><td data-key="select" data-item="2_select" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-select, 0px); z-index: 2;"><label class="sf-checkbox sf-checkbox--size-1 flex content-main-between cursor-pointer" data-sf-checkbox-bound="1"><span class="sf-checkbox-box transition flex"><input type="checkbox" data-sf-row-box value="" aria-label="Выбрать строку: Вторая"></span></label></td><td data-key="settings" data-item="2_settings" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-settings, 0px); z-index: 2;" data-sf-pin-edge><button type="button" value="menu" data-sf-row-menu class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Меню"><i class="sf-icon sf-icon--weight-regular pointer-event-none" aria-hidden="true">menu</i></button></td><td data-key="title" data-item="2_title"><span class="sf-table-cell-text"><span class="sf-first-paint-bar" aria-hidden="true">Вторая</span></span></td><td data-key="actions" data-item="2_actions">
|
|
114
|
+
<div class="sf-table-row-actions flex items-cross-center gap-1/3">
|
|
115
|
+
<sf-button-icon name="Редактировать" id="edit" kind="icon" size="1" appearance="link" scheme="on-surface" icon="edit" aria-label="Редактировать" value="edit" style="display: contents;">
|
|
116
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Редактировать" name="Редактировать" value="edit" data-sf-static aria-hidden="true">
|
|
117
|
+
|
|
118
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="edit" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>edit</i></sf-icon>
|
|
119
|
+
</button>
|
|
120
|
+
</sf-button-icon><sf-button-icon name="Посмотреть" id="view" kind="icon" size="1" appearance="link" scheme="on-surface" icon="visibility" aria-label="Посмотреть" value="view" style="display: contents;">
|
|
121
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Посмотреть" name="Посмотреть" value="view" data-sf-static aria-hidden="true">
|
|
122
|
+
|
|
123
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="visibility" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>visibility</i></sf-icon>
|
|
124
|
+
</button>
|
|
125
|
+
</sf-button-icon><sf-button-icon name="Удалить" id="delete" danger kind="icon" size="1" appearance="link" scheme="on-surface" status="error" icon="delete" aria-label="Удалить" value="delete" style="display: contents;">
|
|
126
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--error" aria-label="Удалить" name="Удалить" danger value="delete" data-sf-static aria-hidden="true">
|
|
127
|
+
|
|
128
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="delete" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>delete</i></sf-icon>
|
|
129
|
+
</button>
|
|
130
|
+
</sf-button-icon>
|
|
131
|
+
</div>
|
|
132
|
+
</td></tr></tbody>
|
|
133
|
+
</table>
|
|
134
|
+
</div>
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
</div>
|
|
138
|
+
</section>
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
</sf-view-table>
|
|
Binary file
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
<!-- sf-view-table, example «empty»: the static markup (standard simai.smart-component 1.3.8 §5.4). Generated by scripts/snapshot-first-paint.mjs from the built output; do not edit, run it again. -->
|
|
2
|
+
<sf-view-table aria-label="Записи" data-state="empty" style="display: contents;"><script type="application/json" data-sf-settings>{"columns":[{"key":"title","label":"Название"}]}</script>
|
|
3
|
+
<section class="sf-table min-w-0 flex flex-col gap-1/3 flex-1 min-h-0 " data-state="empty" data-sf-static>
|
|
4
|
+
|
|
5
|
+
<div class="sf-table-toolbar flex gap-1/2 content-main-between flex-none" data-sf-filter-tags="0">
|
|
6
|
+
<div class="sf-table-toolbar-start flex items-cross-center gap-1/3 flex-wrap min-w-0">
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
</div>
|
|
11
|
+
<div class="sf-table-toolbar-end flex items-cross-center gap-1/3 flex-wrap flex-auto min-w-0">
|
|
12
|
+
<sf-input root-class="sf-search-input m-inline-start-auto" appearance="bordered" name="sf_table_search" hint-icon="search" size="1" value placeholder="Поиск" style="display: contents;">
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
<label class="sf-input sf-input--size-1 sf-input--bordered sf-search-input m-inline-start-auto flex flex-col" data-mask="false" data-mask-pattern data-mask-lazy data-mask-placeholder-char data-mask-options data-sf-input-bound="1" for="sf-view-table-empty-1" data-sf-static>
|
|
16
|
+
|
|
17
|
+
<span class="sf-input-field items-cross-center transition flex">
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
<input id="sf-view-table-empty-1" type="text" placeholder="Поиск" value data-mask="false" data-mask-pattern data-mask-lazy data-mask-placeholder-char data-mask-options>
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
<sf-button-icon appearance="link" scheme="on-surface" size="1" icon="search" aria-label="Поиск" style="display: contents;">
|
|
25
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Поиск" data-sf-static>
|
|
26
|
+
|
|
27
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="search" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>search</i></sf-icon>
|
|
28
|
+
</button>
|
|
29
|
+
</sf-button-icon>
|
|
30
|
+
|
|
31
|
+
</span>
|
|
32
|
+
|
|
33
|
+
</label>
|
|
34
|
+
</sf-input>
|
|
35
|
+
|
|
36
|
+
<div class="flex items-cross-center">
|
|
37
|
+
<sf-button appearance="outline" scheme="on-surface" size="1" text="Создать" style="display: contents;">
|
|
38
|
+
<button type="button" class="sf-button sf-button--size-1 sf-button--outline sf-button--on-surface flex items-cross-center" data-sf-static>
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
<span class="sf-button-text-container text-center pointer-event-none flex-1">
|
|
42
|
+
Создать
|
|
43
|
+
</span>
|
|
44
|
+
|
|
45
|
+
</button>
|
|
46
|
+
</sf-button>
|
|
47
|
+
|
|
48
|
+
</div>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
<div class="table-wrap min-w-0 max-w-full flex flex-col flex-1 min-h-0">
|
|
57
|
+
<div class="sf-table-scroll min-h-0 min-w-0 overflow-auto flex-1 relative" data-sf-vertical-scroll="self">
|
|
58
|
+
<div class="sf-table-resize-guide" aria-hidden="true" hidden></div>
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
<table class="table border-separate border-spacing-0 min-w-full w-max table-fixed transition" aria-label="Записи" style="--sf-table-pin-select: 0px;">
|
|
62
|
+
|
|
63
|
+
<colgroup>
|
|
64
|
+
|
|
65
|
+
<col data-key="select" style="width: calc(var(--sf-text-height-1) + var(--sf-b6) + calc(var(--sf-px) * 2))">
|
|
66
|
+
|
|
67
|
+
<col data-key="settings" style="width: calc(var(--sf-text-height-1) + (var(--sf-ui-1--space-y-tightness-default) * 2) + var(--sf-b6))" data-sf-pin-edge>
|
|
68
|
+
|
|
69
|
+
<col data-key="title">
|
|
70
|
+
|
|
71
|
+
<col data-key="actions" style="width: calc(3 * (var(--sf-text-height-1) + var(--sf-ui-1--space-y-tightness-default) * 2) + 2 * var(--sf-space-1\/3) + var(--sf-b6))">
|
|
72
|
+
|
|
73
|
+
</colgroup>
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
<thead class="sticky top-0 z-5">
|
|
77
|
+
<tr>
|
|
78
|
+
|
|
79
|
+
<th class="relative" data-key="select" data-label="select" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-select, 0px); z-index: 2;">
|
|
80
|
+
<sf-checkbox position="end" root-class="content-main-between" size="1" aria-label="Выбрать все строки" style="display: contents;">
|
|
81
|
+
<label class="sf-checkbox sf-checkbox--size-1 flex content-main-between cursor-pointer" data-sf-static>
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
<span class="sf-checkbox-box transition flex">
|
|
86
|
+
<input type="checkbox" value="on" aria-label="Выбрать все строки">
|
|
87
|
+
<sf-icon aria-hidden="true" icon style="display: contents;"><i class="sf-icon sf-icon--weight-regular" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static></i></sf-icon>
|
|
88
|
+
</span>
|
|
89
|
+
</label>
|
|
90
|
+
</sf-checkbox>
|
|
91
|
+
</th>
|
|
92
|
+
<th class="relative" data-key="settings" data-label="settings" data-sf-pinned style="position: sticky; inset-inline-start: var(--sf-table-pin-settings, 0px); z-index: 2;" data-sf-pin-edge>
|
|
93
|
+
<sf-button-icon size="1" appearance="link" scheme="on-surface" icon="settings" aria-label="Настройки" value="settings" style="display: contents;">
|
|
94
|
+
<button type="button" class="sf-icon-button sf-icon-button--size-1 sf-icon-button--icon sf-icon-button--link flex items-cross-center sf-icon-button--on-surface" aria-label="Настройки" value="settings" data-sf-static>
|
|
95
|
+
|
|
96
|
+
<sf-icon root-class="pointer-event-none" weight="400" aria-hidden="true" filled="false" icon="settings" style="display: contents;"><i class="sf-icon sf-icon--weight-regular pointer-event-none" style="--sf-icon--grade:0;--sf-icon--optical-size:24" aria-hidden="true" data-sf-static>settings</i></sf-icon>
|
|
97
|
+
</button>
|
|
98
|
+
</sf-button-icon>
|
|
99
|
+
</th>
|
|
100
|
+
<th class="relative" data-key="title" data-label="Название">
|
|
101
|
+
<div class="sidebar-resizer flex items-cross-center h-full select-none">
|
|
102
|
+
Название
|
|
103
|
+
|
|
104
|
+
<button type="button" role="separator" aria-orientation="vertical" class="sf-table-column-resizer" aria-keyshortcuts="ArrowLeft ArrowRight Home End Enter" id="sf-view-table-empty-2" data-sf-column-resizer="title" aria-label="Изменить ширину столбца: Название"></button>
|
|
105
|
+
</div>
|
|
106
|
+
</th>
|
|
107
|
+
<th class="relative" data-key="actions" data-label="Действия">
|
|
108
|
+
<span class="sf-table-visually-hidden">Действия</span>
|
|
109
|
+
</th>
|
|
110
|
+
</tr>
|
|
111
|
+
</thead>
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
<tbody data-state="empty">
|
|
115
|
+
<tr>
|
|
116
|
+
<td colspan="4">
|
|
117
|
+
<div class="sf-table-state"><sf-empty-state kind="no-data" size="1" heading-level="3" style="display: contents;"><script type="application/json" data-sf-settings>{"actions":[{"id":"create","text":"Создать"}]}</script>
|
|
118
|
+
<div class="sf-empty-state sf-empty-state--size-1 sf-empty-state--no-data" data-sf-static>
|
|
119
|
+
<span aria-hidden="true" class="sf-featured-icon sf-featured-icon--size-2 sf-featured-icon--neutral sf-featured-icon--soft sf-empty-state-icon"><i class="sf-icon">inbox</i></span>
|
|
120
|
+
<h3 class="sf-empty-state-title">Записей пока нет</h3>
|
|
121
|
+
<p class="sf-empty-state-text">Они появятся здесь, когда их добавят</p>
|
|
122
|
+
<div class="sf-empty-state-actions">
|
|
123
|
+
|
|
124
|
+
<sf-button size="1" appearance="default" scheme="primary" text="Создать" style="display: contents;">
|
|
125
|
+
<button type="button" class="sf-button sf-button--size-1 sf-button--default sf-button--primary flex items-cross-center" data-action="create" data-sf-static>
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
<span class="sf-button-text-container text-center pointer-event-none flex-1">
|
|
129
|
+
Создать
|
|
130
|
+
</span>
|
|
131
|
+
|
|
132
|
+
</button>
|
|
133
|
+
</sf-button>
|
|
134
|
+
</div>
|
|
135
|
+
</div>
|
|
136
|
+
</sf-empty-state></div>
|
|
137
|
+
</td>
|
|
138
|
+
</tr>
|
|
139
|
+
</tbody>
|
|
140
|
+
|
|
141
|
+
</table>
|
|
142
|
+
</div>
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
</div>
|
|
146
|
+
</section>
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
</sf-view-table>
|
|
Binary file
|