@opengis/fastify-table 1.1.51 → 1.1.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. package/.eslintrc.cjs +42 -42
  2. package/.gitlab-ci.yml +18 -18
  3. package/Changelog.md +352 -352
  4. package/README.md +26 -26
  5. package/config.js +10 -10
  6. package/cron/controllers/cronApi.js +22 -22
  7. package/cron/controllers/utils/cronList.js +1 -1
  8. package/cron/funcs/addCron.js +132 -132
  9. package/cron/index.js +12 -10
  10. package/cron/schema.js +8 -0
  11. package/crud/controllers/deleteCrud.js +36 -36
  12. package/crud/controllers/insert.js +71 -71
  13. package/crud/controllers/update.js +76 -76
  14. package/crud/controllers/utils/xssInjection.js +72 -72
  15. package/crud/funcs/dataDelete.js +19 -19
  16. package/crud/funcs/dataInsert.js +30 -30
  17. package/crud/funcs/dataUpdate.js +48 -48
  18. package/crud/funcs/getAccess.js +46 -46
  19. package/crud/funcs/getOpt.js +10 -10
  20. package/crud/funcs/getToken.js +27 -27
  21. package/crud/funcs/isFileExists.js +13 -13
  22. package/crud/funcs/setOpt.js +16 -16
  23. package/crud/funcs/setToken.js +53 -53
  24. package/crud/funcs/utils/getFolder.js +9 -9
  25. package/crud/funcs/utils/logChanges.js +62 -62
  26. package/crud/index.js +31 -36
  27. package/crud/schema.js +11 -0
  28. package/docs/.vitepress/abbr.mjs +26 -26
  29. package/docs/.vitepress/config.mjs +127 -127
  30. package/docs/.vitepress/navigation.mjs +82 -82
  31. package/docs/.vitepress/theme/Layout.vue +17 -17
  32. package/docs/.vitepress/theme/components/NavigationLinks.vue +102 -102
  33. package/docs/.vitepress/theme/components/Panzoom.vue +169 -169
  34. package/docs/.vitepress/theme/index.mjs +15 -15
  35. package/docs/.vitepress/theme/style.scss +163 -163
  36. package/docs/abbr.json +4 -4
  37. package/docs/api/cron/cronApi.md +56 -56
  38. package/docs/api/crud/deleteCrud.md +58 -58
  39. package/docs/api/crud/insert.md +82 -82
  40. package/docs/api/crud/update.md +85 -85
  41. package/docs/api/index.md +47 -47
  42. package/docs/api/notification/testEmail.md +91 -91
  43. package/docs/api/table/card.md +73 -73
  44. package/docs/api/table/data.md +134 -134
  45. package/docs/api/table/export.md +60 -60
  46. package/docs/api/table/filter.md +104 -104
  47. package/docs/api/table/form.md +126 -126
  48. package/docs/api/table/search.md +123 -123
  49. package/docs/api/table/suggest.md +156 -156
  50. package/docs/api/table/table.md +107 -107
  51. package/docs/api/user/user.cls.id.md +77 -77
  52. package/docs/api/user/user.cls.md +49 -49
  53. package/docs/api/user/user.cls.post.md +62 -62
  54. package/docs/api/user/user.info.md +37 -37
  55. package/docs/api/utils/logger.file.md +60 -60
  56. package/docs/api/utils/next.id.md +34 -34
  57. package/docs/api/utils/properties.add.md +127 -127
  58. package/docs/api/utils/properties.get.md +73 -73
  59. package/docs/api/utils/status.monitor.md +36 -36
  60. package/docs/api/widget/widget.del.md +76 -76
  61. package/docs/api/widget/widget.get.md +233 -233
  62. package/docs/api/widget/widget.set.md +88 -88
  63. package/docs/db/admin.md +947 -947
  64. package/docs/db/crm.md +564 -564
  65. package/docs/db/index.md +9 -9
  66. package/docs/db/log.md +204 -204
  67. package/docs/hook/card/afterCard.md +20 -20
  68. package/docs/hook/card/preCard.md +25 -25
  69. package/docs/hook/data/afterData.md +26 -26
  70. package/docs/hook/data/preData.md +26 -26
  71. package/docs/hook/deleteCrud/afterDelete.md +21 -21
  72. package/docs/hook/deleteCrud/preDelete.md +26 -26
  73. package/docs/hook/form/afterForm.md +19 -19
  74. package/docs/hook/form/preForm.md +26 -26
  75. package/docs/hook/getTemplate/afterTemplate.md +24 -24
  76. package/docs/hook/getTemplate/preTemplate.md +29 -29
  77. package/docs/hook/index.md +45 -45
  78. package/docs/hook/insert/afterInsert.md +41 -41
  79. package/docs/hook/insert/preInsert.md +25 -25
  80. package/docs/hook/table/afterTable.md +20 -20
  81. package/docs/hook/table/preTable.md +25 -25
  82. package/docs/hook/update/afterUpdate.md +41 -41
  83. package/docs/hook/update/preUpdate.md +25 -25
  84. package/docs/index.md +42 -42
  85. package/docs/public/fastify-dark.svg +3 -3
  86. package/docs/public/logo-short-dark.svg +11 -11
  87. package/docs/public/logo-short.svg +10 -10
  88. package/docs/public/logo.svg +19 -19
  89. package/docs/readme/index.md +121 -121
  90. package/docs/templates/card.md +83 -83
  91. package/docs/templates/cls.md +29 -29
  92. package/docs/templates/filters.md +91 -91
  93. package/docs/templates/forms.md +139 -139
  94. package/docs/templates/index.md +28 -28
  95. package/docs/templates/select.md +90 -90
  96. package/docs/templates/table.md +162 -162
  97. package/docs/utils/cron/addCron.md +29 -29
  98. package/docs/utils/crud/dataInsert.md +51 -51
  99. package/docs/utils/crud/dataUpdate.md +52 -52
  100. package/docs/utils/crud/getOpt.md +33 -33
  101. package/docs/utils/crud/isFileExists.md +37 -37
  102. package/docs/utils/crud/setOpt.md +37 -37
  103. package/docs/utils/hook/addHook.md +74 -74
  104. package/docs/utils/hook/applyHook.md +64 -64
  105. package/docs/utils/index.md +47 -47
  106. package/docs/utils/notification/addNotification.md +28 -28
  107. package/docs/utils/notification/notification.md +41 -41
  108. package/docs/utils/pg/autoIndex.md +22 -22
  109. package/docs/utils/pg/getMeta.md +58 -58
  110. package/docs/utils/pg/getPG.md +34 -34
  111. package/docs/utils/pg/init.md +29 -29
  112. package/docs/utils/pg/pg.md +70 -70
  113. package/docs/utils/redis/getRedis.md +36 -36
  114. package/docs/utils/redis/rclient.md +74 -74
  115. package/docs/utils/table/getForm.md +68 -68
  116. package/docs/utils/table/getMeta.md +55 -55
  117. package/docs/utils/table/getSelect.md +38 -38
  118. package/docs/utils/table/getSelectMeta.md +46 -46
  119. package/docs/utils/table/getTable.md +77 -77
  120. package/helper.js +30 -30
  121. package/index.js +105 -105
  122. package/migration/exec.migrations.js +79 -79
  123. package/module/core/select/core.user_mentioned.sql +1 -1
  124. package/module/test/cls/itree.composition.json +25 -25
  125. package/module/test/table/test.rest_zone.table.json +265 -265
  126. package/notification/controllers/readNotifications.js +27 -30
  127. package/notification/controllers/testEmail.js +46 -50
  128. package/notification/controllers/userNotifications.js +61 -64
  129. package/notification/funcs/addNotification.js +21 -21
  130. package/notification/funcs/sendNotification.js +112 -112
  131. package/notification/index.js +3 -8
  132. package/notification/schema.js +10 -0
  133. package/package.json +41 -41
  134. package/pg/funcs/getMeta.js +29 -29
  135. package/pg/funcs/getPG.js +30 -30
  136. package/pg/pgClients.js +20 -20
  137. package/policy/funcs/checkPolicy.js +92 -92
  138. package/policy/funcs/sqlInjection.js +33 -33
  139. package/policy/index.js +14 -14
  140. package/redis/client.js +8 -8
  141. package/redis/funcs/getRedis.js +23 -23
  142. package/redis/funcs/redisClients.js +2 -2
  143. package/redis/index.js +19 -19
  144. package/server/migrations/0.sql +78 -78
  145. package/server/migrations/cls.sql +39 -39
  146. package/server/migrations/log.sql +80 -80
  147. package/server/migrations/properties.sql +144 -144
  148. package/server/migrations/roles.sql +172 -172
  149. package/server/migrations/users.sql +168 -168
  150. package/server.js +26 -26
  151. package/table/controllers/data.js +157 -150
  152. package/table/controllers/filter.js +61 -50
  153. package/table/controllers/form.js +42 -42
  154. package/table/controllers/search.js +76 -80
  155. package/table/controllers/suggest.js +79 -79
  156. package/table/controllers/table.js +83 -83
  157. package/table/controllers/utils/addTemplateDir.js +8 -8
  158. package/table/controllers/utils/getSelect.js +19 -19
  159. package/table/controllers/utils/getSelectMeta.js +66 -66
  160. package/table/controllers/utils/getTemplate_old.js +28 -28
  161. package/table/controllers/utils/getTemplates.js +18 -18
  162. package/table/controllers/utils/gisIRColumn.js +72 -67
  163. package/table/controllers/utils/loadTemplate.js +1 -1
  164. package/table/controllers/utils/loadTemplatePath.js +1 -1
  165. package/table/controllers/utils/userTemplateDir.js +1 -1
  166. package/table/funcs/getFilterSQL/index.js +94 -94
  167. package/table/funcs/getFilterSQL/util/formatValue.js +170 -170
  168. package/table/funcs/getFilterSQL/util/getCustomQuery.js +13 -13
  169. package/table/funcs/getFilterSQL/util/getFilterQuery.js +66 -66
  170. package/table/funcs/getFilterSQL/util/getOptimizedQuery.js +12 -12
  171. package/table/funcs/getFilterSQL/util/getTableSql.js +34 -34
  172. package/table/funcs/metaFormat/getSelectVal.js +21 -21
  173. package/table/funcs/metaFormat/index.js +28 -28
  174. package/table/index.js +37 -37
  175. package/table/schema.js +64 -54
  176. package/test/api/applyHook.test.js +95 -95
  177. package/test/api/crud.test.js +89 -89
  178. package/test/api/crud.xss.test.js +80 -80
  179. package/test/api/suggest.test.js +66 -66
  180. package/test/api/table.test.js +134 -134
  181. package/test/api/user.test.js +85 -85
  182. package/test/api/widget.test.js +117 -117
  183. package/test/config.example +18 -18
  184. package/test/funcs/pg.test.js +34 -34
  185. package/test/funcs/redis.test.js +19 -19
  186. package/test/helper/formatDate.test.js +62 -62
  187. package/test/templates/cls/test.json +9 -9
  188. package/test/templates/form/cp_building.form.json +32 -32
  189. package/test/templates/select/account_id.json +3 -3
  190. package/test/templates/select/storage.data.json +2 -2
  191. package/test/templates/select/test.storage.data.json +3 -3
  192. package/test/templates/select/test.suggest.ato_new.json +3 -3
  193. package/test/templates/select/test.suggest.ato_new.sql +25 -25
  194. package/test/templates/select/test.suggest.data.json +4 -4
  195. package/test/templates/select/test.suggest.parent.sql +1 -1
  196. package/test/templates/table/gis.dataset.table.json +20 -20
  197. package/user/controllers/user.cls.id.js +14 -14
  198. package/user/controllers/user.cls.js +71 -75
  199. package/user/controllers/user.cls.post.js +52 -55
  200. package/user/controllers/user.info.js +17 -21
  201. package/user/index.js +7 -36
  202. package/user/schema.js +17 -0
  203. package/util/controllers/logger.file.js +91 -91
  204. package/util/controllers/next.id.js +4 -4
  205. package/util/controllers/properties.add.js +56 -60
  206. package/util/controllers/properties.get.js +16 -19
  207. package/util/controllers/status.monitor.js +8 -8
  208. package/util/controllers/utils/checkUserAccess.js +20 -17
  209. package/util/controllers/utils/getRootDir.js +25 -25
  210. package/util/index.js +19 -23
  211. package/util/schema.js +19 -0
  212. package/utils.js +106 -104
  213. package/widget/controllers/utils/historyFormat.js +76 -76
  214. package/widget/controllers/utils/obj2db.js +13 -13
  215. package/widget/controllers/widget.del.js +41 -44
  216. package/widget/controllers/widget.get.js +96 -102
  217. package/widget/controllers/widget.set.js +74 -79
  218. package/widget/index.js +40 -40
