@opengis/admin 0.1.28 → 0.1.30

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 (104) hide show
  1. package/README.md +29 -29
  2. package/config.js +4 -4
  3. package/dist/{IconSearch-B9h4uJrQ.js → IconSearch-D9I5Aq9M.js} +1 -1
  4. package/dist/{add-page-DT_V_-dX.js → add-page-DlCRMnx_.js} +1 -1
  5. package/dist/{admin-interface-CGDa_i8E.js → admin-interface-96V27WHl.js} +2 -2
  6. package/dist/{admin-view-D_gnk37B.js → admin-view-D-4XxCw7.js} +3 -3
  7. package/dist/admin.js +1 -1
  8. package/dist/admin.umd.cjs +48 -48
  9. package/dist/{card-page-B-KPpKLO.js → card-page-DQlo1_B4.js} +2 -2
  10. package/dist/{card-view-ChQ86dRT.js → card-view-oRDd-qea.js} +1 -1
  11. package/dist/{edit-page-ChpgKkhK.js → edit-page-q-vG6Aun.js} +1 -1
  12. package/dist/{import-file-rpq4v06F.js → import-file-BsZhLoDU.js} +4198 -4134
  13. package/dist/style.css +1 -1
  14. package/module/settings/card/admin.roles.table/access.hbs +27 -27
  15. package/module/settings/card/admin.roles.table/general_info.hbs +16 -16
  16. package/module/settings/card/admin.roles.table/index.yml +14 -14
  17. package/module/settings/card/admin.roles.table/users.hbs +27 -27
  18. package/module/settings/card/admin.routes.table/general_info.hbs +40 -40
  19. package/module/settings/card/admin.routes.table/index.yml +8 -8
  20. package/module/settings/card/admin.routes.table/users.hbs +33 -33
  21. package/module/settings/card/admin.users.table/general_info.hbs +25 -25
  22. package/module/settings/card/admin.users.table/index.yml +12 -12
  23. package/module/settings/card/admin.users.table/logs.hbs +30 -30
  24. package/module/settings/card/admin.users.table/user_roles.hbs +24 -24
  25. package/module/settings/cls/core.actions.json +13 -13
  26. package/module/settings/cls/core.scope.json +13 -13
  27. package/module/settings/cls/properties.site_status.json +13 -13
  28. package/module/settings/cls/properties.widget_status.json +13 -13
  29. package/module/settings/cls/users.user_type.json +13 -13
  30. package/module/settings/form/admin.access.form.json +36 -36
  31. package/module/settings/form/admin.properties.form.json +15 -15
  32. package/module/settings/form/admin.roles.form.json +19 -19
  33. package/module/settings/form/admin.routes.form.json +25 -25
  34. package/module/settings/form/admin.user_properties.entity.form.json +71 -0
  35. package/module/settings/form/admin.user_properties.form.json +15 -15
  36. package/module/settings/form/admin.user_roles.form.json +21 -21
  37. package/module/settings/form/admin.users.form.json +150 -150
  38. package/module/settings/form/user.user_roles.form.json +13 -13
  39. package/module/settings/interface/admin.properties.json +4 -4
  40. package/module/settings/interface/admin.roles.json +4 -4
  41. package/module/settings/interface/admin.routes.json +4 -4
  42. package/module/settings/interface/admin.users.json +4 -4
  43. package/module/settings/menu.json +45 -39
  44. package/module/settings/select/core.roles.json +2 -2
  45. package/module/settings/select/core.user_uid.sql +1 -1
  46. package/module/settings/table/admin.access.table.json +77 -77
  47. package/module/settings/table/admin.properties.table.json +33 -33
  48. package/module/settings/table/admin.roles.table.json +58 -58
  49. package/module/settings/table/admin.routes.table.json +55 -55
  50. package/module/settings/table/admin.user_properties.entity.table.json +76 -0
  51. package/module/settings/table/admin.user_properties.table.json +29 -28
  52. package/module/settings/table/admin.user_roles.table.json +66 -66
  53. package/module/settings/table/admin.users.table.json +119 -119
  54. package/package.json +67 -67
  55. package/plugin.js +102 -25
  56. package/server/helpers/controllers/badge.js +11 -11
  57. package/server/helpers/controllers/hb.js +2 -2
  58. package/server/helpers/controllers/map.js +2 -2
  59. package/server/helpers/controllers/mls.js +2 -2
  60. package/server/helpers/controllers/vue.js +2 -2
  61. package/server/helpers/index.mjs +13 -13
  62. package/server/plugins/docs.js +28 -28
  63. package/server/plugins/hook.js +166 -161
  64. package/server/plugins/vite.js +69 -69
  65. package/server/routes/data/controllers/cardData.js +56 -56
  66. package/server/routes/data/controllers/cardTabData.js +39 -39
  67. package/server/routes/data/controllers/funcs/getFilterSQL/index.js +85 -85
  68. package/server/routes/data/controllers/funcs/getFilterSQL/util/formatValue.js +142 -142
  69. package/server/routes/data/controllers/funcs/getFilterSQL/util/getCustomQuery.js +13 -13
  70. package/server/routes/data/controllers/funcs/getFilterSQL/util/getFilterQuery.js +67 -67
  71. package/server/routes/data/controllers/funcs/getFilterSQL/util/getOptimizedQuery.js +12 -12
  72. package/server/routes/data/controllers/funcs/getFilterSQL/util/getTableSql.js +34 -34
  73. package/server/routes/data/controllers/tableData.js +121 -121
  74. package/server/routes/data/controllers/tableDataId.js +27 -27
  75. package/server/routes/data/controllers/tableFilter.js +54 -54
  76. package/server/routes/data/controllers/utils/assignTokens.js +30 -30
  77. package/server/routes/data/controllers/utils/getColumns.js +21 -21
  78. package/server/routes/data/index.mjs +12 -12
  79. package/server/routes/menu/controllers/getMenu.js +33 -33
  80. package/server/routes/menu/index.mjs +5 -5
  81. package/server/routes/properties/controllers/admin.properties.get.js +29 -29
  82. package/server/routes/properties/controllers/user.properties.get.js +34 -34
  83. package/server/routes/properties/controllers/user.properties.post.js +30 -30
  84. package/server/routes/properties/funcs/getSettings.js +56 -56
  85. package/server/routes/properties/funcs/setSettings.js +44 -44
  86. package/server/routes/properties/funcs/utils/dataInsert.js +26 -26
  87. package/server/routes/properties/index.mjs +26 -26
  88. package/server/routes/root.mjs +3 -3
  89. package/server/routes/templates/controllers/getTemplate.js +14 -14
  90. package/server/routes/templates/index.mjs +14 -14
  91. package/server/templates/cls/itree.recrzone_category.json +73 -73
  92. package/server/templates/cls/test.json +9 -9
  93. package/server/templates/form/admin.user_cls.data.form.json +49 -49
  94. package/server/templates/form/admin.user_group_rel.form.json +21 -21
  95. package/server/templates/form/cp_building.form.json +32 -32
  96. package/server/templates/form/form-user-pass.json +10 -10
  97. package/server/templates/form/form-user_group.json +39 -39
  98. package/server/templates/form/form-users.json +156 -156
  99. package/server/templates/form/user_group_access.form.json +22 -22
  100. package/server/templates/select/account_id.json +2 -2
  101. package/server/templates/table/gis.dataset.table.json +43 -43
  102. package/server/templates/table/management.user_group.table.json +112 -112
  103. package/server/templates/table/management.users.table.json +126 -126
  104. package/utils.js +8 -8
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .map-popup__vertical[data-v-3f5a9aff]{overflow:auto;max-height:300px}.map-popup__vertical[data-v-3f5a9aff]::-webkit-scrollbar{width:6px;height:6px;background-color:#f5f5f5}.map-popup__vertical[data-v-3f5a9aff]::-webkit-scrollbar-thumb{border-radius:5px;background-color:#dedede}.map-popup__vertical[data-v-3f5a9aff]::-webkit-scrollbar-track{background-color:#f5f5f5}.map__popup-body[data-v-3f5a9aff]{table-layout:fixed;width:100%}.map__popup-body-item[data-v-3f5a9aff]:not(:last-child){border-bottom:1px solid #eeeeee}.map__popup-body-item td[data-v-3f5a9aff]{width:50%;word-wrap:break-word;text-align:start}.map__popup-body-item td[data-v-3f5a9aff]:first-child{font-weight:600}.popup-image[data-v-deb51e0a]{max-width:100%;max-height:220px;margin-bottom:10px;object-fit:contain}.maplibregl-ctrl-bottom-right,.maplibregl-popup-close-button{display:none}:root{--f-spinner-width: 36px;--f-spinner-height: 36px;--f-spinner-color-1: rgba(0, 0, 0, .1);--f-spinner-color-2: rgba(17, 24, 28, .8);--f-spinner-stroke: 2.75}.f-spinner{margin:auto;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height)}.f-spinner svg{width:100%;height:100%;vertical-align:top;animation:f-spinner-rotate 2s linear infinite}.f-spinner svg *{stroke-width:var(--f-spinner-stroke);fill:none}.f-spinner svg *:first-child{stroke:var(--f-spinner-color-1)}.f-spinner svg *:last-child{stroke:var(--f-spinner-color-2);animation:f-spinner-dash 2s ease-in-out infinite}@keyframes f-spinner-rotate{to{transform:rotate(360deg)}}@keyframes f-spinner-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.f-throwOutUp{animation:var(--f-throw-out-duration, .175s) ease-out both f-throwOutUp}.f-throwOutDown{animation:var(--f-throw-out-duration, .175s) ease-out both f-throwOutDown}@keyframes f-throwOutUp{to{transform:translate3d(0,calc(var(--f-throw-out-distance, 150px) * -1),0);opacity:0}}@keyframes f-throwOutDown{to{transform:translate3d(0,var(--f-throw-out-distance, 150px),0);opacity:0}}.f-zoomInUp{animation:var(--f-transition-duration, .2s) ease .1s both f-zoomInUp}.f-zoomOutDown{animation:var(--f-transition-duration, .2s) ease both f-zoomOutDown}@keyframes f-zoomInUp{0%{transform:scale(.975) translate3d(0,16px,0);opacity:0}to{transform:scale(1) translateZ(0);opacity:1}}@keyframes f-zoomOutDown{to{transform:scale(.975) translate3d(0,16px,0);opacity:0}}.f-fadeIn{animation:var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;z-index:2}.f-fadeOut{animation:var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;z-index:1}@keyframes f-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes f-fadeOut{to{opacity:0}}.f-fadeFastIn{animation:var(--f-transition-duration, .2s) ease-out both f-fadeFastIn;z-index:2}.f-fadeFastOut{animation:var(--f-transition-duration, .1s) ease-out both f-fadeFastOut;z-index:2}@keyframes f-fadeFastIn{0%{opacity:.75}to{opacity:1}}@keyframes f-fadeFastOut{to{opacity:0}}.f-fadeSlowIn{animation:var(--f-transition-duration, .5s) ease both f-fadeSlowIn;z-index:2}.f-fadeSlowOut{animation:var(--f-transition-duration, .5s) ease both f-fadeSlowOut;z-index:1}@keyframes f-fadeSlowIn{0%{opacity:0}to{opacity:1}}@keyframes f-fadeSlowOut{to{opacity:0}}.f-crossfadeIn{animation:var(--f-transition-duration, .2s) ease-out both f-crossfadeIn;z-index:2}.f-crossfadeOut{animation:calc(var(--f-transition-duration, .2s)*.5) linear .1s both f-crossfadeOut;z-index:1}@keyframes f-crossfadeIn{0%{opacity:0}to{opacity:1}}@keyframes f-crossfadeOut{to{opacity:0}}.f-slideIn.from-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInNext}.f-slideIn.from-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideInPrev}.f-slideOut.to-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutNext}.f-slideOut.to-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-slideOutPrev}@keyframes f-slideInPrev{0%{transform:translate(100%)}to{transform:translateZ(0)}}@keyframes f-slideInNext{0%{transform:translate(-100%)}to{transform:translateZ(0)}}@keyframes f-slideOutNext{to{transform:translate(-100%)}}@keyframes f-slideOutPrev{to{transform:translate(100%)}}.f-classicIn.from-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-classicInNext;z-index:2}.f-classicIn.from-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-classicInPrev;z-index:2}.f-classicOut.to-next{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-classicOutNext;z-index:1}.f-classicOut.to-prev{animation:var(--f-transition-duration, .85s) cubic-bezier(.16,1,.3,1) f-classicOutPrev;z-index:1}@keyframes f-classicInNext{0%{transform:translate(-75px);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes f-classicInPrev{0%{transform:translate(75px);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes f-classicOutNext{to{transform:translate(-75px);opacity:0}}@keyframes f-classicOutPrev{to{transform:translate(75px);opacity:0}}:root{--f-button-width: 40px;--f-button-height: 40px;--f-button-border: 0;--f-button-border-radius: 0;--f-button-color: #374151;--f-button-bg: #f8f8f8;--f-button-hover-bg: #e0e0e0;--f-button-active-bg: #d0d0d0;--f-button-shadow: none;--f-button-transition: all .15s ease;--f-button-transform: none;--f-button-svg-width: 20px;--f-button-svg-height: 20px;--f-button-svg-stroke-width: 1.5;--f-button-svg-fill: none;--f-button-svg-filter: none;--f-button-svg-disabled-opacity: .65}.f-button{display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);pointer-events:all;cursor:pointer;transition:var(--f-button-transition)}@media (hover: hover){.f-button:hover:not([disabled]){color:var(--f-button-hover-color);background-color:var(--f-button-hover-bg)}}.f-button:active:not([disabled]){background-color:var(--f-button-active-bg)}.f-button:focus:not(:focus-visible){outline:none}.f-button:focus-visible{outline:none;box-shadow:inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color))}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);fill:var(--f-button-svg-fill);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;transition:opacity .15s ease;transform:var(--f-button-transform);filter:var(--f-button-svg-filter);pointer-events:none}.f-button[disabled]{cursor:default}.f-button[disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}.f-carousel__nav .f-button.is-prev,.f-carousel__nav .f-button.is-next,.fancybox__nav .f-button.is-prev,.fancybox__nav .f-button.is-next{position:absolute;z-index:1}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-next{top:50%;transform:translateY(-50%)}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-prev{left:var(--f-button-prev-pos)}.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-next{right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,.is-horizontal.is-rtl .fancybox__nav .f-button.is-prev{left:auto;right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,.is-horizontal.is-rtl .fancybox__nav .f-button.is-next{right:auto;left:var(--f-button-prev-pos)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-next{top:auto;left:50%;transform:translate(-50%)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-prev{top:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-next{bottom:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-prev svg,.is-vertical .f-carousel__nav .f-button.is-next svg,.is-vertical .fancybox__nav .f-button.is-prev svg,.is-vertical .fancybox__nav .f-button.is-next svg{transform:rotate(90deg)}.f-carousel__nav .f-button:disabled,.fancybox__nav .f-button:disabled{pointer-events:none}html.with-fancybox{width:auto;overflow:visible;scroll-behavior:auto}html.with-fancybox body{touch-action:none}html.with-fancybox body.hide-scrollbar{width:auto;margin-right:calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));overflow:hidden!important;overscroll-behavior-y:none}.fancybox__container{--fancybox-color: #dbdbdb;--fancybox-hover-color: #fff;--fancybox-bg: rgba(24, 24, 27, .98);--fancybox-slide-gap: 10px;--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-color-1: rgba(255, 255, 255, .1);--f-spinner-color-2: #bbb;--f-spinner-stroke: 3.65;position:fixed;top:0;left:0;bottom:0;right:0;direction:ltr;display:flex;flex-direction:column;box-sizing:border-box;margin:0;padding:0;color:#f8f8f8;-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:visible;z-index:var(--fancybox-zIndex, 1050);outline:none;transform-origin:top left;-webkit-text-size-adjust:100%;-moz-text-size-adjust:none;-ms-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:contain}.fancybox__container *,.fancybox__container *:before,.fancybox__container *:after{box-sizing:inherit}.fancybox__container::backdrop{background-color:#0000}.fancybox__backdrop{position:fixed;top:0;left:0;bottom:0;right:0;z-index:-1;background:var(--fancybox-bg);opacity:var(--fancybox-opacity, 1);will-change:opacity}.fancybox__carousel{position:relative;box-sizing:border-box;flex:1;min-height:0;z-index:10;overflow-y:visible;overflow-x:clip}.fancybox__viewport{width:100%;height:100%}.fancybox__viewport.is-draggable{cursor:move;cursor:grab}.fancybox__viewport.is-dragging{cursor:move;cursor:grabbing}.fancybox__track{display:flex;margin:0 auto;height:100%}.fancybox__slide{flex:0 0 auto;position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;margin:0 var(--fancybox-slide-gap) 0 0;padding:4px;overflow:auto;overscroll-behavior:contain;transform:translateZ(0);backface-visibility:hidden}.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn{padding-top:40px}.fancybox__slide.has-iframe,.fancybox__slide.has-video,.fancybox__slide.has-html5video,.fancybox__slide.has-image{overflow:hidden}.fancybox__slide.has-image.is-animating,.fancybox__slide.has-image.is-selected{overflow:visible}.fancybox__slide:before,.fancybox__slide:after{content:"";flex:0 0 0;margin:auto}.fancybox__backdrop:empty,.fancybox__viewport:empty,.fancybox__track:empty,.fancybox__slide:empty{display:block}.fancybox__content{align-self:center;display:flex;flex-direction:column;position:relative;margin:0;padding:2rem;max-width:100%;color:var(--fancybox-content-color, #374151);background:var(--fancybox-content-bg, #fff);cursor:default;border-radius:0;z-index:20}.is-loading .fancybox__content{opacity:0}.is-draggable .fancybox__content{cursor:move;cursor:grab}.can-zoom_in .fancybox__content{cursor:zoom-in}.can-zoom_out .fancybox__content{cursor:zoom-out}.is-dragging .fancybox__content{cursor:move;cursor:grabbing}.fancybox__content [data-selectable],.fancybox__content [contenteditable]{cursor:auto}.fancybox__slide.has-image>.fancybox__content{padding:0;background:#0000;min-height:1px;background-repeat:no-repeat;background-size:contain;background-position:center center;transition:none;transform:translateZ(0);backface-visibility:hidden}.fancybox__slide.has-image>.fancybox__content>picture>img{width:100%;height:auto;max-height:100%}.is-animating .fancybox__content,.is-dragging .fancybox__content{will-change:transform,width,height}.fancybox-image{margin:auto;display:block;width:100%;height:100%;min-height:0;object-fit:contain;-webkit-user-select:none;user-select:none;filter:blur(0px)}.fancybox__caption{align-self:center;max-width:100%;flex-shrink:0;margin:0;padding:14px 0 4px;overflow-wrap:anywhere;line-height:1.375;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);cursor:auto;visibility:visible}.is-loading .fancybox__caption,.is-closing .fancybox__caption{opacity:0;visibility:hidden}.is-compact .fancybox__caption{padding-bottom:0}.f-button.is-close-btn{--f-button-svg-stroke-width: 2;position:absolute;top:0;right:8px;z-index:40}.fancybox__content>.f-button.is-close-btn{--f-button-width: 34px;--f-button-height: 34px;--f-button-border-radius: 4px;--f-button-color: var(--fancybox-color, #fff);--f-button-hover-color: var(--fancybox-color, #fff);--f-button-bg: transparent;--f-button-hover-bg: transparent;--f-button-active-bg: transparent;--f-button-svg-width: 22px;--f-button-svg-height: 22px;position:absolute;top:-38px;right:0;opacity:.75}.is-loading .fancybox__content>.f-button.is-close-btn{visibility:hidden}.is-zooming-out .fancybox__content>.f-button.is-close-btn{visibility:hidden}.fancybox__content>.f-button.is-close-btn:hover{opacity:1}.fancybox__footer{padding:0;margin:0;position:relative}.fancybox__footer .fancybox__caption{width:100%;padding:24px;opacity:var(--fancybox-opacity, 1);transition:all .25s ease}.is-compact .fancybox__footer{position:absolute;bottom:0;left:0;right:0;z-index:20;background:#18181b80}.is-compact .fancybox__footer .fancybox__caption{padding:12px}.is-compact .fancybox__content>.f-button.is-close-btn{--f-button-border-radius: 50%;--f-button-color: #fff;--f-button-hover-color: #fff;--f-button-outline-color: #000;--f-button-bg: rgba(0, 0, 0, .6);--f-button-active-bg: rgba(0, 0, 0, .6);--f-button-hover-bg: rgba(0, 0, 0, .6);--f-button-svg-width: 18px;--f-button-svg-height: 18px;--f-button-svg-filter: none;top:5px;right:5px}.fancybox__nav{--f-button-width: 50px;--f-button-height: 50px;--f-button-border: 0;--f-button-border-radius: 50%;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: transparent;--f-button-hover-bg: rgba(24, 24, 27, .3);--f-button-active-bg: rgba(24, 24, 27, .5);--f-button-shadow: none;--f-button-transition: all .15s ease;--f-button-transform: none;--f-button-svg-width: 26px;--f-button-svg-height: 26px;--f-button-svg-stroke-width: 2.5;--f-button-svg-fill: none;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, .5));--f-button-svg-disabled-opacity: .65;--f-button-next-pos: 1rem;--f-button-prev-pos: 1rem;opacity:var(--fancybox-opacity, 1)}.fancybox__nav .f-button:before{position:absolute;content:"";top:-30px;right:-20px;left:-20px;bottom:-30px;z-index:1}.is-idle .fancybox__nav{animation:.15s ease-out both f-fadeOut}.is-idle.is-compact .fancybox__footer{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__slide>.f-spinner{position:absolute;top:50%;left:50%;margin:var(--f-spinner-top, calc(var(--f-spinner-width) * -.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -.5));z-index:30;cursor:pointer}.fancybox-protected{position:absolute;top:0;left:0;right:0;bottom:0;z-index:40;-webkit-user-select:none;user-select:none}.fancybox-ghost{position:absolute;top:0;left:0;width:100%;height:100%;min-height:0;object-fit:contain;z-index:40;-webkit-user-select:none;user-select:none;pointer-events:none}.fancybox-focus-guard{outline:none;opacity:0;position:fixed;pointer-events:none}.fancybox__container:not([aria-hidden]){opacity:0}.fancybox__container.is-animated[aria-hidden=false]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=false] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-enter-duration, .25s) ease .1s backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop{animation:var(--f-backdrop-enter-duration, .35s) ease backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=true]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=true] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-exit-duration, .15s) ease forwards f-fadeOut}.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop{animation:var(--f-backdrop-exit-duration, .35s) ease forwards f-fadeOut}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{max-width:100%;flex-shrink:1;min-height:1px;overflow:visible}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content{width:calc(100% - 120px);height:90%}.fancybox__container.is-compact .has-iframe .fancybox__content,.fancybox__container.is-compact .has-map .fancybox__content,.fancybox__container.is-compact .has-pdf .fancybox__content{width:100%;height:100%}.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{width:960px;height:540px;max-width:100%;max-height:100%}.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{padding:0;background:#18181be6;color:#fff}.has-map .fancybox__content{background:#e5e3df}.fancybox__html5video,.fancybox__iframe{border:0;display:block;height:100%;width:100%;background:#0000}.fancybox-placeholder{border:0!important;clip:rect(1px,1px,1px,1px)!important;-webkit-clip-path:inset(50%)!important;clip-path:inset(50%)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;white-space:nowrap!important}.f-carousel__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-outline: 0;--f-thumb-outline-color: #5eb0ef;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1;--f-thumb-border-radius: 2px;--f-thumb-offset: 0px;--f-button-next-pos: 0;--f-button-prev-pos: 0}.f-carousel__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: .5;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1}.f-carousel__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 16px;--f-thumb-clip-width: 46px}.f-thumbs{position:relative;flex:0 0 auto;margin:0;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;user-select:none;perspective:1000px;transform:translateZ(0)}.f-thumbs .f-spinner{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:2px;background-image:linear-gradient(#ebeff2,#e2e8f0);z-index:-1}.f-thumbs .f-spinner svg{display:none}.f-thumbs.is-vertical{height:100%}.f-thumbs__viewport{width:100%;height:auto;overflow:hidden;transform:translateZ(0)}.f-thumbs__track{display:flex}.f-thumbs__slide{position:relative;flex:0 0 auto;box-sizing:content-box;display:flex;align-items:center;justify-content:center;padding:0;margin:0;width:var(--f-thumb-width);height:var(--f-thumb-height);overflow:visible;cursor:pointer}.f-thumbs__slide.is-loading img{opacity:0}.is-classic .f-thumbs__viewport{height:100%}.is-modern .f-thumbs__track{width:max-content}.is-modern .f-thumbs__track:before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--f-thumb-clip-width, 0))*-.5);width:calc(var(--width, 0)*1px + var(--f-thumb-clip-width, 0));cursor:pointer}.is-modern .f-thumbs__slide{width:var(--f-thumb-clip-width);transform:translate3d(calc(var(--shift, 0) * -1px),0,0);transition:none;pointer-events:none}.is-modern.is-resting .f-thumbs__slide{transition:transform .33s ease}.is-modern.is-resting .f-thumbs__slide__button{transition:clip-path .33s ease}.is-using-tab .is-modern .f-thumbs__slide:focus-within{filter:drop-shadow(-1px 0px 0px var(--f-thumb-outline-color)) drop-shadow(2px 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -1px 0px var(--f-thumb-outline-color)) drop-shadow(0px 2px 0px var(--f-thumb-outline-color))}.f-thumbs__slide__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--f-thumb-width);height:100%;margin:0 -100%;padding:0;border:0;position:relative;border-radius:var(--f-thumb-border-radius);overflow:hidden;background:#0000;outline:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;opacity:var(--f-thumb-opacity);transition:opacity .2s ease}.f-thumbs__slide__button:hover{opacity:var(--f-thumb-hover-opacity)}.f-thumbs__slide__button:focus:not(:focus-visible){outline:none}.f-thumbs__slide__button:focus-visible{outline:none;opacity:var(--f-thumb-selected-opacity)}.is-modern .f-thumbs__slide__button{--clip-path: inset( 0 calc( ((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * .5 ) round var(--f-thumb-border-radius, 0) );clip-path:var(--clip-path)}.is-classic .is-nav-selected .f-thumbs__slide__button{opacity:var(--f-thumb-selected-opacity)}.is-classic .is-nav-selected .f-thumbs__slide__button:after{content:"";position:absolute;top:0;left:0;right:0;height:auto;bottom:0;border:var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);border-radius:var(--f-thumb-border-radius);animation:f-fadeIn .2s ease-out;z-index:10}.f-thumbs__slide__img{overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:var(--f-thumb-offset);box-sizing:border-box;pointer-events:none;object-fit:cover;border-radius:var(--f-thumb-border-radius)}.f-thumbs.is-horizontal .f-thumbs__track{padding:8px 0 12px}.f-thumbs.is-horizontal .f-thumbs__slide{margin:0 var(--f-thumb-gap) 0 0}.f-thumbs.is-vertical .f-thumbs__track{flex-wrap:wrap;padding:0 8px}.f-thumbs.is-vertical .f-thumbs__slide{margin:0 0 var(--f-thumb-gap) 0}.fancybox__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-border-radius: 2px;--f-thumb-outline: 2px;--f-thumb-outline-color: #ededed;position:relative;opacity:var(--fancybox-opacity, 1);transition:max-height .35s cubic-bezier(.23,1,.32,1)}.fancybox__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: .5;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-classic .f-spinner{background-image:linear-gradient(#ffffff1a,#ffffff0d)}.fancybox__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 16px;--f-thumb-clip-width: 46px;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-modern .f-spinner{background-image:linear-gradient(#ffffff1a,#ffffff0d)}.fancybox__thumbs.is-horizontal{padding:0 var(--f-thumb-gap)}.fancybox__thumbs.is-vertical{padding:var(--f-thumb-gap) 0}.is-compact .fancybox__thumbs{--f-thumb-width: 64px;--f-thumb-clip-width: 32px;--f-thumb-height: 48px;--f-thumb-extra-gap: 10px}.fancybox__thumbs.is-masked{max-height:0px!important}.is-closing .fancybox__thumbs{transition:none!important}.fancybox__toolbar{--f-progress-color: var(--fancybox-color, rgba(255, 255, 255, .94));--f-button-width: 46px;--f-button-height: 46px;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: rgba(24, 24, 27, .65);--f-button-hover-bg: rgba(70, 70, 73, .65);--f-button-active-bg: rgba(90, 90, 93, .65);--f-button-border-radius: 0;--f-button-svg-width: 24px;--f-button-svg-height: 24px;--f-button-svg-stroke-width: 1.5;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, .15));--f-button-svg-fill: none;--f-button-svg-disabled-opacity: .65;display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI Adjusted,Segoe UI,Liberation Sans,sans-serif;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);text-shadow:var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, .5));pointer-events:none;z-index:20}.fancybox__toolbar :focus-visible{z-index:1}.fancybox__toolbar.is-absolute,.is-compact .fancybox__toolbar{position:absolute;top:0;left:0;right:0}.is-idle .fancybox__toolbar{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__toolbar__column{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start}.fancybox__toolbar__column.is-left,.fancybox__toolbar__column.is-right{flex-grow:1;flex-basis:0}.fancybox__toolbar__column.is-right{display:flex;justify-content:flex-end;flex-wrap:nowrap}.fancybox__infobar{padding:0 5px;line-height:var(--f-button-height);text-align:center;font-size:17px;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased;cursor:default;-webkit-user-select:none;user-select:none}.fancybox__infobar span{padding:0 5px}.fancybox__infobar:not(:first-child):not(:last-child){background:var(--f-button-bg)}[data-fancybox-toggle-slideshow]{position:relative}[data-fancybox-toggle-slideshow] .f-progress{height:100%;opacity:.3}[data-fancybox-toggle-slideshow] svg g:first-child{display:flex}[data-fancybox-toggle-slideshow] svg g:last-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:first-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:last-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child{display:flex}.f-progress{position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;background:var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));z-index:30;-webkit-user-select:none;user-select:none;pointer-events:none}.widget-file .vs-button{background-color:#2563eb;color:#fff;font-size:.875rem;line-height:1.25rem;font-weight:600}.ui-dialog__modal div.flex.justify-between.items-center.py-3.px-4.border-b{border-bottom-width:0px;--tw-text-opacity: 1;color:#1f2937;font-weight:500;font-size:1.125rem;line-height:1.75rem;padding-bottom:0rem}.ui-dialog__modal .ui-dialog__content .p-4{padding-top:0rem}.widget-images__item-desc span:first-child:after{content:"";width:2px;height:2px;border-radius:50%;display:flex;align-items:center;background:#676a6c;margin:0 5px}.disabled{cursor:not-allowed!important}.item__text-content,.item{transition:all .5s cubic-bezier(.4,0,.2,1)}.item:hover .item__text-content{opacity:.8}.vs-widget-images .vs-button{background-color:#2563eb;color:#fff;font-size:.875rem;line-height:1.25rem;font-weight:600}.border-top:not(:first-child){--tw-border-opacity: 1;border-color:#e5e7eb;border-top-width:1px}.widget-comment-form .vs-button{padding:.625rem 1rem;font-size:.75rem;line-height:1rem;font-weight:500}.widget-comment-form .vs-button:focus{border:transparent;--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254);--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}.grid[data-v-e7d9ada1]{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.admin-wrapper[data-v-3d7ecdff]{display:flex;height:100vh;align-items:start}.vs-popover__content>div{padding:.25rem}
1
+ .map-popup__vertical[data-v-14698eb6]{overflow:auto;max-height:300px}.map-popup__vertical[data-v-14698eb6]::-webkit-scrollbar{width:6px;height:6px;background-color:#f5f5f5}.map-popup__vertical[data-v-14698eb6]::-webkit-scrollbar-thumb{border-radius:5px;background-color:#dedede}.map-popup__vertical[data-v-14698eb6]::-webkit-scrollbar-track{background-color:#f5f5f5}.map__popup-body[data-v-14698eb6]{table-layout:fixed;width:100%}.map__popup-body-item[data-v-14698eb6]:not(:last-child){border-bottom:1px solid #eeeeee}.map__popup-body-item td[data-v-14698eb6]{width:50%;word-wrap:break-word;text-align:start}.map__popup-body-item td[data-v-14698eb6]:first-child{font-weight:600}.popup-image[data-v-180f4367]{max-width:100%;max-height:220px;margin-bottom:10px;object-fit:contain}.maplibregl-ctrl-bottom-right,.maplibregl-popup-close-button{display:none}.widget-file .vs-button{background-color:#2563eb;color:#fff;font-size:.875rem;line-height:1.25rem;font-weight:600}.ui-dialog__modal div.flex.justify-between.items-center.py-3.px-4.border-b{border-bottom-width:0px;--tw-text-opacity: 1;color:#1f2937;font-weight:500;font-size:1.125rem;line-height:1.75rem;padding-bottom:0rem}.ui-dialog__modal .ui-dialog__content .p-4{padding-top:0rem}.widget-images__item-desc span:first-child:after{content:"";width:2px;height:2px;border-radius:50%;display:flex;align-items:center;background:#676a6c;margin:0 5px}.disabled{cursor:not-allowed!important}.item__text-content,.item{transition:all .5s cubic-bezier(.4,0,.2,1)}.item:hover .item__text-content{opacity:.8}.vs-widget-images .vs-button{background-color:#2563eb;color:#fff;font-size:.875rem;line-height:1.25rem;font-weight:600}.border-top:not(:first-child){--tw-border-opacity: 1;border-color:#e5e7eb;border-top-width:1px}.widget-comment-form .vs-button{padding:.625rem 1rem;font-size:.75rem;line-height:1rem;font-weight:500}.widget-comment-form .vs-button:focus{border:transparent;--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254);--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 rgba(0, 0, 0, 0))}.grid[data-v-fe670fc5]{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.admin-wrapper[data-v-c3c91323]{display:flex;height:100vh;align-items:start}.vs-popover__content>div{padding:.25rem}
@@ -1,28 +1,28 @@
1
- {{#contentList table="admin.access" query="role_id='{{id}}'" order="cdate desc" sql1=1}}
2
- <table class="min-w-full divide-y divide-gray-200">
3
- <thead class="bg-gray-50">
4
- <tr>
5
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
- ID шаблона</th>
7
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
- Назва шаблону</th>
9
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
- Права</th>
11
- </tr>
12
- </thead>
13
- <tbody class="bg-white divide-y divide-gray-200">
14
- {{#each rows}}
15
- <tr>
16
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
17
- {{route_id}}</td>
18
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
- {{!-- {{route_id}} --}}
20
- </td>
21
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
22
- {{actions}}
23
- </td>
24
- </tr>
25
- {{/each}}
26
- </tbody>
27
- </table>
1
+ {{#contentList table="admin.access" query="role_id='{{id}}'" order="cdate desc" sql1=1}}
2
+ <table class="min-w-full divide-y divide-gray-200">
3
+ <thead class="bg-gray-50">
4
+ <tr>
5
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
+ ID шаблона</th>
7
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
+ Назва шаблону</th>
9
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
+ Права</th>
11
+ </tr>
12
+ </thead>
13
+ <tbody class="bg-white divide-y divide-gray-200">
14
+ {{#each rows}}
15
+ <tr>
16
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
17
+ {{route_id}}</td>
18
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
+ {{!-- {{route_id}} --}}
20
+ </td>
21
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
22
+ {{actions}}
23
+ </td>
24
+ </tr>
25
+ {{/each}}
26
+ </tbody>
27
+ </table>
28
28
  {{/contentList}}
@@ -1,17 +1,17 @@
1
- <dl class="-my-3 divide-y divide-gray-100 text-sm">
2
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
3
- <dt class="font-medium text-gray-900">Назва</dt>
4
- <dd class="text-gray-700 sm:col-span-2">{{name}}</dd>
5
- </div>
6
-
7
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
8
- <dt class="font-medium text-gray-900">On/Off</dt>
9
- <dd class="text-gray-700 sm:col-span-2">{{select enabled data="yes_no"}}</dd>
10
- </div>
11
-
12
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
13
- <dt class="font-medium text-gray-900">Опис</dt>
14
- <dd class="text-gray-700 sm:col-span-2">{{info}}</dd>
15
- </div>
16
-
1
+ <dl class="-my-3 divide-y divide-gray-100 text-sm">
2
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
3
+ <dt class="font-medium text-gray-900">Назва</dt>
4
+ <dd class="text-gray-700 sm:col-span-2">{{name}}</dd>
5
+ </div>
6
+
7
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
8
+ <dt class="font-medium text-gray-900">On/Off</dt>
9
+ <dd class="text-gray-700 sm:col-span-2">{{select enabled data="yes_no"}}</dd>
10
+ </div>
11
+
12
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
13
+ <dt class="font-medium text-gray-900">Опис</dt>
14
+ <dd class="text-gray-700 sm:col-span-2">{{info}}</dd>
15
+ </div>
16
+
17
17
  </dl>
@@ -1,14 +1,14 @@
1
- component: default
2
- panels:
3
- - name: general_info
4
- title: Загальна інформація
5
- col: 4
6
- - type: container
7
- col: 8
8
- items:
9
- - component: vs-widget-table
10
- title: Користувачі
11
- props: { table: admin.user_roles.table, query: role_id=@id, edit: true }
12
- - name: access
13
- title: Права до інтерфейсів
14
- col: 4
1
+ component: default
2
+ panels:
3
+ - name: general_info
4
+ title: Загальна інформація
5
+ col: 4
6
+ - type: container
7
+ col: 8
8
+ items:
9
+ - component: vs-widget-table
10
+ title: Користувачі
11
+ props: { table: admin.user_roles.table, query: role_id=@id, edit: true }
12
+ - name: access
13
+ title: Права до інтерфейсів
14
+ col: 4
@@ -1,28 +1,28 @@
1
- {{#contentList table="admin.user_roles" query="role_id='{{id}}'" order="cdate desc" limit="50" sql1=1}}
2
- <table class="min-w-full divide-y divide-gray-200">
3
- <thead class="bg-gray-50">
4
- <tr>
5
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
- Користувач</th>
7
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
- Закінчення терміну дії доступу до групи</th>
9
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
- Дата надання доступу</th>
11
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
12
- Хто надав доступ</th>
13
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
14
- Дії</th>
15
- </tr>
16
- </thead>
17
- <tbody class="bg-white divide-y divide-gray-200">
18
- {{#each rows}}
19
- <tr>
20
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{user_uid}}</td>
21
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{formatDate expiration}}</td>
22
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{formatDate access_granted_time}}</td>
23
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{access_granted}}</td>
24
- </tr>
25
- {{/each}}
26
- </tbody>
27
- </table>
1
+ {{#contentList table="admin.user_roles" query="role_id='{{id}}'" order="cdate desc" limit="50" sql1=1}}
2
+ <table class="min-w-full divide-y divide-gray-200">
3
+ <thead class="bg-gray-50">
4
+ <tr>
5
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
+ Користувач</th>
7
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
+ Закінчення терміну дії доступу до групи</th>
9
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
+ Дата надання доступу</th>
11
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
12
+ Хто надав доступ</th>
13
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
14
+ Дії</th>
15
+ </tr>
16
+ </thead>
17
+ <tbody class="bg-white divide-y divide-gray-200">
18
+ {{#each rows}}
19
+ <tr>
20
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{user_uid}}</td>
21
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{formatDate expiration}}</td>
22
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{formatDate access_granted_time}}</td>
23
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">{{access_granted}}</td>
24
+ </tr>
25
+ {{/each}}
26
+ </tbody>
27
+ </table>
28
28
  {{/contentList}}
@@ -1,41 +1,41 @@
1
- <dl class="-my-3 divide-y divide-gray-100 text-sm">
2
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
3
- <dt class="font-medium text-gray-900">Назва файлу інтерфейсу</dt>
4
- <dd class="text-gray-700 sm:col-span-2">{{alias}}</dd>
5
- </div>
6
-
7
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
8
- <dt class="font-medium text-gray-900">Назва інтерфейсу українською</dt>
9
- <dd class="text-gray-700 sm:col-span-2">{{title}}</dd>
10
- </div>
11
-
12
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
13
- <dt class="font-medium text-gray-900">Кількість користувачів</dt>
14
- <dd class="text-gray-700 sm:col-span-2">{{user_count}}</dd>
15
- </div>
16
-
17
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
18
- <dt class="font-medium text-gray-900">Кількість груп</dt>
19
- <dd class="text-gray-700 sm:col-span-2">{{roles_count}}</dd>
20
- </div>
21
-
22
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
23
- <dt class="font-medium text-gray-900">Ознака чи для всіх показується</dt>
24
- <dd class="text-gray-700 sm:col-span-2">{{select public data="yes_no"}}</dd>
25
- </div>
26
-
27
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
28
- <dt class="font-medium text-gray-900">Пункт меню</dt>
29
- <dd class="text-gray-700 sm:col-span-2">{{menu_id}}</dd>
30
- </div>
31
-
32
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
33
- <dt class="font-medium text-gray-900">On / Off</dt>
34
- <dd class="text-gray-700 sm:col-span-2">{{select enabled data="yes_no"}}</dd>
35
- </div>
36
-
37
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
38
- <dt class="font-medium text-gray-900">Дата створення</dt>
39
- <dd class="text-gray-700 sm:col-span-2">{{formatDate cdate}}</dd>
40
- </div>
1
+ <dl class="-my-3 divide-y divide-gray-100 text-sm">
2
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
3
+ <dt class="font-medium text-gray-900">Назва файлу інтерфейсу</dt>
4
+ <dd class="text-gray-700 sm:col-span-2">{{alias}}</dd>
5
+ </div>
6
+
7
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
8
+ <dt class="font-medium text-gray-900">Назва інтерфейсу українською</dt>
9
+ <dd class="text-gray-700 sm:col-span-2">{{title}}</dd>
10
+ </div>
11
+
12
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
13
+ <dt class="font-medium text-gray-900">Кількість користувачів</dt>
14
+ <dd class="text-gray-700 sm:col-span-2">{{user_count}}</dd>
15
+ </div>
16
+
17
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
18
+ <dt class="font-medium text-gray-900">Кількість груп</dt>
19
+ <dd class="text-gray-700 sm:col-span-2">{{roles_count}}</dd>
20
+ </div>
21
+
22
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
23
+ <dt class="font-medium text-gray-900">Ознака чи для всіх показується</dt>
24
+ <dd class="text-gray-700 sm:col-span-2">{{select public data="yes_no"}}</dd>
25
+ </div>
26
+
27
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
28
+ <dt class="font-medium text-gray-900">Пункт меню</dt>
29
+ <dd class="text-gray-700 sm:col-span-2">{{menu_id}}</dd>
30
+ </div>
31
+
32
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
33
+ <dt class="font-medium text-gray-900">On / Off</dt>
34
+ <dd class="text-gray-700 sm:col-span-2">{{select enabled data="yes_no"}}</dd>
35
+ </div>
36
+
37
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
38
+ <dt class="font-medium text-gray-900">Дата створення</dt>
39
+ <dd class="text-gray-700 sm:col-span-2">{{formatDate cdate}}</dd>
40
+ </div>
41
41
  </dl>
@@ -1,8 +1,8 @@
1
- component: default
2
- panels:
3
- - name: general_info
4
- title: Загальна інформація
5
- col: 4
6
- - name: users
7
- title: Користувачі
8
- col: 8
1
+ component: default
2
+ panels:
3
+ - name: general_info
4
+ title: Загальна інформація
5
+ col: 4
6
+ - name: users
7
+ title: Користувачі
8
+ col: 8
@@ -1,34 +1,34 @@
1
- {{#contentList table="admin.access" query="route_id='{{id}}'" order="cdate desc" limit="50" sql1=1}}
2
- <table class="min-w-full divide-y divide-gray-200">
3
- <thead class="bg-gray-50">
4
- <tr>
5
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
- Користувач</th>
7
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
- Права</th>
9
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
- Користувач який надав доступ</th>
11
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
12
- Дії</th>
13
- </tr>
14
- </thead>
15
- <tbody class="bg-white divide-y divide-gray-200">
16
- {{#each rows}}
17
- <tr>
18
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
- {{!-- {{select user_uid data="core.user_uid"}} --}}
20
- {{user_uid}}
21
- </td>
22
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
23
- {{!-- {{select actions data="core.actions"}} --}}
24
- {{actions}}
25
- </td>
26
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
27
- {{!-- {{select access_granted data="core.user_uid"}} --}}
28
- {{access_granted}}
29
- </td>
30
- </tr>
31
- {{/each}}
32
- </tbody>
33
- </table>
1
+ {{#contentList table="admin.access" query="route_id='{{id}}'" order="cdate desc" limit="50" sql1=1}}
2
+ <table class="min-w-full divide-y divide-gray-200">
3
+ <thead class="bg-gray-50">
4
+ <tr>
5
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
+ Користувач</th>
7
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
+ Права</th>
9
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
+ Користувач який надав доступ</th>
11
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
12
+ Дії</th>
13
+ </tr>
14
+ </thead>
15
+ <tbody class="bg-white divide-y divide-gray-200">
16
+ {{#each rows}}
17
+ <tr>
18
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
+ {{!-- {{select user_uid data="core.user_uid"}} --}}
20
+ {{user_uid}}
21
+ </td>
22
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
23
+ {{!-- {{select actions data="core.actions"}} --}}
24
+ {{actions}}
25
+ </td>
26
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
27
+ {{!-- {{select access_granted data="core.user_uid"}} --}}
28
+ {{access_granted}}
29
+ </td>
30
+ </tr>
31
+ {{/each}}
32
+ </tbody>
33
+ </table>
34
34
  {{/contentList}}
@@ -1,26 +1,26 @@
1
- <dl class="-my-3 divide-y divide-gray-100 text-sm">
2
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
3
- <dt class="font-medium text-gray-900">ПІБ</dt>
4
- <dd class="text-gray-700 sm:col-span-2">{{sur_name}} {{user_name}} {{father_name}}</dd>
5
- </div>
6
-
7
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
8
- <dt class="font-medium text-gray-900">Електронна пошта</dt>
9
- <dd class="text-gray-700 sm:col-span-2">{{email}}</dd>
10
- </div>
11
-
12
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
13
- <dt class="font-medium text-gray-900">Телефон</dt>
14
- <dd class="text-gray-700 sm:col-span-2">{{phone}}</dd>
15
- </div>
16
-
17
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
18
- <dt class="font-medium text-gray-900">РНОКПП</dt>
19
- <dd class="text-gray-700 sm:col-span-2">{{user_rnokpp}}</dd>
20
- </div>
21
-
22
- <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
23
- <dt class="font-medium text-gray-900">ЄДРПОУ</dt>
24
- <dd class="text-gray-700 sm:col-span-2">{{organ_edrpou}}</dd>
25
- </div>
1
+ <dl class="-my-3 divide-y divide-gray-100 text-sm">
2
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
3
+ <dt class="font-medium text-gray-900">ПІБ</dt>
4
+ <dd class="text-gray-700 sm:col-span-2">{{sur_name}} {{user_name}} {{father_name}}</dd>
5
+ </div>
6
+
7
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
8
+ <dt class="font-medium text-gray-900">Електронна пошта</dt>
9
+ <dd class="text-gray-700 sm:col-span-2">{{email}}</dd>
10
+ </div>
11
+
12
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
13
+ <dt class="font-medium text-gray-900">Телефон</dt>
14
+ <dd class="text-gray-700 sm:col-span-2">{{phone}}</dd>
15
+ </div>
16
+
17
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
18
+ <dt class="font-medium text-gray-900">РНОКПП</dt>
19
+ <dd class="text-gray-700 sm:col-span-2">{{user_rnokpp}}</dd>
20
+ </div>
21
+
22
+ <div class="grid grid-cols-1 gap-1 py-3 sm:grid-cols-3 sm:gap-4">
23
+ <dt class="font-medium text-gray-900">ЄДРПОУ</dt>
24
+ <dd class="text-gray-700 sm:col-span-2">{{organ_edrpou}}</dd>
25
+ </div>
26
26
  </dl>
@@ -1,12 +1,12 @@
1
- component: default
2
- panels:
3
- - name: general_info
4
- title: Загальна інформація
5
- col: 4
6
- - name: user_roles
7
- title: Перелік груп
8
- col: 8
9
- items:
10
- - name: logs
11
- title: Інформація про вхід до системи
12
- col: 4
1
+ component: default
2
+ panels:
3
+ - name: general_info
4
+ title: Загальна інформація
5
+ col: 4
6
+ - name: user_roles
7
+ title: Перелік груп
8
+ col: 8
9
+ items:
10
+ - name: logs
11
+ title: Інформація про вхід до системи
12
+ col: 4
@@ -1,31 +1,31 @@
1
- {{#contentList table="log.table_log" query="uid='{{uid}}'" order="cdate desc" sql1=1}}
2
- <table class="min-w-full divide-y divide-gray-200">
3
- <thead class="bg-gray-50">
4
- <tr>
5
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
- Дата</th>
7
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
- Тип операції</th>
9
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
- Таблиця</th>
11
- </tr>
12
- </thead>
13
- <tbody class="bg-white divide-y divide-gray-200">
14
- {{#each rows}}
15
- <tr>
16
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
17
- {{formatDate cdate format="dd.MM.yy hh:mm"}}</td>
18
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
- {{_type}}</td>
20
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
21
- {{_table}}</td>
22
- </tr>
23
- {{else}}
24
- <tr>
25
- <td colspan="3" class="px-6 py-4 whitespace-nowrap text-center text-sm font-medium text-gray-500">
26
- Поки що не зафіксовано активності</td>
27
- </tr>
28
- {{/each}}
29
- </tbody>
30
- </table>
1
+ {{#contentList table="log.table_log" query="uid='{{uid}}'" order="cdate desc" sql1=1}}
2
+ <table class="min-w-full divide-y divide-gray-200">
3
+ <thead class="bg-gray-50">
4
+ <tr>
5
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
+ Дата</th>
7
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
+ Тип операції</th>
9
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
+ Таблиця</th>
11
+ </tr>
12
+ </thead>
13
+ <tbody class="bg-white divide-y divide-gray-200">
14
+ {{#each rows}}
15
+ <tr>
16
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
17
+ {{formatDate cdate format="dd.MM.yy hh:mm"}}</td>
18
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
+ {{_type}}</td>
20
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
21
+ {{_table}}</td>
22
+ </tr>
23
+ {{else}}
24
+ <tr>
25
+ <td colspan="3" class="px-6 py-4 whitespace-nowrap text-center text-sm font-medium text-gray-500">
26
+ Поки що не зафіксовано активності</td>
27
+ </tr>
28
+ {{/each}}
29
+ </tbody>
30
+ </table>
31
31
  {{/contentList}}
@@ -1,25 +1,25 @@
1
- {{#contentList table="admin.user_roles" query="user_uid='{{id}}'" order="cdate desc" limit="50" sql1=1}}
2
- <table class="min-w-full divide-y divide-gray-200">
3
- <thead class="bg-gray-50">
4
- <tr>
5
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
- Група</th>
7
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
- Закінчення терміну дії доступу до групи</th>
9
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
- Дії</th>
11
- </tr>
12
- </thead>
13
- <tbody class="bg-white divide-y divide-gray-200">
14
- {{#each rows}}
15
- <tr>
16
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
17
- {{select role_id data="core.roles"}}</td>
18
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
- {{formatDate expiration}}</td>
20
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500"></td>
21
- </tr>
22
- {{/each}}
23
- </tbody>
24
- </table>
1
+ {{#contentList table="admin.user_roles" query="user_uid='{{id}}'" order="cdate desc" limit="50" sql1=1}}
2
+ <table class="min-w-full divide-y divide-gray-200">
3
+ <thead class="bg-gray-50">
4
+ <tr>
5
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
6
+ Група</th>
7
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
8
+ Закінчення терміну дії доступу до групи</th>
9
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
10
+ Дії</th>
11
+ </tr>
12
+ </thead>
13
+ <tbody class="bg-white divide-y divide-gray-200">
14
+ {{#each rows}}
15
+ <tr>
16
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
17
+ {{select role_id data="core.roles"}}</td>
18
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500">
19
+ {{formatDate expiration}}</td>
20
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-F500"></td>
21
+ </tr>
22
+ {{/each}}
23
+ </tbody>
24
+ </table>
25
25
  {{/contentList}}