@@ -1,83 +1,83 @@
1
- ---
2
- title: Card
3
- ---
4
-
5
- # Картка таблиці
6
-
7
- Карточка через налаштування
8
-
9
- ## Структура
10
-
11
- ```bash
12
- templates/card
13
- ├── index.yml # налаштування картки
14
- ├── tab1.md
15
- ├── my-tab2.hbs
16
- ├── favorite.hbs
17
- ```
18
-
19
- ## Index.yml
20
-
21
- ```yml
22
- component: default
23
- panels:
24
- - type: container
25
- col: 3
26
- items:
27
- - component: vs-widget-position
28
- title: Місце знаходження
29
- - type: tab # tabs
30
- items:
31
- - passport # hbs or component name
32
- - examination
33
- - events
34
- - component: vs-widget-gallery # component name
35
- title: Галерея
36
- col: 9
37
- ```
38
-
39
- ```yml
40
- component: default
41
- panels:
42
- - col: 3 # type container default
43
- items:
44
- - general_info
45
- - type: container # one by one
46
- col: 9
47
- items:
48
- - vs-widget-map # name: vs-widget-map
49
- - component: vs-widget-gallery
50
- ```
51
-
52
- ## HBS
53
-
54
- tab1.hbs, my-tab2.hbs
55
-
56
- - [Helpers](../plugin/hb.md)
57
- - [Plugins](https://apidocs.softpro.ua/v3-core/core/overlays/loading.html) - окрема папка
58
-
59
- ## API
60
-
61
- /api/table-data/id
62
-
63
- Повертає структуру index.yml
64
-
65
- ```js
66
- {
67
- component: default, // назва
68
- panels: [ // структура
69
- {name: 'card1', col: 3},
70
- {type: 'tabs', col: 9, items: ['tab1', 'tab2', {component: 'vs-comments'} ]},
71
- ],
72
- data: {
73
- tab1: "html",
74
- tab2: "html",
75
- card1: "html"
76
- }
77
- }
78
- ```
79
-
80
- ## Design
81
-
82
- - <https://preline.co/pro/ecommerce/product-details.html>
83
- - <https://preline.co/pro/dashboard/account-profile.html>
1
+ ---
2
+ title: Card
3
+ ---
4
+
5
+ # Картка таблиці
6
+
7
+ Карточка через налаштування
8
+
9
+ ## Структура
10
+
11
+ ```bash
12
+ templates/card
13
+ ├── index.yml # налаштування картки
14
+ ├── tab1.md
15
+ ├── my-tab2.hbs
16
+ ├── favorite.hbs
17
+ ```
18
+
19
+ ## Index.yml
20
+
21
+ ```yml
22
+ component: default
23
+ panels:
24
+ - type: container
25
+ col: 3
26
+ items:
27
+ - component: vs-widget-position
28
+ title: Місце знаходження
29
+ - type: tab # tabs
30
+ items:
31
+ - passport # hbs or component name
32
+ - examination
33
+ - events
34
+ - component: vs-widget-gallery # component name
35
+ title: Галерея
36
+ col: 9
37
+ ```
38
+
39
+ ```yml
40
+ component: default
41
+ panels:
42
+ - col: 3 # type container default
43
+ items:
44
+ - general_info
45
+ - type: container # one by one
46
+ col: 9
47
+ items:
48
+ - vs-widget-map # name: vs-widget-map
49
+ - component: vs-widget-gallery
50
+ ```
51
+
52
+ ## HBS
53
+
54
+ tab1.hbs, my-tab2.hbs
55
+
56
+ - [Helpers](../plugin/hb.md)
57
+ - [Plugins](https://apidocs.softpro.ua/v3-core/core/overlays/loading.html) - окрема папка
58
+
59
+ ## API
60
+
61
+ /api/table-data/id
62
+
63
+ Повертає структуру index.yml
64
+
65
+ ```js
66
+ {
67
+ component: default, // назва
68
+ panels: [ // структура
69
+ {name: 'card1', col: 3},
70
+ {type: 'tabs', col: 9, items: ['tab1', 'tab2', {component: 'vs-comments'} ]},
71
+ ],
72
+ data: {
73
+ tab1: "html",
74
+ tab2: "html",
75
+ card1: "html"
76
+ }
77
+ }
78
+ ```
79
+
80
+ ## Design
81
+
82
+ - <https://preline.co/pro/ecommerce/product-details.html>
83
+ - <https://preline.co/pro/dashboard/account-profile.html>
@@ -1,29 +1,29 @@
1
- ---
2
- title: Класифікатори
3
- ---
4
-
5
- # Класифікатори
6
-
7
- Всі класифікатори та селекти зберігаються у відповідному GIT проєкті в папці `server/templates/cls`.
8
-
9
- Зберігаються значення у файлі формату .json, приклад
10
-
11
- ```json
12
- [
13
- {
14
- "id": "1",
15
- "text": "Комунальна",
16
- "color": "red"
17
- },
18
- {
19
- "id": "2",
20
- "text": "Державна",
21
- "data": "Державна"
22
- },
23
- {
24
- "id": "3",
25
- "text": "Приватна",
26
- "data": "Приватна"
27
- }
28
- ]
29
- ```
1
+ ---
2
+ title: Класифікатори
3
+ ---
4
+
5
+ # Класифікатори
6
+
7
+ Всі класифікатори та селекти зберігаються у відповідному GIT проєкті в папці `server/templates/cls`.
8
+
9
+ Зберігаються значення у файлі формату .json, приклад
10
+
11
+ ```json
12
+ [
13
+ {
14
+ "id": "1",
15
+ "text": "Комунальна",
16
+ "color": "red"
17
+ },
18
+ {
19
+ "id": "2",
20
+ "text": "Державна",
21
+ "data": "Державна"
22
+ },
23
+ {
24
+ "id": "3",
25
+ "text": "Приватна",
26
+ "data": "Приватна"
27
+ }
28
+ ]
29
+ ```
@@ -1,91 +1,91 @@
1
- ---
2
- title: Фільтри
3
- ---
4
-
5
- # Фільтри
6
-
7
- [Vue V3-Filter](https://apidocs.softpro.ua/v3-filter/)
8
-
9
- ## Налаштування
10
-
11
- Фільтри налаштовуються в табличці `server/templates/table`. [Структура таблиці](./table.md)
12
-
13
- Нижче наведено приклад налаштування фільтрів.
14
-
15
- ```json
16
- "filterList": [
17
- {
18
- "ua": "Область", // Назва фільтра яка буде відображатися
19
- "name": "region", // Назва колонки в БД по якій буде проводитися фільтрація
20
- "data": "region_id", // Назва Класіфікатора або Селектора(якщо потрібно)
21
- "format": "Autocomplete", // Формат фільтра
22
- "order": "count" // Порядок
23
- }
24
- ],
25
-
26
- "filterInline": [ // Фільтри таблиці
27
- {
28
- "ua": "Назва", // Підпис фільтру
29
- "name": "service_name", // Колонка таблиці
30
- "type": "Check" // Тип фільтру
31
- }
32
- ],
33
-
34
- "filterState": [ // Фільтри статусу
35
- {
36
- "sql": "status=1", // sql
37
- "name": "archive", // назва ключ або номер 1
38
- "ua": "Підпис", // підпис
39
- }
40
- ],
41
-
42
- "filterCustom": [ // Фільтри користувача
43
- {
44
- "sql": "status=1", // Підпис фільтру
45
- "name": "archive", // ключ або номер 1
46
- "ua": "Підпис", // підпис
47
- }
48
- ],
49
- ```
50
-
51
- ::: details Типи фільтрів
52
-
53
- В інтерфейсі використовуються такі типи фільтри:
54
-
55
- - `Text` - Просто ввід тексту.
56
- - `Autocomplete` - Вибір декількох варіантів. При 8 і більше варіантах стає доступним рядок пошуку за значеннями.
57
- - `Check` - Вибір значень без випадаючого списку. Зазвичай використовується для невеликої кількості значень (до 7).
58
- - `Date` - Вибір проміжку дат. Є зручна панель для вибору екстра дат.
59
- -`Radio` - Вибір зі списку лише одного значення. Зазвичай використовується для невеликої кількості значень (до 7).
60
- - `Range` - Використовується для вказання проміжку ціни або будь-якого іншого числового значення. Працює як для цілих, так і для десяткових чисел.
61
- - `Switcher` - Вибір значення між true/false. Відповідно, діє лише для колонок boolean
62
- - `Tags` - Вибір значення у форматі кнопок. Зручно для поля тегів. Підтримують іконки та кольори з класифікатора.
63
- - `Tree` - Деревоподібне відображення значень.
64
- :::
65
-
66
- ## Використання API
67
-
68
- Отримання [/api/filters/:table](../api/fastify-table/table/filter.md)
69
-
70
- ```bash
71
- /api/filters/:table
72
- ```
73
-
74
- Застосування [`/api/data/:table`](../api/fastify-table/table/data.md)
75
-
76
- ```bash
77
- /api/data/:table?search=text&filter=inline,filter&state=1&custom=1
78
- ```
79
-
80
- | Query Параметр | Опис |
81
- | ------------------------ | --------------- |
82
- | search | по замовчюванню |
83
- | filter | inline + filter |
84
- | state | tab таблички |
85
- | custom | випадалка |
86
-
87
- ## Preview
88
-
89
- <https://preline.co/pro/examples/tables-orders.html>
90
-
91
- ![alt text](image.png)
1
+ ---
2
+ title: Фільтри
3
+ ---
4
+
5
+ # Фільтри
6
+
7
+ [Vue V3-Filter](https://apidocs.softpro.ua/v3-filter/)
8
+
9
+ ## Налаштування
10
+
11
+ Фільтри налаштовуються в табличці `server/templates/table`. [Структура таблиці](./table.md)
12
+
13
+ Нижче наведено приклад налаштування фільтрів.
14
+
15
+ ```json
16
+ "filterList": [
17
+ {
18
+ "ua": "Область", // Назва фільтра яка буде відображатися
19
+ "name": "region", // Назва колонки в БД по якій буде проводитися фільтрація
20
+ "data": "region_id", // Назва Класіфікатора або Селектора(якщо потрібно)
21
+ "format": "Autocomplete", // Формат фільтра
22
+ "order": "count" // Порядок
23
+ }
24
+ ],
25
+
26
+ "filterInline": [ // Фільтри таблиці
27
+ {
28
+ "ua": "Назва", // Підпис фільтру
29
+ "name": "service_name", // Колонка таблиці
30
+ "type": "Check" // Тип фільтру
31
+ }
32
+ ],
33
+
34
+ "filterState": [ // Фільтри статусу
35
+ {
36
+ "sql": "status=1", // sql
37
+ "name": "archive", // назва ключ або номер 1
38
+ "ua": "Підпис", // підпис
39
+ }
40
+ ],
41
+
42
+ "filterCustom": [ // Фільтри користувача
43
+ {
44
+ "sql": "status=1", // Підпис фільтру
45
+ "name": "archive", // ключ або номер 1
46
+ "ua": "Підпис", // підпис
47
+ }
48
+ ],
49
+ ```
50
+
51
+ ::: details Типи фільтрів
52
+
53
+ В інтерфейсі використовуються такі типи фільтри:
54
+
55
+ - `Text` - Просто ввід тексту.
56
+ - `Autocomplete` - Вибір декількох варіантів. При 8 і більше варіантах стає доступним рядок пошуку за значеннями.
57
+ - `Check` - Вибір значень без випадаючого списку. Зазвичай використовується для невеликої кількості значень (до 7).
58
+ - `Date` - Вибір проміжку дат. Є зручна панель для вибору екстра дат.
59
+ -`Radio` - Вибір зі списку лише одного значення. Зазвичай використовується для невеликої кількості значень (до 7).
60
+ - `Range` - Використовується для вказання проміжку ціни або будь-якого іншого числового значення. Працює як для цілих, так і для десяткових чисел.
61
+ - `Switcher` - Вибір значення між true/false. Відповідно, діє лише для колонок boolean
62
+ - `Tags` - Вибір значення у форматі кнопок. Зручно для поля тегів. Підтримують іконки та кольори з класифікатора.
63
+ - `Tree` - Деревоподібне відображення значень.
64
+ :::
65
+
66
+ ## Використання API
67
+
68
+ Отримання [/api/filters/:table](../api/fastify-table/table/filter.md)
69
+
70
+ ```bash
71
+ /api/filters/:table
72
+ ```
73
+
74
+ Застосування [`/api/data/:table`](../api/fastify-table/table/data.md)
75
+
76
+ ```bash
77
+ /api/data/:table?search=text&filter=inline,filter&state=1&custom=1
78
+ ```
79
+
80
+ | Query Параметр | Опис |
81
+ | ------------------------ | --------------- |
82
+ | search | по замовчюванню |
83
+ | filter | inline + filter |
84
+ | state | tab таблички |
85
+ | custom | випадалка |
86
+
87
+ ## Preview
88
+
89
+ <https://preline.co/pro/examples/tables-orders.html>
90
+
91
+ ![alt text](image.png)