@prozorro/prozorro-ui 0.1.24-beta → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/assets/{Color-FRDS63T2-CDBT0VBi.js → Color-FRDS63T2-DFatLjXv.js} +1 -1
- package/dist/app/assets/{Colors.stories-DjkYZ7Ve.js → Colors.stories-KteRf4hN.js} +1 -1
- package/dist/app/assets/{Display.stories-DqSkhpJk.js → Display.stories-BjGBBHYh.js} +1 -1
- package/dist/app/assets/{DocsRenderer-LL677BLK-DXLJIY7w.js → DocsRenderer-LL677BLK-kW_xaWu_.js} +5 -5
- package/dist/app/assets/{Gap.stories-DKkz6ahe.js → Gap.stories-BwXJ6Wde.js} +1 -1
- package/dist/app/assets/{Grid.stories-BCoeUllE.js → Grid.stories-C0nwzVZv.js} +1 -1
- package/dist/app/assets/{PzAccordion-DjJEMHhz.js → PzAccordion-CQjaQ1mQ.js} +1 -1
- package/dist/app/assets/{PzAccordion.stories-DMNhwuzO.js → PzAccordion.stories-BNTS_q-I.js} +1 -1
- package/dist/app/assets/PzAccordionTable.stories-DBbhuVUs.js +275 -0
- package/dist/app/assets/{PzArrayClamp.stories-BZXFs7_D.js → PzArrayClamp.stories-D_SWbrNa.js} +1 -1
- package/dist/app/assets/{PzBreadcrumb-5IRljnPN.css → PzBreadcrumb-tG8AMSPH.css} +1 -1
- package/dist/app/assets/PzBreadcrumb.stories-Dvd0bzcX.js +120 -0
- package/dist/app/assets/{PzBtn-bB_kwCHt.js → PzBtn-DdQAmxtG.js} +1 -1
- package/dist/app/assets/{PzBtn.stories-CpWh8zdp.js → PzBtn.stories-BcZ20xIg.js} +1 -1
- package/dist/app/assets/{PzCheckbox--4WxQY2E.js → PzCheckbox-DKAtPIqF.js} +1 -1
- package/dist/app/assets/{PzCheckbox.stories-Ba-dH5ft.js → PzCheckbox.stories-C9PrNOIa.js} +1 -1
- package/dist/app/assets/{PzCheckboxGroup.stories-1sqdlRNq.js → PzCheckboxGroup.stories-DVgsXfBk.js} +1 -1
- package/dist/app/assets/{PzCopyToClipboard-Df_8r5Wq.js → PzCopyToClipboard-C4qlcdJm.js} +1 -1
- package/dist/app/assets/{PzCopyToClipboard.stories-ruTShpHQ.js → PzCopyToClipboard.stories-BFP8mpAT.js} +1 -1
- package/dist/app/assets/{PzDate-gGWvuGsK.js → PzDate-Bq-O5jRO.js} +1 -1
- package/dist/app/assets/{PzDate.stories-DEshjm8t.js → PzDate.stories-B1oyy6H8.js} +1 -1
- package/dist/app/assets/{PzDateRange.stories-CqBfisaH.js → PzDateRange.stories-CFHAXLsJ.js} +1 -1
- package/dist/app/assets/{PzDomHandler.stories-BY9grW_N.js → PzDomHandler.stories-DwXawRon.js} +1 -1
- package/dist/app/assets/{PzDropdown.stories-CilNCPWm.js → PzDropdown.stories-CMM07A5B.js} +1 -1
- package/dist/app/assets/{PzFileInput.stories-Bm6c06mW.js → PzFileInput.stories-B2-ZijEj.js} +1 -1
- package/dist/app/assets/{PzGrid.stories-DsAHtYxq.js → PzGrid.stories-UcOUdmBN.js} +1 -1
- package/dist/app/assets/{PzHint-CkyAW0No.js → PzHint-l-9DaqXy.js} +1 -1
- package/dist/app/assets/{PzHint.stories-BIzbV-IH.js → PzHint.stories-qLQGomom.js} +1 -1
- package/dist/app/assets/{PzIcon-DoqglpUK.js → PzIcon-BcyUoNpX.js} +1 -1
- package/dist/app/assets/{PzIcon.stories-C2_zEd3z.js → PzIcon.stories-ETz_5LWR.js} +1 -1
- package/dist/app/assets/{PzImage.stories-CCOYw6La.js → PzImage.stories-BO7N6RT3.js} +1 -1
- package/dist/app/assets/{PzImageInput.stories-VrVooIki.js → PzImageInput.stories-CghxfhBg.js} +1 -1
- package/dist/app/assets/{PzInfoBlockLayout.stories-xuZ6W3qt.js → PzInfoBlockLayout.stories-4BT9m_t8.js} +1 -1
- package/dist/app/assets/PzInfoHint-C6Ed8ar9.css +1 -0
- package/dist/app/assets/PzInfoHint-cPEdyLDe.js +1 -0
- package/dist/app/assets/{PzInfoHint.stories-DaX53uG7.js → PzInfoHint.stories-BVhEFwP1.js} +3 -3
- package/dist/app/assets/{PzInput.stories-DAkHtNKg.js → PzInput.stories-CRtoYbZy.js} +1 -1
- package/dist/app/assets/{PzInputDate.stories-DZgiatrD.js → PzInputDate.stories-CV6hpUbw.js} +1 -1
- package/dist/app/assets/{PzInputNumber.stories-DWHKlwu2.js → PzInputNumber.stories-CsIBMrOJ.js} +1 -1
- package/dist/app/assets/{PzKeyValue-CCsZc61L.css → PzKeyValue-C9sPNa_N.css} +1 -1
- package/dist/app/assets/PzKeyValue-Cn8RTU-S.js +1 -0
- package/dist/app/assets/{PzKeyValue.stories-CNwW4ZpS.js → PzKeyValue.stories-Byp1DaHN.js} +4 -4
- package/dist/app/assets/{PzLabel-CKqAF5_m.js → PzLabel-DMn13NsD.js} +1 -1
- package/dist/app/assets/{PzLabel.stories-BAyk219A.js → PzLabel.stories-BHToKnJS.js} +1 -1
- package/dist/app/assets/{PzLink-xXkA1suV.js → PzLink-BZnsXkWP.js} +1 -1
- package/dist/app/assets/{PzLink.stories-ClR5RVLt.js → PzLink.stories-BImrwmST.js} +1 -1
- package/dist/app/assets/{PzListNav-C54pZ98P.js → PzListNav-Bg-BQRg3.js} +1 -1
- package/dist/app/assets/{PzListNav.stories-DZoN1RXt.js → PzListNav.stories-C8DsBK0v.js} +1 -1
- package/dist/app/assets/{PzLoader.stories-D2dep0mC.js → PzLoader.stories-BWUr6txK.js} +1 -1
- package/dist/app/assets/{PzMessages-Cozycvno.js → PzMessages-CghyB4RL.js} +1 -1
- package/dist/app/assets/{PzMessages.stories-DL8G5Taq.js → PzMessages.stories-BS5-ZnuM.js} +1 -1
- package/dist/app/assets/{PzModal.stories-Cl9CJmxY.js → PzModal.stories-B3wpqspo.js} +1 -1
- package/dist/app/assets/{PzMultiSelect.stories-C01VhDac.js → PzMultiSelect.stories-Cq4d7c9i.js} +1 -1
- package/dist/app/assets/{PzNav-DJEmBvKA.css → PzNav-DFuAN7za.css} +1 -1
- package/dist/app/assets/{PzNav.stories-VEE-T-a0.js → PzNav.stories-vnbW05SF.js} +8 -8
- package/dist/app/assets/{PzNumberFormat.stories-DC8QT-g6.js → PzNumberFormat.stories-Bn0pC0O_.js} +1 -1
- package/dist/app/assets/{PzPagination-D2IWUbcO.js → PzPagination-zkV-BSCC.js} +1 -1
- package/dist/app/assets/{PzPagination.stories-CkILzu9R.js → PzPagination.stories-pJrhE_Tg.js} +1 -1
- package/dist/app/assets/{PzPaginationProvider.stories-D3cRyPQd.js → PzPaginationProvider.stories-BXaDwFHn.js} +2 -2
- package/dist/app/assets/{PzPrice-rqmHlayK.js → PzPrice-DISQ8150.js} +1 -1
- package/dist/app/assets/{PzPrice.stories-WIzx5_6E.js → PzPrice.stories-CsLDEmhb.js} +1 -1
- package/dist/app/assets/{PzPriceFormat.stories-CuLwQyHU.js → PzPriceFormat.stories-QTNj89lg.js} +1 -1
- package/dist/app/assets/{PzPriceRange.stories-CHUu9LAG.js → PzPriceRange.stories-B6BIWwyL.js} +1 -1
- package/dist/app/assets/{PzRadioGroup.stories-BLvPlgNN.js → PzRadioGroup.stories-DZzVynb8.js} +1 -1
- package/dist/app/assets/{PzRouterLink.stories-CDFKvJy_.js → PzRouterLink.stories-DavcwsYR.js} +1 -1
- package/dist/app/assets/{PzScrollTo.stories-BlbuwwJh.js → PzScrollTo.stories-mn_WC1ro.js} +1 -1
- package/dist/app/assets/{PzSearchResultItemLayout.stories-4T_Ckma3.js → PzSearchResultItemLayout.stories-DsVnHb_t.js} +1 -1
- package/dist/app/assets/PzSelect-B1drX3sx.js +1 -0
- package/dist/app/assets/{PzSelect.stories-DivN478n.js → PzSelect.stories-iabNHRYP.js} +1 -1
- package/dist/app/assets/{PzSkeleton-B33HHkEc.js → PzSkeleton-CaNEKwvt.js} +1 -1
- package/dist/app/assets/{PzSkeleton.stories-BM1pkn3m.js → PzSkeleton.stories-CpO1fBFt.js} +1 -1
- package/dist/app/assets/{PzStatus-C4EqNGPd.js → PzStatus-D3-Uq69j.js} +1 -1
- package/dist/app/assets/{PzStatus.stories-Cqm-ifG8.js → PzStatus.stories-C4wa8GKS.js} +1 -1
- package/dist/app/assets/{PzTable-CPT48A4Z.css → PzTable-B2VdqD23.css} +1 -1
- package/dist/app/assets/PzTable-DTSOUdXZ.js +1 -0
- package/dist/app/assets/{PzTable.stories-Cl2K1LkT.js → PzTable.stories-GOMboCZF.js} +3 -3
- package/dist/app/assets/PzTablePaginationProvider.stories-5SrL-GbM.js +32 -0
- package/dist/app/assets/{PzTabs-BggKyYiM.css → PzTabs-Cj64K6MD.css} +1 -1
- package/dist/app/assets/{PzTabs.stories-0P97NrDb.js → PzTabs.stories-B1kUStoZ.js} +6 -6
- package/dist/app/assets/{PzTag-DnfNJZdw.js → PzTag-DgTwGfCR.js} +1 -1
- package/dist/app/assets/{PzTag.stories-DUAd3gWZ.js → PzTag.stories-B59qjvG9.js} +1 -1
- package/dist/app/assets/{PzText-DFC4aYrl.js → PzText-DpNgd6Nx.js} +1 -1
- package/dist/app/assets/{PzText.stories-oovqVTKc.js → PzText.stories-DmMxDc4-.js} +1 -1
- package/dist/app/assets/{PzTextClamp.stories-HdjD2030.js → PzTextClamp.stories-C9GKhCoU.js} +1 -1
- package/dist/app/assets/{PzTextarea.stories-C-9VqqOB.js → PzTextarea.stories-ByyDHDVq.js} +1 -1
- package/dist/app/assets/PzTranslator-DDtI6blH.js +1 -0
- package/dist/app/assets/PzTranslator.stories-CGEt27vB.js +14 -0
- package/dist/app/assets/{PzValidatorXSS.stories-C6q6PXbN.js → PzValidatorXSS.stories-DowYTqqT.js} +1 -1
- package/dist/app/assets/{Spacing.stories-UAAtvr5q.js → Spacing.stories-CIviyZMB.js} +1 -1
- package/dist/app/assets/{StaticPagination.composable-CDQEQ93P.js → StaticPagination.composable-6pG0lq38.js} +1 -1
- package/dist/app/assets/{Typography.stories-BL2bTPnP.js → Typography.stories-lq1W1mnu.js} +1 -1
- package/dist/app/assets/{WithTooltip-65CFNBJE-DQFNAHAL.js → WithTooltip-65CFNBJE-DXRUkBgc.js} +1 -1
- package/dist/app/assets/{floating-vue-CpM8Btf7.js → floating-vue-BKNZm4Jb.js} +1 -1
- package/dist/app/assets/{floating-vue-B2IiQalE.js → floating-vue-btbGatfK.js} +1 -1
- package/dist/app/assets/{formatter-EIJCOSYU-DWEZfoWy.js → formatter-EIJCOSYU-DMDzvaFV.js} +1 -1
- package/dist/app/assets/{iframe-COJe1XkP.js → iframe-C7ETNRpQ.js} +3 -3
- package/dist/app/assets/{index-CZrUN4KI.js → index-GLpND2lK.js} +1 -1
- package/dist/app/assets/{syntaxhighlighter-OH4MV7E3-ChsaTiWF.js → syntaxhighlighter-OH4MV7E3-CMncrGKC.js} +1 -1
- package/dist/app/iframe.html +1 -1
- package/dist/app/index.json +1 -1
- package/dist/app/project.json +1 -1
- package/dist/components/Data/PzTable/types.d.ts +3 -2
- package/dist/components/Display/PzKeyValue/types.d.ts +5 -2
- package/dist/components/Layouts/PzTabs/PzTab.vue.d.ts +2 -1
- package/dist/components/Layouts/PzTabs/types.d.ts +3 -2
- package/dist/components/Navigation/PzBreadcrumb/types.d.ts +2 -1
- package/dist/components/Navigation/PzNav/types.d.ts +2 -1
- package/dist/components/Popups/PzInfoHint/types.d.ts +3 -2
- package/dist/index.d.ts +1 -0
- package/dist/package.json +1 -1
- package/dist/prozorro-ui.cjs +6 -6
- package/dist/prozorro-ui.js +2991 -2982
- package/dist/services/PzTranslator/PzTranslator.d.ts +29 -0
- package/dist/services/PzTranslator/index.d.ts +2 -0
- package/dist/services/PzTranslator/types.d.ts +30 -0
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/dist/app/assets/PzAccordionTable.stories-ybFlAxyc.js +0 -275
- package/dist/app/assets/PzBreadcrumb.stories-DeVJFiXE.js +0 -120
- package/dist/app/assets/PzInfoHint-BDxp8wOD.css +0 -1
- package/dist/app/assets/PzInfoHint-VuxJAC_S.js +0 -1
- package/dist/app/assets/PzKeyValue-BX10m3eP.js +0 -1
- package/dist/app/assets/PzSelect-Bwowr3H1.js +0 -1
- package/dist/app/assets/PzTable-DQkUhUqk.js +0 -1
- package/dist/app/assets/PzTablePaginationProvider.stories-ChHhWZk5.js +0 -32
package/dist/app/assets/{PzRouterLink.stories-CDFKvJy_.js → PzRouterLink.stories-DavcwsYR.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{e as v,J as y,v as b,y as l,C as s,R as k,o as z,E as x,K as P,z as p,L as w,c as R,M as _}from"./iframe-
|
|
1
|
+
import{e as v,J as y,v as b,y as l,C as s,R as k,o as z,E as x,K as P,z as p,L as w,c as R,M as _}from"./iframe-C7ETNRpQ.js";import{p as L,a as S}from"./configs-DshpCAYO.js";import{_ as V}from"./PzIcon-BcyUoNpX.js";import{P as T}from"./PzText-DpNgd6Nx.js";import{p as $}from"./configs-CtUh_XBV.js";import{P as A}from"./PzLink-BZnsXkWP.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const n=v({name:"PzRouterLink",inheritAttrs:!1,__name:"PzRouterLink",props:{to:{},replace:{type:Boolean,default:!1},variant:{default:"primary"},target:{default:"_self"},rel:{default:void 0},disabled:{type:Boolean,default:!1},inline:{type:Boolean,default:!0},bold:{type:Boolean,default:!1},italic:{type:Boolean,default:!1},lineThrough:{type:Boolean,default:!1},typography:{}},setup(e){const t=e,o=y(),r=(a,u)=>{t.disabled||t.target!=="_self"||u(a)};return(a,u)=>(z(),b(s(k),{custom:"",to:t.to,replace:t.replace},{default:l(({href:m,navigate:h})=>[x(s(A),w(s(o),{href:m,variant:t.variant,target:t.target,rel:t.rel,disabled:t.disabled,inline:t.inline,bold:t.bold,italic:t.italic,"line-through":t.lineThrough,typography:t.typography,onClick:g=>r(g,h)}),P({default:l(()=>[p(a.$slots,"default")]),_:2},[a.$slots.prefix?{name:"prefix",fn:l(()=>[p(a.$slots,"prefix")]),key:"0"}:void 0,a.$slots.suffix?{name:"suffix",fn:l(()=>[p(a.$slots,"suffix")]),key:"1"}:void 0]),1040,["href","variant","target","rel","disabled","inline","bold","italic","line-through","typography","onClick"])]),_:3},8,["to","replace"]))}});n.__docgenInfo=Object.assign({displayName:n.name??n.__name},{name:"PzRouterLink",exportName:"default",displayName:"PzRouterLink",description:"",tags:{},props:[{name:"to",required:!0,type:{name:"PzRouterLinkTo"}},{name:"replace",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"variant",defaultValue:{func:!1,value:'"primary"'}},{name:"target",defaultValue:{func:!1,value:'"_self"'}},{name:"rel",defaultValue:{func:!1,value:"undefined"}},{name:"disabled",defaultValue:{func:!1,value:"false"}},{name:"inline",defaultValue:{func:!1,value:"true"}},{name:"bold",defaultValue:{func:!1,value:"false"}},{name:"italic",defaultValue:{func:!1,value:"false"}},{name:"lineThrough",defaultValue:{func:!1,value:"false"}}],slots:[{name:"prefix"},{name:"default"},{name:"suffix"}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Actions/PzRouterLink/PzRouterLink.vue"]});const B=e=>{const o=[`to="${typeof e.to=="string"?e.to:JSON.stringify(e.to)}"`,e.variant!=="primary"?`variant="${e.variant}"`:null,e.target!=="_self"?`target="${e.target}"`:null,e.disabled?':disabled="true"':null,e.inline===!1?':inline="false"':null,e.bold?':bold="true"':null,e.italic?':italic="true"':null,e.lineThrough?':line-through="true"':null,e.replace?':replace="true"':null].filter(a=>!!a).join(" "),r=[e.showPrefix?` <template #prefix>
|
|
2
2
|
<PzIcon name="arrow_back" size="16" />
|
|
3
3
|
</template>`:null,` ${e.label}`,e.showSuffix?` <template #suffix>
|
|
4
4
|
<PzIcon name="arrow_forward" size="16" />
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as i,w as n,A as h}from"./iframe-
|
|
1
|
+
import{r as i,w as n,A as h}from"./iframe-C7ETNRpQ.js";import{P as v}from"./PzText-DpNgd6Nx.js";import{P as a}from"./PzScrollTo-KuzwcV-o.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const T=["auto","instant","smooth"],d=24,y="100vh",z=o=>{const t=[o.behavior!=="smooth"?`behavior: "${o.behavior}"`:null,o.offsetTop!==d?`offsetTop: ${o.offsetTop}`:null].filter(l=>!!l).join(", ");return`<script setup lang="ts">
|
|
2
2
|
import { PzScrollTo } from "@prozorro/prozorro-ui";
|
|
3
3
|
|
|
4
4
|
const scrollToTenderDocuments = (): void => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{P as d}from"./PzText-
|
|
1
|
+
import{P as d}from"./PzText-DpNgd6Nx.js";import{e as m,v as y,y as h,n as z,x as f,c as v,o as g,u as s,z as i}from"./iframe-C7ETNRpQ.js";import{_ as b}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./preload-helper-C1FmrZbK.js";const x={class:"pz-search-result-item-layout-surface"},S={class:"pz-search-result-item-layout-grid"},L={class:"pz-search-result-item-layout-main"},_={class:"pz-search-result-item-layout-aside"},r=m({name:"PzSearchResultItemLayout",__name:"PzSearchResultItemLayout",props:{as:{default:"li"},desktopColumns:{default:"minmax(0, 1fr) minmax(240px, 292px)"}},setup(e){const t=e,o=v(()=>({"--pz-search-result-item-layout-columns-lg":t.desktopColumns}));return(l,C)=>(g(),y(f(t.as),{class:"pz-search-result-item-layout",style:z(o.value)},{default:h(()=>[s("div",x,[s("div",S,[s("div",L,[i(l.$slots,"first-col",{},void 0,!0)]),s("div",_,[i(l.$slots,"second-col",{},void 0,!0)])])])]),_:3},8,["style"]))}}),c=b(r,[["__scopeId","data-v-1378e59b"]]);r.__docgenInfo=Object.assign({displayName:r.name??r.__name},{name:"PzSearchResultItemLayout",exportName:"default",displayName:"PzSearchResultItemLayout",description:"",tags:{},props:[{name:"as",required:!1,type:{name:"PzSearchResultItemLayoutTag"},defaultValue:{func:!1,value:'"li"'}},{name:"desktopColumns",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'"minmax(0, 1fr) minmax(240px, 292px)"'}}],slots:[{name:"first-col"},{name:"second-col"}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Layouts/PzSearchResultItemLayout/PzSearchResultItemLayout.vue"]});const I=["li","article","div"],P=[{id:"tenders",eyebrow:"Procurement results",title:"Tender search",resultLabel:"Знайдено більше 10 000 закупівель",sortLabel:"за замовчуванням",cards:[{id:"tender-1",title:"Вогнегасник ВП-5(з)",status:"Завершена",organization:'ДЕРЖАВНА УСТАНОВА "ЛУЦЬКИЙ СЛІДЧИЙ ІЗОЛЯТОР" • Луцьк',identifier:"ID: UA-2026-04-16-007213-a",metrics:[{id:"budget",label:"Очікувана вартість",value:"4 830,00 UAH",accent:"success"}]},{id:"tender-2",title:'Електрична енергія, без розподілу (постачальник "останньої надії")',status:"Підготовка угоди",organization:"Ратнівський дитячий садок №2 Ратнівської селищної ради • Ковельський р-н, селище міського типу Ратне",identifier:"ID: UA-2026-04-16-007209-a",metrics:[{id:"budget",label:"Очікувана вартість",value:"54 741,16 UAH",accent:"success"}]}]},{id:"qualifications",eyebrow:"Selection results",title:"Framework selection search",resultLabel:"Знайдено 470 відборів",sortLabel:"за замовчуванням",cards:[{id:"selection-1",title:"33730000-6 Офтальмологічні вироби та коригувальні лінзи",status:"Активний до 5 бер. 23:00",organization:"",identifier:"ID: UA-F-2026-04-06-000001",metrics:[{id:"clarification",label:"Уточнення до:",value:"20 квіт. 23:00"},{id:"published",label:"Оголошено:",value:"6 квіт. 2026"}]},{id:"selection-2",title:"33650000-1 Загальні протиінфекційні засоби для системного застосування",status:"Активний до 13 лют. 23:00",organization:"",identifier:"ID: UA-F-2026-03-17-000001",metrics:[{id:"clarification",label:"Уточнення до:",value:"31 бер. 23:00"},{id:"published",label:"Оголошено:",value:"17 бер. 2026"}]}]},{id:"plans",eyebrow:"Planning results",title:"Annual plan search",resultLabel:"Знайдено більше 10 000 планів",sortLabel:"за замовчуванням",cards:[{id:"plan-1",title:"ДК 021:2015 по коду: 22460000-2 Рекламні матеріали, каталоги товарів та посібники",status:"22460000-2: Рекламні матеріали, каталоги товарів та посібники",organization:"Державний ліцей з посиленою військово-фізичною підготовкою «Слобожанський»",identifier:"ID: UA-P-2026-04-16-009442-a",metrics:[{id:"budget",label:"Планова сума закупівлі",value:"700,00 UAH",accent:"success"},{id:"date",label:"Планова дата",value:"березень 2026"}]},{id:"plan-2",title:"Членський внесок за 2026 рік",status:"98100000-4: Послуги членських організацій",organization:"Ганнівська сільська рада Новоукраїнського району Кіровоградської області",identifier:"ID: UA-P-2026-04-16-009435-a",metrics:[{id:"budget",label:"Планова сума закупівлі",value:"3 572,00 UAH",accent:"success"},{id:"date",label:"Планова дата",value:"квітень 2026"}]}]}],k=e=>`<template>
|
|
2
2
|
<PzSearchResultItemLayout ${[e.as&&e.as!=="li"?`as="${e.as}"`:null,e.desktopColumns&&e.desktopColumns!=="minmax(0, 1fr) minmax(240px, 292px)"?`desktop-columns="${e.desktopColumns}"`:null].filter(o=>!!o).join(" ")}>
|
|
3
3
|
<template #first-col>
|
|
4
4
|
<a href="#">Result title</a>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as O,f as m,E as f,y as p,C as d,n as S,g as b,c as s,o as g,u as v,F as $,G as D,z as V,D as P,t as _,L,r as I}from"./iframe-C7ETNRpQ.js";import{u as T}from"./index-GLpND2lK.js";import{k as W}from"./floating-vue-btbGatfK.js";import{l as q}from"./lodash-CdDiHlzQ.js";import{_ as A}from"./PzIcon-BcyUoNpX.js";import{P as R}from"./PzLabel-DMn13NsD.js";import{_ as j}from"./_plugin-vue_export-helper-DlAUqK2U.js";const G=6,M=["id"],Z=["id","disabled","aria-controls","aria-expanded","aria-label"],H={class:"pz-select-trigger-text"},J=["id","aria-labelledby"],K=["id","aria-selected","disabled","onClick"],o=O({name:"PzSelect",__name:"PzSelect",props:{name:{},options:{},modelValue:{type:[String,Number,Boolean],default:void 0},label:{default:""},placeholder:{default:""},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},variant:{default:"field"},width:{default:void 0}},emits:["update:modelValue"],setup(l,{emit:x}){const a=l,E=x,y=I(null),{width:N}=T(y),i=s(()=>a.options.find(e=>q.isEqual(e.value,a.modelValue))),u=s(()=>a.variant==="field"),k=s(()=>{var e;return((e=i.value)==null?void 0:e.label)??a.placeholder}),C=s(()=>{var e;return a.label||((e=i.value)==null?void 0:e.label)||a.placeholder||a.name}),w=s(()=>{const e=Math.round(N.value);return!e||!u.value?{}:{inlineSize:`${String(e)}px`}}),c=e=>q.isEqual(e,a.modelValue),h=(e,r)=>e.id??`${a.name}-trigger-option-${String(r+1)}`,B=e=>({option:e,selected:c(e.value),disabled:!!e.disabled}),F=(e,r)=>{E("update:modelValue",e),r()};return(e,r)=>(g(),m("div",{id:l.name,class:b(["pz-select",{"is-field":u.value,"is-inline":!u.value}]),style:S({width:l.width})},[f(d(R),{label:a.label,for:l.name+"-trigger",required:a.required,disabled:a.disabled},{default:p(()=>[f(d(W),{class:"pz-select-dropdown",theme:"dropdown",placement:"bottom-start",container:"#"+l.name,distance:d(G),disabled:a.disabled},{default:p(({shown:n})=>[v("button",{id:l.name+"-trigger",ref_key:"triggerRef",ref:y,type:"button",class:b(["pz-select-trigger",{"is-open":n,"is-placeholder":!i.value}]),disabled:a.disabled,"aria-controls":l.name+"-menu","aria-expanded":n?"true":"false","aria-haspopup":"listbox","aria-label":a.label?void 0:C.value},[v("span",H,[V(e.$slots,"selected",{option:i.value,placeholder:a.placeholder},()=>[P(_(k.value),1)],!0)]),f(d(A),{name:"expand_more",size:"20",class:"pz-select-trigger-icon"})],10,Z)]),popper:p(({hide:n})=>[v("div",{id:l.name+"-menu",class:"pz-select-menu",style:S(w.value),role:"listbox","aria-labelledby":l.name+"-trigger"},[(g(!0),m($,null,D(a.options,(t,z)=>(g(),m("button",{id:h(t,z),key:h(t,z),type:"button",role:"option",class:b(["pz-select-option",{"is-active":c(t.value),"is-disabled":t.disabled}]),"aria-selected":c(t.value)?"true":"false",disabled:t.disabled,onClick:Q=>F(t.value,n)},[V(e.$slots,"default",L({ref_for:!0},B(t)),()=>[P(_(t.label),1)],!0)],10,K))),128))],12,J)]),_:3},8,["container","distance","disabled"])]),_:3},8,["label","for","required","disabled"])],14,M))}}),se=j(o,[["__scopeId","data-v-c794c950"]]);o.__docgenInfo=Object.assign({displayName:o.name??o.__name},{name:"PzSelect",exportName:"default",displayName:"PzSelect",description:"",tags:{},props:[{name:"name",required:!0,type:{name:"string"}},{name:"options",required:!0,type:{name:"Array",elements:[{name:"PzFormSelectOption"}]}},{name:"modelValue",required:!1,type:{name:"PzFormSelectValue"},defaultValue:{func:!1,value:"undefined"}},{name:"label",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}},{name:"placeholder",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}},{name:"disabled",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"required",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"variant",required:!1,type:{name:"PzSelectVariant"},defaultValue:{func:!1,value:'"field"'}},{name:"width",required:!1,type:{name:"string"},defaultValue:{func:!1,value:"undefined"}}],slots:[{name:"selected",scoped:!0,bindings:[{name:"option",title:"binding"},{name:"placeholder",title:"binding"}]},{name:"default",scoped:!0,bindings:[]}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Form/PzSelect/PzSelect.vue"]});export{se as P};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as t,w as S}from"./iframe-
|
|
1
|
+
import{r as t,w as S}from"./iframe-C7ETNRpQ.js";import{_ as h}from"./PzIcon-BcyUoNpX.js";import{P as b}from"./PzText-DpNgd6Nx.js";import{P as n}from"./PzSelect-B1drX3sx.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./index-GLpND2lK.js";import"./floating-vue-btbGatfK.js";import"./lodash-CdDiHlzQ.js";import"./_commonjsHelpers-Cpj98o6Y.js";import"./PzLabel-DMn13NsD.js";const O=["field","inline"],i=[{label:"Option 0",value:0},{label:"Option 1",value:1},{label:"Option 2",value:2},{label:"Option 3",value:3},{label:"Option 4",value:4},{label:"Option 5",value:5},{label:"Option 6",value:6},{label:"Option 7",value:7},{label:"Option 8",value:8},{label:"Option 9",value:9}],V=[{label:"Чернетка",value:"draft"},{label:"Активний тендер",value:"active"},{label:"Архів",value:"archive"}],P=[{label:"Пропозиція з коротким формулюванням",value:"short"},{label:"Пропозиція з довшою назвою для перевірки перенесення і ширини меню",value:"long"},{label:"Недоступний варіант",value:"disabled",disabled:!0}],r=3,k=e=>`<template>
|
|
2
2
|
<PzSelect
|
|
3
3
|
v-model="value"
|
|
4
4
|
${[`name="${e.name}"`,e.label?`label="${e.label}"`:null,e.placeholder?`placeholder="${e.placeholder}"`:null,e.variant!=="field"?`variant="${e.variant}"`:null,e.required?':required="true"':null,e.disabled?':disabled="true"':null].filter(a=>!!a).join(" ")}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as s,f as l,n as o,g as r,c as i,o as u}from"./iframe-
|
|
1
|
+
import{e as s,f as l,n as o,g as r,c as i,o as u}from"./iframe-C7ETNRpQ.js";import{_ as d}from"./_plugin-vue_export-helper-DlAUqK2U.js";const e=s({name:"PzSkeleton",__name:"PzSkeleton",props:{width:{default:"100%"},height:{default:"16px"},radius:{default:"8px"},animated:{type:Boolean,default:!0}},setup(t){const a=t,n=i(()=>({width:a.width,height:a.height,borderRadius:a.radius}));return(p,c)=>(u(),l("div",{class:r(["pz-skeleton",{"pz-skeleton--static":!t.animated}]),style:o(n.value),"aria-hidden":"true"},null,6))}}),h=d(e,[["__scopeId","data-v-f3a7d77e"]]);e.__docgenInfo=Object.assign({displayName:e.name??e.__name},{name:"PzSkeleton",exportName:"default",displayName:"PzSkeleton",description:"",tags:{},props:[{name:"width",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'"100%"'}},{name:"height",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'"16px"'}},{name:"radius",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'"8px"'}},{name:"animated",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"true"}}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Display/PzSkeleton/PzSkeleton.vue"]});export{h as P};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{P as r}from"./PzText-
|
|
1
|
+
import{P as r}from"./PzText-DpNgd6Nx.js";import{P as t}from"./PzSkeleton-CaNEKwvt.js";import"./iframe-C7ETNRpQ.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const h={title:"Components/Display/PzSkeleton",component:t,parameters:{prototype:{caption:"PzSkeleton",note:"Reusable loading placeholder for lines, blocks, and lightweight preview cards. Used by `PzAccordion` as the default loading surface."},docs:{description:{component:"Use `PzSkeleton` for loading placeholders. Control its dimensions through `width`, `height`, and `radius`, and disable shimmer with `animated=false` when a static placeholder is preferred."}}},args:{width:"240px",height:"24px",radius:"8px",animated:!0},argTypes:{width:{control:"text",description:"Skeleton width."},height:{control:"text",description:"Skeleton height."},radius:{control:"text",description:"Border radius."},animated:{control:"boolean",description:"Enables the shimmer animation."}},render:a=>({components:{pzSkeleton:t,pzText:r},setup(){return{args:a}},template:`
|
|
2
2
|
<div class="pz-skeleton-story">
|
|
3
3
|
<section class="pz-skeleton-story-board">
|
|
4
4
|
<div class="pz-skeleton-story-header">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as o,v as r,y as u,g as p,x as l,c,o as i,u as d,z as m}from"./iframe-
|
|
1
|
+
import{e as o,v as r,y as u,g as p,x as l,c,o as i,u as d,z as m}from"./iframe-C7ETNRpQ.js";import{_ as f}from"./_plugin-vue_export-helper-DlAUqK2U.js";const z=["auction-progress","auction-waiting","auction-success"],_={class:"pz-status__label"},s=o({name:"PzStatus",__name:"PzStatus",props:{variant:{default:"progress"},as:{default:"span"},typography:{}},setup(e){const a=e,t=c(()=>[`pz-status--${a.variant}`,a.typography?`pz-typography--${a.typography}`:null,{"pz-status--gradient":z.includes(a.variant)}]);return(n,y)=>(i(),r(l(a.as),{class:p(["pz-status",t.value])},{default:u(()=>[d("span",_,[m(n.$slots,"default",{},void 0,!0)])]),_:3},8,["class"]))}}),P=f(s,[["__scopeId","data-v-7325e2b7"]]);s.__docgenInfo=Object.assign({displayName:s.name??s.__name},{name:"PzStatus",exportName:"default",displayName:"PzStatus",description:"",tags:{},props:[{name:"variant",required:!1,type:{name:"PzStatusVariant"},defaultValue:{func:!1,value:'"progress"'}},{name:"as",required:!1,type:{name:"PzStatusTag"},defaultValue:{func:!1,value:'"span"'}},{name:"typography",required:!1,type:{name:"PzTextVariant"}}],slots:[{name:"default"}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Display/PzStatus/PzStatus.vue"]});export{P};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{P as l}from"./PzText-
|
|
1
|
+
import{P as l}from"./PzText-DpNgd6Nx.js";import{p as c}from"./configs-CtUh_XBV.js";import{P as s}from"./PzStatus-D3-Uq69j.js";import"./iframe-C7ETNRpQ.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const p=["inactive","hidden","active","monitoring","disabled","progress","auction-progress","auction-waiting","auction-success"],d=["span","div","li"],v=[{id:"hidden-review",variant:"hidden",label:"Очікує розгляду"},{id:"monitoring-accepted",variant:"monitoring",label:"Прийнято до розгляду"},{id:"inactive-without-review",variant:"inactive",label:"Залишено без розгляду"},{id:"inactive-stopped",variant:"inactive",label:"Розгляд припинено"},{id:"inactive-rejected",variant:"inactive",label:"Відмовлено в задоволенні"},{id:"active-satisfied",variant:"active",label:"Задоволено"},{id:"inactive-withdrawn",variant:"inactive",label:"Відкликано"},{id:"inactive-cancelled",variant:"inactive",label:"Скасовано"},{id:"active-fixed",variant:"active",label:"Порушення усунуто"}],u=[{id:"palette-hidden",variant:"hidden",label:"Текст"},{id:"palette-inactive",variant:"inactive",label:"Текст"},{id:"palette-active",variant:"active",label:"Текст"},{id:"palette-monitoring",variant:"monitoring",label:"Текст"},{id:"palette-disabled",variant:"disabled",label:"Текст"}],m=t=>`<template>
|
|
2
2
|
<PzStatus ${[t.variant!=="progress"?`variant="${t.variant}"`:null,t.as!=="span"?`as="${t.as}"`:null].filter(o=>!!o).join(" ")}>${t.label}</PzStatus>
|
|
3
3
|
</template>`,g={title:"Components/Display/PzStatus",component:s,parameters:{prototype:{caption:"Status component",note:"Aligned with Figma node 76:1113: compact filled badges with 3px radius, white label text, optional indicator, and multiline support."},docs:{description:{component:"Use `PzStatus` for semantic state labels. The component matches the design-system badge treatment from Figma and keeps semantic color variants, including gradient auction states."},source:{transform:(t,i)=>m(i.args??g.args)}}},args:{variant:"progress",as:"span",typography:void 0,label:"Очікує розгляду"},argTypes:{variant:{control:"select",options:p,description:"Semantic status variant."},as:{control:"select",options:d,description:"HTML tag used for the wrapper."},typography:{control:"select",options:[void 0,...c],description:"Overrides typography using a PzText variant."},label:{control:"text",description:"Slot content preview text.",table:{category:"Slots"}}},render:t=>({components:{pzStatus:s,pzText:l},setup(){return{args:t,statusReferenceItems:v,statusPaletteItems:u}},template:`
|
|
4
4
|
<div class="pz-status-story">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.pz-table-data[data-v-
|
|
1
|
+
.pz-table-data[data-v-06419358]{padding:var(--pz-space-16) var(--pz-space-8);text-align:left;vertical-align:top;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere}.pz-table-data[data-v-06419358]:first-child{padding-left:0}.pz-table-data[data-v-06419358]:last-child{padding-right:0}@media (max-width: 991.98px){.pz-table-data[data-v-06419358]{display:grid;gap:var(--pz-space-8);padding:0;width:auto!important;min-width:0;-webkit-hyphens:none;hyphens:none;overflow-wrap:break-word;word-break:normal}}.pz-table-data--bold[data-v-06419358]{-webkit-hyphens:auto;hyphens:auto;white-space:pre-line;overflow-wrap:break-word;font-size:var(--pz-table-data-font-size, var(--pz-typography-font-size, var(--pz-font-size-14)));font-weight:var(--pz-table-data-font-weight, var(--pz-typography-font-weight, 600));line-height:var(--pz-table-data-line-height, var(--pz-typography-line-height, 1.5))}.pz-table-data__title[data-v-06419358]{display:flex;align-items:start;justify-content:space-between;gap:var(--pz-space-8);color:var(--pz-color-text-primary);margin-top:0;margin-bottom:8px;-webkit-hyphens:auto;hyphens:auto;white-space:pre-line;overflow-wrap:break-word;font-size:var(--pz-table-data-title-font-size, var(--pz-typography-font-size, var(--pz-font-size-14)));font-weight:var(--pz-table-data-title-font-weight, var(--pz-typography-font-weight, 600));line-height:var(--pz-table-data-title-line-height, var(--pz-typography-line-height, 1.5))}@media (min-width: 992px){.pz-table-data__title[data-v-06419358]{display:none}}.pz-table-head[data-v-61184265]{padding:var(--pz-space-12) var(--pz-space-8) var(--pz-space-16);color:var(--pz-color-text-primary);text-align:left;vertical-align:top;-webkit-hyphens:auto;hyphens:auto;white-space:pre-line;overflow-wrap:break-word;font-size:var(--pz-table-head-font-size, var(--pz-typography-font-size, var(--pz-font-size-14)));font-weight:var(--pz-table-head-font-weight, var(--pz-typography-font-weight, 700));line-height:var(--pz-table-head-line-height, var(--pz-typography-line-height, 1.5))}.pz-table-head[data-v-61184265]:first-child{padding-left:0}.pz-table-head[data-v-61184265]:last-child{padding-right:0}.pz-table-head__hint[data-v-61184265]{margin-left:var(--pz-space-8);vertical-align:middle}.pz-table-wrap[data-v-ac7bfb59]{width:100%;overflow-x:auto}.pz-table[data-v-ac7bfb59]{width:100%;border-collapse:collapse;table-layout:fixed;color:var(--pz-color-text-primary);-webkit-hyphens:auto;hyphens:auto;white-space:pre-line;overflow-wrap:break-word;font-size:var(--pz-table-font-size, var(--pz-typography-font-size, var(--pz-font-size-14)));font-weight:var(--pz-table-font-weight, var(--pz-typography-font-weight, 400));line-height:var(--pz-table-line-height, var(--pz-typography-line-height, 1.5))}@media (max-width: 991.98px){.pz-table__head[data-v-ac7bfb59]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}}.pz-table--no-head>tbody>.pz-table__row[data-v-ac7bfb59]:first-child{border-top:1px solid var(--pz-color-stroke-grey)}.pz-table__row[data-v-ac7bfb59]{border-bottom:1px solid var(--pz-color-stroke-grey)}@media (max-width: 991.98px){.pz-table__row[data-v-ac7bfb59]{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--pz-space-8);padding-block:var(--pz-space-16)}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as C,o as a,f as l,g as V,u as r,t as P,C as d,v as z,q as N,z as D,F as f,D as S,c as v,I as $,G as _,n as H,K as w,y as W,L}from"./iframe-C7ETNRpQ.js";import{a as j}from"./PzMessages-CghyB4RL.js";import{l as E}from"./lodash-CdDiHlzQ.js";import{a as h}from"./PzTranslator-DDtI6blH.js";import{P as q}from"./PzInfoHint-cPEdyLDe.js";import{_ as k}from"./_plugin-vue_export-helper-DlAUqK2U.js";const R={class:"pz-table-data__title"},K=["innerHTML"],b=C({name:"PzTableData",__name:"PzTableData",props:{column:{},data:{default:void 0},defaultValue:{},isBold:{type:Boolean,default:!1}},setup(e){const o=e,u=v(()=>o.data??{}),s=v(()=>E.get(o.data,o.column.key)||o.defaultValue);return(c,B)=>{var m;return a(),l("td",{class:V(["pz-table-data",{"pz-table-data--bold":e.isBold}])},[r("p",R,[r("span",null,P(d(h)(e.column.mobileName)||d(h)(e.column.name)),1),(m=e.column.infoContent)!=null&&m.length?(a(),z(d(q),{key:0,"info-content":e.column.infoContent},null,8,["info-content"])):N("",!0)]),D(c.$slots,"default",{data:u.value,column:e.column,value:s.value},()=>[e.column.isContentHtml?(a(),l("span",{key:0,innerHTML:String(s.value)},null,8,K)):(a(),l(f,{key:1},[S(P(s.value),1)],64))],!0)],2)}}}),M=k(b,[["__scopeId","data-v-06419358"]]);b.__docgenInfo=Object.assign({displayName:b.name??b.__name},{name:"PzTableData",exportName:"default",displayName:"PzTableData",description:"",tags:{},props:[{name:"column",required:!0,type:{name:"PzTableColumn",elements:[{name:"TKey"}]}},{name:"data",required:!1,type:{name:"TRow"},defaultValue:{func:!1,value:"undefined"}},{name:"defaultValue",required:!0,type:{name:"string"}},{name:"isBold",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}}],slots:[{name:"default",scoped:!0,bindings:[{name:"data",title:"binding"},{name:"column",title:"binding"},{name:"value",title:"binding"}]}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Data/PzTable/PzTableData.vue"]});const A={class:"pz-table-head",scope:"col"},p=C({name:"PzTableHead",__name:"PzTableHead",props:{column:{}},setup(e){return(o,u)=>{var s;return a(),l("th",A,[r("span",null,P(d(h)(e.column.name)),1),(s=e.column.infoContent)!=null&&s.length?(a(),z(d(q),{key:0,"info-content":e.column.infoContent,class:"pz-table-head__hint"},null,8,["info-content"])):N("",!0)])}}}),O=k(p,[["__scopeId","data-v-61184265"]]);p.__docgenInfo=Object.assign({displayName:p.name??p.__name},{name:"PzTableHead",exportName:"default",displayName:"PzTableHead",description:"",tags:{},props:[{name:"column",required:!0,type:{name:"PzTableColumn"}}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Data/PzTable/PzTableHead.vue"]});const G={class:"pz-table-wrap"},U={key:0,class:"pz-table__head"},J={class:"pz-table__row pz-table__row--head"},Q=100,y=C({name:"PzTable",__name:"PzTable",props:{config:{},data:{},defaultValue:{},visibleHeader:{type:Boolean,default:!0},isBoldFirstColumn:{type:Boolean,default:!0}},setup(e){const o=$(),u=e,s=v(()=>u.defaultValue??j("data.pzTable.defaultValue")),c=({colWidth:n})=>({width:u.config.some(({colWidth:t})=>!!t)?`${n}%`:`${Math.floor(Q/u.config.length)}%`}),B=n=>!!o[n],m=n=>n,x=(n,g)=>{const{id:t}=n,T=typeof t=="string"||typeof t=="number";return"id"in n&&T?t:g};return(n,g)=>(a(),l("div",G,[r("table",{class:V(["pz-table",{"pz-table--no-head":!e.visibleHeader}])},[e.visibleHeader?(a(),l("thead",U,[r("tr",J,[(a(!0),l(f,null,_(e.config,t=>(a(),z(O,{key:t.id,column:t,style:H(c(t))},null,8,["column","style"]))),128))])])):N("",!0),r("tbody",null,[(a(!0),l(f,null,_(e.data,(t,T)=>(a(),l("tr",{key:x(t,T),class:"pz-table__row"},[(a(!0),l(f,null,_(e.config,(i,I)=>(a(),z(M,{key:i.id,column:i,data:t,"default-value":s.value,"is-bold":e.isBoldFirstColumn&&I===0,style:H(c(i))},w({_:2},[B(i.key)?{name:"default",fn:W(F=>[D(n.$slots,m(i.key),L({ref_for:!0},F),void 0,!0)]),key:"0"}:void 0]),1032,["column","data","default-value","is-bold","style"]))),128))]))),128))])],2)]))}}),ne=k(y,[["__scopeId","data-v-ac7bfb59"]]);y.__docgenInfo=Object.assign({displayName:y.name??y.__name},{name:"PzTable",exportName:"default",displayName:"PzTable",description:"",tags:{},props:[{name:"config",required:!0,type:{name:"Array",elements:[{name:"PzTableColumn",elements:[{name:"TKey"}]}]}},{name:"data",required:!0,type:{name:"Array",elements:[{name:"TRow"}]}},{name:"defaultValue",required:!1,type:{name:"string"}},{name:"visibleHeader",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"true"}},{name:"isBoldFirstColumn",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"true"}}],slots:[{name:"getSlotName(column.key)",scoped:!0,bindings:[{name:"name",title:"binding"}]}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Data/PzTable/PzTable.vue"]});export{ne as P,O as a,M as b};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{P}from"./PzLink-
|
|
1
|
+
import{P}from"./PzLink-BZnsXkWP.js";import{P as S}from"./PzTag-DgTwGfCR.js";import{P as r}from"./PzText-DpNgd6Nx.js";import{P as k}from"./PzTable-DTSOUdXZ.js";import"./iframe-C7ETNRpQ.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./PzMessages-CghyB4RL.js";import"./lodash-CdDiHlzQ.js";import"./_commonjsHelpers-Cpj98o6Y.js";import"./PzTranslator-DDtI6blH.js";import"./PzInfoHint-cPEdyLDe.js";import"./PzIcon-BcyUoNpX.js";import"./PzHint-l-9DaqXy.js";import"./floating-vue-btbGatfK.js";import"./floating-vue-BKNZm4Jb.js";const i="—",l=k,w=k,C=[{id:"name",name:"Назва",key:"name",colWidth:22},{id:"classification",name:"Класифікатор та його відповідний код",key:"classification",colWidth:30},{id:"quantity",name:"Кількість/Одиниці виміру",key:"quantity",colWidth:14},{id:"deliveryLocation",name:"Місце поставки",key:"deliveryLocation",colWidth:18},{id:"deliveryDate",name:"Дата поставки",key:"deliveryDate",colWidth:16}],T=[{id:"item-1",name:"Швидкозшивач пласт. E31509, 31511",classification:"ДК 021:2015: 30190000-7 — Офісне устаткування та приладдя різне",quantity:"100 штука",deliveryLocation:"79025, Україна, Львівська область, Львів, вул.Левандівська, будинок 17-В",deliveryDate:"до 30 грудня 2026"},{id:"item-2",name:"Ручка масляна, 0,7мм, PT-195, Piano",classification:"ДК 021:2015: 30190000-7 — Офісне устаткування та приладдя різне",quantity:"150 штука",deliveryLocation:"79025, Україна, Львівська область, Львів, вул.Левандівська, будинок 17-В",deliveryDate:"до 30 грудня 2026"},{id:"item-3",name:"Папка А4 КОШЕНЯ 34,527,51см, верт. 2 ручки",classification:"ДК 021:2015: 30190000-7 — Офісне устаткування та приладдя різне",quantity:"30 штука",deliveryLocation:"79025, Україна, Львівська область, Львів, вул.Левандівська, будинок 17-В",deliveryDate:"до 30 грудня 2026"}],x=[{id:"name",name:"Назва",key:"name",colWidth:18},{id:"classification",name:"Класифікатор та його відповідний код",key:"classification",colWidth:24},{id:"quantity",name:"Кількість/Одиниці виміру",key:"quantity",colWidth:14},{id:"price",name:"Ціна за одиницю",key:"price",colWidth:14},{id:"deliveryLocation",name:"Місце поставки",key:"deliveryLocation",colWidth:18},{id:"deliveryDate",name:"Дата поставки",key:"deliveryDate",colWidth:12}],W=T.map(t=>({...t,price:null})),L=[{id:"event",name:"Подія",key:"event",colWidth:18},{id:"type",name:"Тип",key:"type",colWidth:18},{id:"reason",name:"Підстава",key:"reason",colWidth:18},{id:"period",name:"Період, (днів)",key:"period",colWidth:16},{id:"daysType",name:"Тип днів",key:"daysType",colWidth:15},{id:"amount",name:"Розмір, (%)",key:"amount",colWidth:15}],D=[{id:"payment-1",event:"Оплата",type:"Пiсляоплата",reason:"поставка товару",period:10,daysType:"робочі",amount:100},{id:"payment-2",event:"Поставка",type:"Одноразова поставка",reason:"подання заявки",period:10,daysType:"робочі",amount:100}],A=[{id:"supplier",name:"Постачальник",key:"supplier",colWidth:28},{id:"contractId",name:"Договір",key:"contractId",colWidth:20},{id:"amount",name:"Сума",key:"amount",colWidth:18},{id:"status",name:"Статус",key:"statusLabel",colWidth:18},{id:"updatedAt",name:"Оновлено",key:"updatedAt",colWidth:16}],U=[{id:"contract-01",supplier:{name:"ТОВ «Офіс-Постач»",href:"https://prozorro.gov.ua"},contractId:"UA-2026-04-17-000001",amount:128340.5,status:"active",statusLabel:"Активний",updatedAt:"17.04.2026"},{id:"contract-02",supplier:{name:"ФОП Іваненко Ірина",href:"https://prozorro.gov.ua"},contractId:"UA-2026-04-17-000002",amount:68400,status:"hidden",statusLabel:"Очікує підтвердження",updatedAt:"16.04.2026"}],E=`<template>
|
|
2
2
|
<PzTable
|
|
3
3
|
:config="config"
|
|
4
4
|
:data="data"
|
|
@@ -47,7 +47,7 @@ const data: PzTableRow[] = [
|
|
|
47
47
|
</PzTag>
|
|
48
48
|
</template>
|
|
49
49
|
</PzTable>
|
|
50
|
-
</template>`,
|
|
50
|
+
</template>`,te={title:"Components/Data/PzTable",component:w,parameters:{prototype:{caption:"PzTable",note:"Three-part table structure based on the original prototype, refined only where needed for tokens, docs, and Storybook examples."},docs:{description:{component:"Use `PzTable` for procurement-style tabular data. Configure columns through `config`, provide rows through `data`, and override cell rendering with named slots that match `column.key`."}}},args:{config:C,data:T,defaultValue:i,visibleHeader:!0,isBoldFirstColumn:!0},argTypes:{config:{control:!1,description:"Column configuration array. Use `name`, `key`, and optional `colWidth`, `mobileName`, `infoContent`, `slot`, and `isContentHtml`."},data:{control:!1,description:"Table rows resolved by `column.key`."},defaultValue:{control:"text",description:"Fallback content for empty cells."},visibleHeader:{control:"boolean",description:"Shows or hides the desktop header row."},isBoldFirstColumn:{control:"boolean",description:"Makes the first column semibold."}}},a={parameters:{docs:{source:{code:E}}},render:t=>({components:{pzTable:l,pzText:r},setup(){return{args:t}},template:`
|
|
51
51
|
<div class="pz-table-story">
|
|
52
52
|
<section class="pz-table-story-board">
|
|
53
53
|
<div class="pz-table-story-header">
|
|
@@ -350,4 +350,4 @@ const data: PzTableRow[] = [
|
|
|
350
350
|
</div>
|
|
351
351
|
\`
|
|
352
352
|
})
|
|
353
|
-
}`,...(f=(h=s.parameters)==null?void 0:h.docs)==null?void 0:f.source}}};const
|
|
353
|
+
}`,...(f=(h=s.parameters)==null?void 0:h.docs)==null?void 0:f.source}}};const ae=["Playground","ProcurementWithPrice","PaymentSchedule","CustomSlots"];export{s as CustomSlots,o as PaymentSchedule,a as Playground,n as ProcurementWithPrice,ae as __namedExportsOrder,te as default};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import{P}from"./PzTable-DTSOUdXZ.js";import{P as u}from"./PzText-DpNgd6Nx.js";import{e as b,f as v,z,C as t,v as T,q as f,o as r}from"./iframe-C7ETNRpQ.js";import{I as y,P as _}from"./PzListNav-Bg-BQRg3.js";import{u as h}from"./StaticPagination.composable-6pG0lq38.js";import"./PzMessages-CghyB4RL.js";import"./lodash-CdDiHlzQ.js";import"./_commonjsHelpers-Cpj98o6Y.js";import"./PzTranslator-DDtI6blH.js";import"./PzInfoHint-cPEdyLDe.js";import"./PzIcon-BcyUoNpX.js";import"./PzHint-l-9DaqXy.js";import"./floating-vue-btbGatfK.js";import"./floating-vue-BKNZm4Jb.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./preload-helper-C1FmrZbK.js";import"./PzSelect-B1drX3sx.js";import"./index-GLpND2lK.js";import"./PzLabel-DMn13NsD.js";import"./PzPagination-zkV-BSCC.js";const n=b({name:"PzTablePaginationProvider",__name:"PzTablePaginationProvider",props:{perPage:{default:y.FIVE},data:{}},setup(e){const a=e,{perPage:l,pageChanged:m,getItems:d,isPaginationAvailable:g}=h(a);return(c,k)=>(r(),v("div",null,[z(c.$slots,"default",{items:t(d)}),t(g)?(r(),T(t(_),{key:0,total:e.data.length,"per-page":t(l),class:"pz-mt-32",onOnInput:t(m)},null,8,["total","per-page","onOnInput"])):f("",!0)]))}});n.__docgenInfo=Object.assign({displayName:n.name??n.__name},{name:"PzTablePaginationProvider",exportName:"default",displayName:"PzTablePaginationProvider",description:"",tags:{},props:[{name:"perPage",defaultValue:{func:!1,value:"ITEMS_PER_PAGE.FIVE"}}],slots:[{name:"default",scoped:!0,bindings:[{name:"items",title:"binding"}]}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Navigation/PzTablePaginationProvider/PzTablePaginationProvider.vue"]});const S=n,C=n,x=P,E=[{id:"name",name:"Назва",key:"name",colWidth:40},{id:"quantity",name:"Кількість",key:"quantity",colWidth:30},{id:"deliveryDate",name:"Дата поставки",key:"deliveryDate",colWidth:30}],I=12,N=10,w=Array.from({length:I},(e,a)=>({id:`item-${a+1}`,name:`Товар №${a+1}`,quantity:`${(a+1)*N} штука`,deliveryDate:"до 30 грудня 2026"})),X={title:"Components/Navigation/PzTablePaginationProvider",component:C,parameters:{docs:{description:{component:"Generic static-pagination wrapper for tabular data. Slices `data` into pages, exposes the current page array through the default `items` slot prop, and renders `PzListNav` when the data exceeds `perPage`. Here it is typed as `PzTableRow` and feeds a `PzTable`."}}},args:{data:w,perPage:5},argTypes:{data:{control:!1,description:"Full row array; the provider paginates it internally."},perPage:{control:{type:"number",min:1},description:"Rows per page."}}},o={render:e=>({components:{pzTablePaginationProvider:S,pzTable:x,pzText:u},setup(){return{args:e,config:E}},template:`
|
|
2
|
+
<div style="max-width: 720px;">
|
|
3
|
+
<pz-table-pagination-provider :data="args.data" :per-page="args.perPage">
|
|
4
|
+
<template #default="{ items }">
|
|
5
|
+
<pz-table :config="config" :data="items" />
|
|
6
|
+
</template>
|
|
7
|
+
</pz-table-pagination-provider>
|
|
8
|
+
</div>
|
|
9
|
+
`})};var i,p,s;o.parameters={...o.parameters,docs:{...(i=o.parameters)==null?void 0:i.docs,source:{originalSource:`{
|
|
10
|
+
render: (args: PzTablePaginationProviderStoryArgs) => ({
|
|
11
|
+
components: {
|
|
12
|
+
pzTablePaginationProvider: pzTablePaginationProviderStoryComponent,
|
|
13
|
+
pzTable: pzTableStoryComponent,
|
|
14
|
+
pzText: PzText
|
|
15
|
+
},
|
|
16
|
+
setup() {
|
|
17
|
+
return {
|
|
18
|
+
args,
|
|
19
|
+
config
|
|
20
|
+
};
|
|
21
|
+
},
|
|
22
|
+
template: \`
|
|
23
|
+
<div style="max-width: 720px;">
|
|
24
|
+
<pz-table-pagination-provider :data="args.data" :per-page="args.perPage">
|
|
25
|
+
<template #default="{ items }">
|
|
26
|
+
<pz-table :config="config" :data="items" />
|
|
27
|
+
</template>
|
|
28
|
+
</pz-table-pagination-provider>
|
|
29
|
+
</div>
|
|
30
|
+
\`
|
|
31
|
+
})
|
|
32
|
+
}`,...(s=(p=o.parameters)==null?void 0:p.docs)==null?void 0:s.source}}};const Z=["Playground"];export{o as Playground,Z as __namedExportsOrder,X as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.pz-tabs-story{display:grid;gap:var(--pz-space-24)}.pz-tabs-story-gallery{display:grid;gap:var(--pz-space-16)}.pz-tabs-story-frame{display:grid;gap:var(--pz-space-16);padding:var(--pz-space-24);border:1px solid color-mix(in srgb,var(--pz-color-grey-30) 74%,transparent);border-radius:var(--pz-space-24);background:radial-gradient(circle at top right,color-mix(in srgb,var(--pz-color-blue-50) 8%,transparent),transparent 36%),linear-gradient(180deg,color-mix(in srgb,var(--pz-color-white) 98%,transparent),color-mix(in srgb,var(--pz-color-grey-20) 90%,var(--pz-color-white)))}.pz-tabs-story-header{display:flex;align-items:start;justify-content:space-between;gap:var(--pz-space-16)}.pz-tabs-story-eyebrow,.pz-tabs-story-chip{display:inline-flex;align-items:center;width:fit-content;padding:var(--pz-space-8) var(--pz-space-16);border-radius:999px;background:color-mix(in srgb,var(--pz-color-blue-10) 92%,var(--pz-color-white));color:var(--pz-color-text-link-hover);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.pz-tabs-story-grid{display:grid;grid-template-columns:1fr;gap:var(--pz-space-16)}.pz-tabs-story-card{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:var(--pz-space-20);padding:var(--pz-space-20);border:1px solid color-mix(in srgb,var(--pz-color-grey-30) 74%,transparent);border-radius:var(--pz-space-20);background:color-mix(in srgb,var(--pz-color-white) 96%,transparent);box-shadow:0 12px 32px color-mix(in srgb,var(--pz-color-black-90) 5%,transparent)}.pz-tabs-story-card-surface{border-radius:var(--pz-space-16)}.pz-tabs-story-panel{display:grid;gap:var(--pz-space-16);padding:var(--pz-space-24)}.pz-tabs-story-copy,.pz-tabs-story-panel-head{display:grid;gap:var(--pz-space-12)}.pz-tabs-story-panel-head{padding-bottom:var(--pz-space-16);border-bottom:1px solid rgba(91,69,37,.16)}.pz-tabs-story-meta{display:inline-flex;align-items:center;gap:var(--pz-space-12);flex-wrap:wrap;color:#5b4525c7}.pz-tabs-story-bullet{width:4px;height:4px;border-radius:999px;background:currentcolor}.pz-tabs-story-tag{display:inline-flex;align-items:center;gap:var(--pz-space-8);padding:6px var(--pz-space-12);border:1px solid rgba(91,69,37,.18);border-radius:var(--pz-space-4);background:#fffcf4b8;color:#5b4525db;font-size:var(--pz-font-size-12);line-height:1}.pz-tabs-story-muted{color:var(--pz-color-text-secondary);text-decoration:line-through}.pz-tabs-story-stack{display:grid;gap:var(--pz-space-12)}.pz-tabs-story-poem{display:grid;gap:var(--pz-space-16)}.pz-tabs-story-stanza{display:grid;gap:var(--pz-space-4);padding-left:var(--pz-space-16);border-left:2px solid rgba(91,69,37,.14)}.pz-tabs-story-poem-line{color:#352512eb}.pz-tabs-story-note{color:#5b4525b8}.pz-tabs-story-example-copy{display:grid;align-content:start;gap:var(--pz-space-12)}.pz-tabs-story-example-surface{display:grid;gap:var(--pz-space-16)}.pz-tabs-story-kpi-list{display:grid;gap:1px;background:color-mix(in srgb,var(--pz-color-grey-30) 80%,transparent)}.pz-tabs-story-kpi{display:grid;grid-template-columns:auto 1fr;gap:var(--pz-space-12);align-items:center;padding:var(--pz-space-16);background:var(--pz-color-background-primary)}.pz-tabs-story-kpi-value{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:var(--pz-space-8) var(--pz-space-12);border-radius:var(--pz-space-4);background:color-mix(in srgb,var(--pz-color-blue-10) 88%,var(--pz-color-white));color:var(--pz-color-text-link-hover);font-size:var(--pz-font-size-14);font-weight:700}.pz-tabs-story-narrow{width:min(100%,360px)}@media (width <= 768px){.pz-tabs-story-header{flex-direction:column}.pz-tabs-story-card{grid-template-columns:1fr}}.pz-tab[data-v-
|
|
1
|
+
.pz-tabs-story{display:grid;gap:var(--pz-space-24)}.pz-tabs-story-gallery{display:grid;gap:var(--pz-space-16)}.pz-tabs-story-frame{display:grid;gap:var(--pz-space-16);padding:var(--pz-space-24);border:1px solid color-mix(in srgb,var(--pz-color-grey-30) 74%,transparent);border-radius:var(--pz-space-24);background:radial-gradient(circle at top right,color-mix(in srgb,var(--pz-color-blue-50) 8%,transparent),transparent 36%),linear-gradient(180deg,color-mix(in srgb,var(--pz-color-white) 98%,transparent),color-mix(in srgb,var(--pz-color-grey-20) 90%,var(--pz-color-white)))}.pz-tabs-story-header{display:flex;align-items:start;justify-content:space-between;gap:var(--pz-space-16)}.pz-tabs-story-eyebrow,.pz-tabs-story-chip{display:inline-flex;align-items:center;width:fit-content;padding:var(--pz-space-8) var(--pz-space-16);border-radius:999px;background:color-mix(in srgb,var(--pz-color-blue-10) 92%,var(--pz-color-white));color:var(--pz-color-text-link-hover);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.pz-tabs-story-grid{display:grid;grid-template-columns:1fr;gap:var(--pz-space-16)}.pz-tabs-story-card{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:var(--pz-space-20);padding:var(--pz-space-20);border:1px solid color-mix(in srgb,var(--pz-color-grey-30) 74%,transparent);border-radius:var(--pz-space-20);background:color-mix(in srgb,var(--pz-color-white) 96%,transparent);box-shadow:0 12px 32px color-mix(in srgb,var(--pz-color-black-90) 5%,transparent)}.pz-tabs-story-card-surface{border-radius:var(--pz-space-16)}.pz-tabs-story-panel{display:grid;gap:var(--pz-space-16);padding:var(--pz-space-24)}.pz-tabs-story-copy,.pz-tabs-story-panel-head{display:grid;gap:var(--pz-space-12)}.pz-tabs-story-panel-head{padding-bottom:var(--pz-space-16);border-bottom:1px solid rgba(91,69,37,.16)}.pz-tabs-story-meta{display:inline-flex;align-items:center;gap:var(--pz-space-12);flex-wrap:wrap;color:#5b4525c7}.pz-tabs-story-bullet{width:4px;height:4px;border-radius:999px;background:currentcolor}.pz-tabs-story-tag{display:inline-flex;align-items:center;gap:var(--pz-space-8);padding:6px var(--pz-space-12);border:1px solid rgba(91,69,37,.18);border-radius:var(--pz-space-4);background:#fffcf4b8;color:#5b4525db;font-size:var(--pz-font-size-12);line-height:1}.pz-tabs-story-muted{color:var(--pz-color-text-secondary);text-decoration:line-through}.pz-tabs-story-stack{display:grid;gap:var(--pz-space-12)}.pz-tabs-story-poem{display:grid;gap:var(--pz-space-16)}.pz-tabs-story-stanza{display:grid;gap:var(--pz-space-4);padding-left:var(--pz-space-16);border-left:2px solid rgba(91,69,37,.14)}.pz-tabs-story-poem-line{color:#352512eb}.pz-tabs-story-note{color:#5b4525b8}.pz-tabs-story-example-copy{display:grid;align-content:start;gap:var(--pz-space-12)}.pz-tabs-story-example-surface{display:grid;gap:var(--pz-space-16)}.pz-tabs-story-kpi-list{display:grid;gap:1px;background:color-mix(in srgb,var(--pz-color-grey-30) 80%,transparent)}.pz-tabs-story-kpi{display:grid;grid-template-columns:auto 1fr;gap:var(--pz-space-12);align-items:center;padding:var(--pz-space-16);background:var(--pz-color-background-primary)}.pz-tabs-story-kpi-value{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:var(--pz-space-8) var(--pz-space-12);border-radius:var(--pz-space-4);background:color-mix(in srgb,var(--pz-color-blue-10) 88%,var(--pz-color-white));color:var(--pz-color-text-link-hover);font-size:var(--pz-font-size-14);font-weight:700}.pz-tabs-story-narrow{width:min(100%,360px)}@media (width <= 768px){.pz-tabs-story-header{flex-direction:column}.pz-tabs-story-card{grid-template-columns:1fr}}.pz-tab[data-v-6f90bbab]{width:100%}.pz-tabs[data-v-0f3d0b3b]{--pz-tabs-bg: var(--pz-color-background-frame);--pz-tabs-bg-active-tab: var(--pz-color-background-frame);--pz-tabs-color-active-tab: var(--pz-color-text-primary);--pz-tabs-item-font-weight: 600;--pz-tabs-wrapper-radius: 16px;--pz-tabs-inner-radius: 12px;display:grid;gap:0;width:100%;border-radius:var(--pz-tabs-wrapper-radius)}.pz-tabs--light[data-v-0f3d0b3b]{--pz-tabs-bg: var(--pz-color-background-primary);--pz-tabs-bg-active-tab: var(--pz-color-background-primary)}.pz-tabs__nav[data-v-0f3d0b3b]{display:flex;align-items:center;width:100%;margin:0;padding:0;list-style:none}@media (max-width: 991.98px){.pz-tabs__nav[data-v-0f3d0b3b]{overflow-x:auto;scrollbar-color:var(--pz-color-grey-30) var(--pz-tabs-bg-active-tab)}}.pz-tabs__item[data-v-0f3d0b3b]{padding:12px 24px;border-radius:var(--pz-tabs-inner-radius) var(--pz-tabs-inner-radius) 0 0;color:var(--pz-color-text-link);cursor:pointer;font-size:var(--pz-font-size-14);font-weight:var(--pz-tabs-item-font-weight);transition:all .2s}@media (max-width: 991.98px){.pz-tabs__item[data-v-0f3d0b3b]{display:list-item;white-space:nowrap}}.pz-tabs__item.active[data-v-0f3d0b3b]{color:var(--pz-tabs-color-active-tab);background-color:var(--pz-tabs-bg-active-tab)}@media (max-width: 991.98px){.pz-tabs__item.active[data-v-0f3d0b3b]{--pz-tabs-item-font-weight: 700}}.pz-tabs__content[data-v-0f3d0b3b]{width:100%;border-radius:0 var(--pz-tabs-inner-radius) var(--pz-tabs-inner-radius) var(--pz-tabs-inner-radius);background-color:var(--pz-tabs-bg)}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{P as T}from"./PzText-
|
|
2
|
-
<PzTabs ${
|
|
1
|
+
import{P as T}from"./PzText-DpNgd6Nx.js";import{e as q,a5 as f,w as G,a6 as Q,A as J,B as X,a7 as Y,f as m,z as F,r as Z,o as u,k as K,i as tt,u as _,F as at,G as st,n as et,g as k,h as nt,c as rt,t as pt,C as ot,a8 as P}from"./iframe-C7ETNRpQ.js";import{_ as M}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{a as it}from"./PzTranslator-DDtI6blH.js";import"./preload-helper-C1FmrZbK.js";const lt=["","light"];var r=(t=>(t.INIT_TAB="init-tab",t.TABS_STATE="tabs-state",t.REMOVE_TAB="remove-tab",t))(r||{});const zt={class:"pz-tab"},x=q({name:"PzTab",__name:"PzTab",props:{name:{type:[String,Function],default:"Tab"},selected:{type:Boolean,default:!1},id:{default:void 0}},setup(t){const a=t,p=K(),i=Z(!1),o=f(r.REMOVE_TAB,void 0),s=f(r.TABS_STATE,void 0),e=f(r.INIT_TAB,void 0),n={get id(){return a.id??`pz-tab-${(p==null?void 0:p.uid)??a.name}`},get name(){return a.name}};return G(()=>s==null?void 0:s.activeTab,z=>{i.value=a.name===z}),Q(()=>{e==null||e(n),i.value=a.selected}),J(()=>o==null?void 0:o(n)),(z,xt)=>X((u(),m("div",zt,[F(z.$slots,"default",{},void 0,!0)],512)),[[Y,i.value]])}}),h=M(x,[["__scopeId","data-v-6f90bbab"]]);x.__docgenInfo=Object.assign({displayName:x.name??x.__name},{name:"PzTab",exportName:"default",displayName:"PzTab",description:"",tags:{},props:[{name:"name",required:!1,type:{name:"PzTranslatorText"},defaultValue:{func:!1,value:'"Tab"'}},{name:"selected",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"id",required:!1,type:{name:"string"},defaultValue:{func:!1,value:"undefined"}}],slots:[{name:"default"}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Layouts/PzTabs/PzTab.vue"]});const bt={class:"pz-tabs__nav"},dt=["onClick"],ct={class:"pz-tabs__content"},g=q({name:"PzTabs",__name:"PzTabs",props:{skin:{default:""},maxWidth:{default:""}},setup(t){const a=nt({tabs:[],activeTab:""}),p=t,i=rt(()=>p.skin?`pz-tabs--${p.skin}`:"");P(r.TABS_STATE,a),P(r.INIT_TAB,s=>a.tabs.push(s)),P(r.REMOVE_TAB,s=>{a.tabs=a.tabs.filter(e=>e.id!==s.id),o()}),tt(()=>o());const o=()=>{var e;const[{name:s}={name:""}]=a.tabs.filter(({selected:n})=>n);a.activeTab=s||((e=a.tabs[0])==null?void 0:e.name)||""};return(s,e)=>(u(),m("div",{class:k(["pz-tabs",i.value]),style:et({maxWidth:t.maxWidth})},[_("ul",bt,[(u(!0),m(at,null,st(a.tabs,n=>(u(),m("li",{key:n.id,class:k(["pz-tabs__item",{active:a.activeTab===n.name}]),onClick:z=>a.activeTab=n.name||""},pt(ot(it)(n.name)),11,dt))),128))]),_("div",ct,[F(s.$slots,"default",{},void 0,!0)])],6))}}),l=M(g,[["__scopeId","data-v-0f3d0b3b"]]);g.__docgenInfo=Object.assign({displayName:g.name??g.__name},{name:"PzTabs",exportName:"default",displayName:"PzTabs",description:"",tags:{},props:[{name:"skin",required:!1,type:{name:"PzTabsSkin"},defaultValue:{func:!1,value:'""'}},{name:"maxWidth",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}}],slots:[{name:"default"}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Layouts/PzTabs/PzTabs.vue"]});const vt=t=>[t.skin?`skin="${t.skin}"`:null,t.maxWidth?`max-width="${t.maxWidth}"`:null].filter(a=>!!a).join(" "),yt=t=>`<template>
|
|
2
|
+
<PzTabs ${vt(t)}>
|
|
3
3
|
<PzTab name="${t.currentEditionLabel}" selected>
|
|
4
4
|
Current content
|
|
5
5
|
</PzTab>
|
|
@@ -40,11 +40,11 @@ import{P as T}from"./PzText-DFC4aYrl.js";import{e as q,a5 as f,w as G,a6 as Q,A
|
|
|
40
40
|
Notes content
|
|
41
41
|
</PzTab>
|
|
42
42
|
</PzTabs>
|
|
43
|
-
</template>`,
|
|
43
|
+
</template>`,mt=()=>`<template>
|
|
44
44
|
${[R(),H(),U()].join(`
|
|
45
45
|
|
|
46
46
|
`)}
|
|
47
|
-
</template>`,
|
|
47
|
+
</template>`,ut={title:"Components/Layouts/PzTabs",component:l,parameters:{prototype:{caption:"Tabs component",note:"Renamed from the previous app-level tabs to the shared `PzTabs` and `PzTab` components. This version only switches local panel content and keeps the original tab props and behavior."},docs:{description:{component:"Use `PzTabs` with `PzTab` children when you need to switch content inside the same view. The API keeps the original `name`, `selected`, `id`, `skin`, and `maxWidth` properties from the legacy tabs."},source:{transform:(t,a)=>yt(a.args??ut.args)}}},args:{skin:"light",maxWidth:"840px",currentEditionLabel:"Остання редакція",historyLabel:"Історія змін"},argTypes:{skin:{control:{type:"inline-radio",labels:{"":"default",light:"light"}},options:lt,description:"Surface skin for the tabs container."},maxWidth:{control:"text",description:"Optional max-width applied to the navigation and content area."}},render:t=>({components:{pzTabs:l,pzTab:h,pzText:T},setup(){return{args:t}},template:`
|
|
48
48
|
<div class="pz-tabs-story">
|
|
49
49
|
<section class="pz-tabs-story-frame">
|
|
50
50
|
<div class="pz-tabs-story-header">
|
|
@@ -400,7 +400,7 @@ ${[R(),H(),U()].join(`
|
|
|
400
400
|
</div>
|
|
401
401
|
</section>
|
|
402
402
|
</div>
|
|
403
|
-
`})},y={parameters:{docs:{source:{code:
|
|
403
|
+
`})},y={parameters:{docs:{source:{code:mt()}}}};var w,S,E;b.parameters={...b.parameters,docs:{...(w=b.parameters)==null?void 0:w.docs,source:{originalSource:"{}",...(E=(S=b.parameters)==null?void 0:S.docs)==null?void 0:E.source}}};var A,B,C;d.parameters={...d.parameters,docs:{...(A=d.parameters)==null?void 0:A.docs,source:{originalSource:`{
|
|
404
404
|
parameters: {
|
|
405
405
|
docs: {
|
|
406
406
|
source: {
|
|
@@ -591,4 +591,4 @@ ${[R(),H(),U()].join(`
|
|
|
591
591
|
}
|
|
592
592
|
}
|
|
593
593
|
}
|
|
594
|
-
}`,...(j=(V=y.parameters)==null?void 0:V.docs)==null?void 0:j.source}}};const
|
|
594
|
+
}`,...(j=(V=y.parameters)==null?void 0:V.docs)==null?void 0:j.source}}};const _t=["Playground","ThreeTabs","DefaultSkin","ConstrainedWidth","Examples"];export{v as ConstrainedWidth,c as DefaultSkin,y as Examples,b as Playground,d as ThreeTabs,_t as __namedExportsOrder,ut as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as l,v as p,y as i,g as u,x as f,o as t,f as n,z as o,q as r,u as c}from"./iframe-
|
|
1
|
+
import{e as l,v as p,y as i,g as u,x as f,o as t,f as n,z as o,q as r,u as c}from"./iframe-C7ETNRpQ.js";import{_ as m}from"./_plugin-vue_export-helper-DlAUqK2U.js";const d={key:0,class:"pz-tag-prefix"},g={class:"pz-tag-label"},y={key:1,class:"pz-tag-suffix"},s=l({name:"PzTag",__name:"PzTag",props:{variant:{default:"grey"},as:{default:"span"},typography:{}},setup(e){return(a,z)=>(t(),p(f(e.as),{class:u(["pz-tag",[`pz-tag--${e.variant}`,e.typography?`pz-typography--${e.typography}`:null]])},{default:i(()=>[a.$slots.prefix?(t(),n("span",d,[o(a.$slots,"prefix",{},void 0,!0)])):r("",!0),c("span",g,[o(a.$slots,"default",{},void 0,!0)]),a.$slots.suffix?(t(),n("span",y,[o(a.$slots,"suffix",{},void 0,!0)])):r("",!0)]),_:3},8,["class"]))}}),T=m(s,[["__scopeId","data-v-8265a687"]]);s.__docgenInfo=Object.assign({displayName:s.name??s.__name},{name:"PzTag",exportName:"default",displayName:"PzTag",description:"",tags:{},props:[{name:"variant",required:!1,type:{name:"PzTagVariant"},defaultValue:{func:!1,value:'"grey"'}},{name:"as",required:!1,type:{name:"PzTagTag"},defaultValue:{func:!1,value:'"span"'}},{name:"typography",required:!1,type:{name:"PzTextVariant"}}],slots:[{name:"prefix"},{name:"default"},{name:"suffix"}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Display/PzTag/PzTag.vue"]});export{T as P};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as c}from"./PzIcon-
|
|
1
|
+
import{_ as c}from"./PzIcon-BcyUoNpX.js";import{P as g}from"./PzText-DpNgd6Nx.js";import{p as d}from"./configs-CtUh_XBV.js";import{P as o}from"./PzTag-DgTwGfCR.js";import"./iframe-C7ETNRpQ.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const m=["grey","blue","green","red","grey-light"],f=["span","div","li"],v=[{variant:"grey",label:"Neutral"},{variant:"grey-light",label:"Neutral light"},{variant:"blue",label:"Information"},{variant:"green",label:"Verified"},{variant:"red",label:"Important"}],y=t=>{const e=[t.variant!=="grey"?`variant="${t.variant}"`:null,t.as!=="span"?`as="${t.as}"`:null].filter(l=>!!l).join(" "),n=t.showPrefix?`
|
|
2
2
|
<template #prefix>
|
|
3
3
|
<PzIcon name="sell" size="12" />
|
|
4
4
|
</template>`:"",p=t.showSuffix?`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as n,v as r,g as d,x as p,c as u,o as i,y as c,z as m}from"./iframe-
|
|
1
|
+
import{e as n,v as r,g as d,x as p,c as u,o as i,y as c,z as m}from"./iframe-C7ETNRpQ.js";import{_ as f}from"./_plugin-vue_export-helper-DlAUqK2U.js";const e=n({name:"PzText",__name:"PzText",props:{variant:{default:"body-regular"},as:{default:void 0}},setup(a){const s={"h1-bold":"h1","h1-regular":"h1","h2-bold":"h2","h3-bold":"h3","h3-regular":"h3","h4-regular":"h4","h4-semibold":"h4","h4-bold":"h4",subtitle:"p","subtitle-bold":"p","body-regular":"p","body-semibold":"p","body-bold":"p",capitalized:"span",hint:"span","line-through":"span","small-regular":"span","small-semibold":"span","small-bold":"span",link:"a",document:"p"},t=a,l=u(()=>t.as??s[t.variant]??"span");return(o,h)=>(i(),r(p(l.value),{class:d(["pz-text",`pz-text--${a.variant}`])},{default:c(()=>[m(o.$slots,"default",{},void 0,!0)]),_:3},8,["class"]))}}),g=f(e,[["__scopeId","data-v-421c92f1"]]);e.__docgenInfo=Object.assign({displayName:e.name??e.__name},{name:"PzText",exportName:"default",displayName:"PzText",description:"",tags:{},props:[{name:"variant",required:!1,type:{name:"PzTextVariant"},defaultValue:{func:!1,value:'"body-regular"'}},{name:"as",required:!1,type:{name:"PzTextTag"},defaultValue:{func:!1,value:"undefined"}}],slots:[{name:"default"}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Text/PzText/PzText.vue"]});export{g as P};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as Ve,p as _e}from"./configs-CtUh_XBV.js";import{P as z}from"./PzText-
|
|
1
|
+
import{a as Ve,p as _e}from"./configs-CtUh_XBV.js";import{P as z}from"./PzText-DpNgd6Nx.js";import"./iframe-C7ETNRpQ.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const je=r=>r.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "),Me={title:"Components/Text/PzText",component:z,parameters:{prototype:{caption:"Text component",note:"Component-level playground for semantic tag overrides and text variant rendering."},docs:{description:{component:"Vue text primitive for rendering the shared typography variants. Use `Foundation/Typography` for the full type-scale reference and `Components/Text/PzText` for the component API."},source:{transform:(r,e)=>{const a=e.args??{};return`<template>
|
|
2
2
|
<PzText ${[a.variant?`variant="${a.variant}"`:null,a.as?`as="${a.as}"`:null,a.content?`content="${a.content}"`:null].filter(Boolean).join(" ")} />
|
|
3
3
|
</template>`}}}},args:{variant:"body-regular",content:"Every procurement notice should stay readable across dense interfaces and long-form content."},argTypes:{variant:{control:"select",options:_e,description:"Text style variant from the Design System."},as:{control:"select",options:Ve,description:"HTML tag to render. Defaults to a semantic tag based on variant."},content:{control:"text",description:"Text content.",table:{category:"Slots"}}},render:r=>({components:{pzText:z},setup(){const e=je(r.variant??"body-regular");return{args:r,currentLabel:e}},template:`
|
|
4
4
|
<section class="pz-text-demo">
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{e as oe,h as _e,w as g,a4 as fe,i as ge,o as H,f as he,u as U,z as O,C as z,n as ve,r as L,c as h,j as X,v as G,y as J,g as ze,$ as ye,D as be,t as Ce,q as we}from"./iframe-COJe1XkP.js";import{P as ie}from"./PzText-DFC4aYrl.js";import{p as Le}from"./configs-CtUh_XBV.js";import{P as Te}from"./PzBtn-bB_kwCHt.js";import{a as K}from"./PzMessages-Cozycvno.js";import{_ as Ee}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./preload-helper-C1FmrZbK.js";var N=null;function Pe(e){return N||(N=(window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(a){return setTimeout(a,16)}).bind(window)),N(e)}var q=null;function Se(e){q||(q=(window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||function(a){clearTimeout(a)}).bind(window)),q(e)}function ke(e){var a=document.createElement("style");return a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e)),(document.querySelector("head")||document.body).appendChild(a),a}function y(e,a){a===void 0&&(a={});var t=document.createElement(e);return Object.keys(a).forEach(function(r){t[r]=a[r]}),t}function le(e,a,t){var r=window.getComputedStyle(e,null)||{display:"none"};return r[a]}function A(e){if(!document.documentElement.contains(e))return{detached:!0,rendered:!1};for(var a=e;a!==document;){if(le(a,"display")==="none")return{detached:!1,rendered:!1};a=a.parentNode}return{detached:!1,rendered:!0}}var Re='.resize-triggers{visibility:hidden;opacity:0;pointer-events:none}.resize-contract-trigger,.resize-contract-trigger:before,.resize-expand-trigger,.resize-triggers{content:"";position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden}.resize-contract-trigger,.resize-expand-trigger{background:#eee;overflow:auto}.resize-contract-trigger:before{width:200%;height:200%}',M=0,T=null;function Ne(e,a){e.__resize_mutation_handler__||(e.__resize_mutation_handler__=Oe.bind(e));var t=e.__resize_listeners__;if(!t){if(e.__resize_listeners__=[],window.ResizeObserver){var r=e.offsetWidth,o=e.offsetHeight,i=new ResizeObserver(function(){!e.__resize_observer_triggered__&&(e.__resize_observer_triggered__=!0,e.offsetWidth===r&&e.offsetHeight===o)||P(e)}),n=A(e),c=n.detached,l=n.rendered;e.__resize_observer_triggered__=c===!1&&l===!1,e.__resize_observer__=i,i.observe(e)}else if(e.attachEvent&&e.addEventListener)e.__resize_legacy_resize_handler__=function(){P(e)},e.attachEvent("onresize",e.__resize_legacy_resize_handler__),document.addEventListener("DOMSubtreeModified",e.__resize_mutation_handler__);else if(M||(T=ke(Re)),Ae(e),e.__resize_rendered__=A(e).rendered,window.MutationObserver){var d=new MutationObserver(e.__resize_mutation_handler__);d.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0}),e.__resize_mutation_observer__=d}}e.__resize_listeners__.push(a),M++}function qe(e,a){var t=e.__resize_listeners__;if(t){if(a&&t.splice(t.indexOf(a),1),!t.length||!a){if(e.detachEvent&&e.removeEventListener){e.detachEvent("onresize",e.__resize_legacy_resize_handler__),document.removeEventListener("DOMSubtreeModified",e.__resize_mutation_handler__);return}e.__resize_observer__?(e.__resize_observer__.unobserve(e),e.__resize_observer__.disconnect(),e.__resize_observer__=null):(e.__resize_mutation_observer__&&(e.__resize_mutation_observer__.disconnect(),e.__resize_mutation_observer__=null),e.removeEventListener("scroll",F),e.removeChild(e.__resize_triggers__.triggers),e.__resize_triggers__=null),e.__resize_listeners__=null}!--M&&T&&T.parentNode.removeChild(T)}}function He(e){var a=e.__resize_last__,t=a.width,r=a.height,o=e.offsetWidth,i=e.offsetHeight;return o!==t||i!==r?{width:o,height:i}:null}function Oe(){var e=A(this),a=e.rendered,t=e.detached;a!==this.__resize_rendered__&&(!t&&this.__resize_triggers__&&(j(this),this.addEventListener("scroll",F,!0)),this.__resize_rendered__=a,P(this))}function F(){var e=this;j(this),this.__resize_raf__&&Se(this.__resize_raf__),this.__resize_raf__=Pe(function(){var a=He(e);a&&(e.__resize_last__=a,P(e))})}function P(e){!e||!e.__resize_listeners__||e.__resize_listeners__.forEach(function(a){a.call(e,e)})}function Ae(e){var a=le(e,"position");(!a||a==="static")&&(e.style.position="relative"),e.__resize_old_position__=a,e.__resize_last__={};var t=y("div",{className:"resize-triggers"}),r=y("div",{className:"resize-expand-trigger"}),o=y("div"),i=y("div",{className:"resize-contract-trigger"});r.appendChild(o),t.appendChild(r),t.appendChild(i),e.appendChild(t),e.__resize_triggers__={triggers:t,expand:r,expandChild:o,contract:i},j(e),e.addEventListener("scroll",F,!0),e.__resize_last__={width:e.offsetWidth,height:e.offsetHeight}}function j(e){var a=e.__resize_triggers__,t=a.expand,r=a.expandChild,o=a.contract,i=o.scrollWidth,n=o.scrollHeight,c=t.offsetWidth,l=t.offsetHeight,d=t.scrollWidth,p=t.scrollHeight;o.scrollLeft=i,o.scrollTop=n,r.style.width=c+1+"px",r.style.height=l+1+"px",t.scrollLeft=d,t.scrollTop=p}const Me=["aria-label"];var de=oe({__name:"text-clamp",props:{text:{type:String,required:!0},maxHeight:{type:[String,Number],required:!1},maxLines:{type:Number,required:!1},expanded:{type:Boolean,required:!1,default:!1},location:{type:String,required:!1,default:"end"},ellipsis:{type:String,required:!1,default:"…"},autoResize:{type:Boolean,required:!1,default:!1}},emits:["clamp-change","update:expanded"],setup(e,{emit:a}){const t=e,r=L(null),o=L(null),i=L(null),n=_e({offset:0,localExpanded:!!t.expanded,unregisterResizeCallback:null}),c=h(()=>{if(!n.localExpanded&&t.maxHeight)return typeof(t==null?void 0:t.maxHeight)=="number"?`${t==null?void 0:t.maxHeight}px`:t==null?void 0:t.maxHeight}),l=()=>{i.value&&(i.value.textContent=xe.value)},d=()=>{n.localExpanded||(l(),(u()||m.value)&&k())},p=()=>{t.text&&(n.offset=t.text.length,x(),t.autoResize&&r.value&&(Ne(r.value,d),n.unregisterResizeCallback=()=>{r.value&&qe(r.value,d)}),d())},x=()=>{var s;(s=n.unregisterResizeCallback)==null||s.call(n)},u=()=>!(!t.maxLines&&!t.maxHeight)&&!!r.value&&(!!(t.maxLines&&S()>t.maxLines)||!!(t.maxHeight&&r.value.scrollHeight>r.value.offsetHeight)),S=()=>o.value?Object.keys(Array.prototype.slice.call(o.value.getClientRects()).reduce((s,{top:_,bottom:v})=>{const f=`${_}/${v}`;return s[f]||(s[f]=!0),s},{})).length:0,k=(...s)=>{const[_=0,v=n.offset]=s;if(v-_<=3)return void pe();const f=Math.floor((v+_)/2);R(f),u()?k(_,f):k(f,v)},R=s=>{n.offset=s,l()},pe=()=>{ce(),ue()},ce=()=>{for(;(!u()||S()<2)&&n.offset<t.text.length;)D(1)},ue=()=>{for(;u()&&S()>1&&n.offset>0;)D(-1)},D=s=>{R(n.offset+s)},m=h(()=>!!t.text&&n.offset!==t.text.length);g(()=>m.value,s=>{setTimeout(()=>{a("clamp-change",s)},0)},{immediate:!0});const xe=h(()=>m.value?me.value:t.text),me=h(()=>{if(t.location==="start")return t.ellipsis+(t.text.slice(-n.offset)||"").trim();if(t.location==="middle"){const s=Math.floor(n.offset/2);return(t.text.slice(0,s)||"").trim()+t.ellipsis+(t.text.slice(-s)||"").trim()}return(t.text.slice(0,n.offset)||"").trim()+t.ellipsis}),V=()=>{n.localExpanded=!0},W=()=>{n.localExpanded=!1},I=()=>{n.localExpanded=!n.localExpanded};return g(()=>t.expanded,s=>{n.localExpanded=s}),g(()=>n.localExpanded,s=>{s?R(t.text.length):d(),t.expanded!==s&&a("update:expanded",s)}),g(()=>[t.maxLines,t.maxHeight,t.ellipsis,t.location,m.value].join(),()=>{X(()=>{d()})}),g(()=>[t.text,t.autoResize].join(),()=>{X(()=>{p()})}),fe(()=>{x()}),ge(()=>{p()}),(s,_)=>(H(),he("div",{ref_key:"textClampRef",ref:r,class:"text-clamp",style:ve({overflow:"hidden",maxHeight:z(c)})},[U("span",{ref_key:"contentRef",ref:o},[O(s.$slots,"before",{expand:V,collapse:W,toggle:I,clamped:z(m),expanded:n.localExpanded}),U("span",{ref_key:"textRef",ref:i,"aria-label":e.text},null,8,Me),O(s.$slots,"after",{expand:V,collapse:W,toggle:I,clamped:z(m),expanded:n.localExpanded})],512)],4))}});de.__file="package/text-clamp.vue";const $e=e=>(e.install=function(a){a.component(e.__name,e)},e),Be=$e(de),Fe=4,je="... ",E=oe({name:"PzTextClamp",__name:"PzTextClamp",props:{text:{},maxContentLines:{default:Fe},clampPostfix:{default:je},btnClass:{default:""},autoResize:{type:Boolean,default:!0},expanded:{type:Boolean,default:!1},expandLabel:{},collapseLabel:{},typography:{}},emits:["update:expanded","clamp-change"],setup(e,{emit:a}){const t=e,r=h(()=>t.expandLabel??K("text.pzTextClamp.expandLabel")),o=h(()=>t.collapseLabel??K("text.pzTextClamp.collapseLabel")),i=a,n=l=>{i("update:expanded",l)},c=l=>{i("clamp-change",l)};return(l,d)=>(H(),G(z(Be),{text:e.text,"max-lines":e.maxContentLines,ellipsis:e.clampPostfix,expanded:e.expanded,"auto-resize":e.autoResize,class:ze(["pz-text-clamp",e.typography?`pz-typography--${e.typography}`:null]),"onUpdate:expanded":n,onClampChange:c},{after:J(({toggle:p,expanded:x,clamped:u})=>[O(l.$slots,"toggle",{toggle:p,expanded:x,clamped:u},()=>[u||x?(H(),G(z(Te),{key:0,variant:"transparent",type:"button",typography:e.typography??"body-regular",class:"pz-text-clamp__btn",onClick:ye(p,["stop"])},{default:J(()=>[be(Ce(x?o.value:r.value),1)]),_:2},1032,["typography","onClick"])):we("",!0)],!0)]),_:3},8,["text","max-lines","ellipsis","expanded","auto-resize","class"]))}}),$=Ee(E,[["__scopeId","data-v-5005fb0c"]]);E.__docgenInfo=Object.assign({displayName:E.name??E.__name},{name:"PzTextClamp",exportName:"default",displayName:"PzTextClamp",description:"",tags:{},props:[{name:"text",required:!0,type:{name:"string"}},{name:"maxContentLines",required:!1,type:{name:"number"},defaultValue:{func:!1,value:"MAX_CONTENT_LINES"}},{name:"clampPostfix",required:!1,type:{name:"string"},defaultValue:{func:!1,value:"DEFAULT_CLAMP_POSTFIX"}},{name:"btnClass",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}},{name:"autoResize",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"true"}},{name:"expanded",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"expandLabel",required:!1,type:{name:"string"}},{name:"collapseLabel",required:!1,type:{name:"string"}},{name:"typography",required:!1,type:{name:"PzTextVariant"}}],events:[{name:"update:expanded",type:{names:["boolean"]}},{name:"clamp-change",type:{names:["boolean"]}}],slots:[{name:"toggle",scoped:!0,bindings:[{name:"toggle",title:"binding"},{name:"expanded",title:"binding"},{name:"clamped",title:"binding"}]}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Text/PzTextClamp/PzTextClamp.vue"]});const B=[{kicker:"News teaser",title:"Two lines with default toggle",text:"The procurement framework for recovery projects should remain readable even when editors add dense context, supporting details, and legal clarifications into a single preview paragraph.",maxContentLines:2},{kicker:"Tender summary",title:"Three lines with longer body copy",text:"Prozorro teams often need the first block of text to stay compact inside cards, while still giving visitors a way to reveal the full explanation, deadlines, and rationale without leaving the page context.",maxContentLines:3},{kicker:"Always expanded",title:"Controlled expanded state",text:"This example starts opened to show that the wrapper supports v-model style control through update:expanded and still keeps the same text treatment as the collapsed variant.",maxContentLines:2,expanded:!0}],De=e=>`<template>
|
|
1
|
+
import{e as oe,h as _e,w as g,a4 as fe,i as ge,o as H,f as he,u as U,z as O,C as z,n as ve,r as L,c as h,j as X,v as G,y as J,g as ze,$ as ye,D as be,t as Ce,q as we}from"./iframe-C7ETNRpQ.js";import{P as ie}from"./PzText-DpNgd6Nx.js";import{p as Le}from"./configs-CtUh_XBV.js";import{P as Te}from"./PzBtn-DdQAmxtG.js";import{a as K}from"./PzMessages-CghyB4RL.js";import{_ as Ee}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./preload-helper-C1FmrZbK.js";var N=null;function Pe(e){return N||(N=(window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(a){return setTimeout(a,16)}).bind(window)),N(e)}var q=null;function Se(e){q||(q=(window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||function(a){clearTimeout(a)}).bind(window)),q(e)}function ke(e){var a=document.createElement("style");return a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e)),(document.querySelector("head")||document.body).appendChild(a),a}function y(e,a){a===void 0&&(a={});var t=document.createElement(e);return Object.keys(a).forEach(function(r){t[r]=a[r]}),t}function le(e,a,t){var r=window.getComputedStyle(e,null)||{display:"none"};return r[a]}function A(e){if(!document.documentElement.contains(e))return{detached:!0,rendered:!1};for(var a=e;a!==document;){if(le(a,"display")==="none")return{detached:!1,rendered:!1};a=a.parentNode}return{detached:!1,rendered:!0}}var Re='.resize-triggers{visibility:hidden;opacity:0;pointer-events:none}.resize-contract-trigger,.resize-contract-trigger:before,.resize-expand-trigger,.resize-triggers{content:"";position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden}.resize-contract-trigger,.resize-expand-trigger{background:#eee;overflow:auto}.resize-contract-trigger:before{width:200%;height:200%}',M=0,T=null;function Ne(e,a){e.__resize_mutation_handler__||(e.__resize_mutation_handler__=Oe.bind(e));var t=e.__resize_listeners__;if(!t){if(e.__resize_listeners__=[],window.ResizeObserver){var r=e.offsetWidth,o=e.offsetHeight,i=new ResizeObserver(function(){!e.__resize_observer_triggered__&&(e.__resize_observer_triggered__=!0,e.offsetWidth===r&&e.offsetHeight===o)||P(e)}),n=A(e),c=n.detached,l=n.rendered;e.__resize_observer_triggered__=c===!1&&l===!1,e.__resize_observer__=i,i.observe(e)}else if(e.attachEvent&&e.addEventListener)e.__resize_legacy_resize_handler__=function(){P(e)},e.attachEvent("onresize",e.__resize_legacy_resize_handler__),document.addEventListener("DOMSubtreeModified",e.__resize_mutation_handler__);else if(M||(T=ke(Re)),Ae(e),e.__resize_rendered__=A(e).rendered,window.MutationObserver){var d=new MutationObserver(e.__resize_mutation_handler__);d.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0}),e.__resize_mutation_observer__=d}}e.__resize_listeners__.push(a),M++}function qe(e,a){var t=e.__resize_listeners__;if(t){if(a&&t.splice(t.indexOf(a),1),!t.length||!a){if(e.detachEvent&&e.removeEventListener){e.detachEvent("onresize",e.__resize_legacy_resize_handler__),document.removeEventListener("DOMSubtreeModified",e.__resize_mutation_handler__);return}e.__resize_observer__?(e.__resize_observer__.unobserve(e),e.__resize_observer__.disconnect(),e.__resize_observer__=null):(e.__resize_mutation_observer__&&(e.__resize_mutation_observer__.disconnect(),e.__resize_mutation_observer__=null),e.removeEventListener("scroll",F),e.removeChild(e.__resize_triggers__.triggers),e.__resize_triggers__=null),e.__resize_listeners__=null}!--M&&T&&T.parentNode.removeChild(T)}}function He(e){var a=e.__resize_last__,t=a.width,r=a.height,o=e.offsetWidth,i=e.offsetHeight;return o!==t||i!==r?{width:o,height:i}:null}function Oe(){var e=A(this),a=e.rendered,t=e.detached;a!==this.__resize_rendered__&&(!t&&this.__resize_triggers__&&(j(this),this.addEventListener("scroll",F,!0)),this.__resize_rendered__=a,P(this))}function F(){var e=this;j(this),this.__resize_raf__&&Se(this.__resize_raf__),this.__resize_raf__=Pe(function(){var a=He(e);a&&(e.__resize_last__=a,P(e))})}function P(e){!e||!e.__resize_listeners__||e.__resize_listeners__.forEach(function(a){a.call(e,e)})}function Ae(e){var a=le(e,"position");(!a||a==="static")&&(e.style.position="relative"),e.__resize_old_position__=a,e.__resize_last__={};var t=y("div",{className:"resize-triggers"}),r=y("div",{className:"resize-expand-trigger"}),o=y("div"),i=y("div",{className:"resize-contract-trigger"});r.appendChild(o),t.appendChild(r),t.appendChild(i),e.appendChild(t),e.__resize_triggers__={triggers:t,expand:r,expandChild:o,contract:i},j(e),e.addEventListener("scroll",F,!0),e.__resize_last__={width:e.offsetWidth,height:e.offsetHeight}}function j(e){var a=e.__resize_triggers__,t=a.expand,r=a.expandChild,o=a.contract,i=o.scrollWidth,n=o.scrollHeight,c=t.offsetWidth,l=t.offsetHeight,d=t.scrollWidth,p=t.scrollHeight;o.scrollLeft=i,o.scrollTop=n,r.style.width=c+1+"px",r.style.height=l+1+"px",t.scrollLeft=d,t.scrollTop=p}const Me=["aria-label"];var de=oe({__name:"text-clamp",props:{text:{type:String,required:!0},maxHeight:{type:[String,Number],required:!1},maxLines:{type:Number,required:!1},expanded:{type:Boolean,required:!1,default:!1},location:{type:String,required:!1,default:"end"},ellipsis:{type:String,required:!1,default:"…"},autoResize:{type:Boolean,required:!1,default:!1}},emits:["clamp-change","update:expanded"],setup(e,{emit:a}){const t=e,r=L(null),o=L(null),i=L(null),n=_e({offset:0,localExpanded:!!t.expanded,unregisterResizeCallback:null}),c=h(()=>{if(!n.localExpanded&&t.maxHeight)return typeof(t==null?void 0:t.maxHeight)=="number"?`${t==null?void 0:t.maxHeight}px`:t==null?void 0:t.maxHeight}),l=()=>{i.value&&(i.value.textContent=xe.value)},d=()=>{n.localExpanded||(l(),(u()||m.value)&&k())},p=()=>{t.text&&(n.offset=t.text.length,x(),t.autoResize&&r.value&&(Ne(r.value,d),n.unregisterResizeCallback=()=>{r.value&&qe(r.value,d)}),d())},x=()=>{var s;(s=n.unregisterResizeCallback)==null||s.call(n)},u=()=>!(!t.maxLines&&!t.maxHeight)&&!!r.value&&(!!(t.maxLines&&S()>t.maxLines)||!!(t.maxHeight&&r.value.scrollHeight>r.value.offsetHeight)),S=()=>o.value?Object.keys(Array.prototype.slice.call(o.value.getClientRects()).reduce((s,{top:_,bottom:v})=>{const f=`${_}/${v}`;return s[f]||(s[f]=!0),s},{})).length:0,k=(...s)=>{const[_=0,v=n.offset]=s;if(v-_<=3)return void pe();const f=Math.floor((v+_)/2);R(f),u()?k(_,f):k(f,v)},R=s=>{n.offset=s,l()},pe=()=>{ce(),ue()},ce=()=>{for(;(!u()||S()<2)&&n.offset<t.text.length;)D(1)},ue=()=>{for(;u()&&S()>1&&n.offset>0;)D(-1)},D=s=>{R(n.offset+s)},m=h(()=>!!t.text&&n.offset!==t.text.length);g(()=>m.value,s=>{setTimeout(()=>{a("clamp-change",s)},0)},{immediate:!0});const xe=h(()=>m.value?me.value:t.text),me=h(()=>{if(t.location==="start")return t.ellipsis+(t.text.slice(-n.offset)||"").trim();if(t.location==="middle"){const s=Math.floor(n.offset/2);return(t.text.slice(0,s)||"").trim()+t.ellipsis+(t.text.slice(-s)||"").trim()}return(t.text.slice(0,n.offset)||"").trim()+t.ellipsis}),V=()=>{n.localExpanded=!0},W=()=>{n.localExpanded=!1},I=()=>{n.localExpanded=!n.localExpanded};return g(()=>t.expanded,s=>{n.localExpanded=s}),g(()=>n.localExpanded,s=>{s?R(t.text.length):d(),t.expanded!==s&&a("update:expanded",s)}),g(()=>[t.maxLines,t.maxHeight,t.ellipsis,t.location,m.value].join(),()=>{X(()=>{d()})}),g(()=>[t.text,t.autoResize].join(),()=>{X(()=>{p()})}),fe(()=>{x()}),ge(()=>{p()}),(s,_)=>(H(),he("div",{ref_key:"textClampRef",ref:r,class:"text-clamp",style:ve({overflow:"hidden",maxHeight:z(c)})},[U("span",{ref_key:"contentRef",ref:o},[O(s.$slots,"before",{expand:V,collapse:W,toggle:I,clamped:z(m),expanded:n.localExpanded}),U("span",{ref_key:"textRef",ref:i,"aria-label":e.text},null,8,Me),O(s.$slots,"after",{expand:V,collapse:W,toggle:I,clamped:z(m),expanded:n.localExpanded})],512)],4))}});de.__file="package/text-clamp.vue";const $e=e=>(e.install=function(a){a.component(e.__name,e)},e),Be=$e(de),Fe=4,je="... ",E=oe({name:"PzTextClamp",__name:"PzTextClamp",props:{text:{},maxContentLines:{default:Fe},clampPostfix:{default:je},btnClass:{default:""},autoResize:{type:Boolean,default:!0},expanded:{type:Boolean,default:!1},expandLabel:{},collapseLabel:{},typography:{}},emits:["update:expanded","clamp-change"],setup(e,{emit:a}){const t=e,r=h(()=>t.expandLabel??K("text.pzTextClamp.expandLabel")),o=h(()=>t.collapseLabel??K("text.pzTextClamp.collapseLabel")),i=a,n=l=>{i("update:expanded",l)},c=l=>{i("clamp-change",l)};return(l,d)=>(H(),G(z(Be),{text:e.text,"max-lines":e.maxContentLines,ellipsis:e.clampPostfix,expanded:e.expanded,"auto-resize":e.autoResize,class:ze(["pz-text-clamp",e.typography?`pz-typography--${e.typography}`:null]),"onUpdate:expanded":n,onClampChange:c},{after:J(({toggle:p,expanded:x,clamped:u})=>[O(l.$slots,"toggle",{toggle:p,expanded:x,clamped:u},()=>[u||x?(H(),G(z(Te),{key:0,variant:"transparent",type:"button",typography:e.typography??"body-regular",class:"pz-text-clamp__btn",onClick:ye(p,["stop"])},{default:J(()=>[be(Ce(x?o.value:r.value),1)]),_:2},1032,["typography","onClick"])):we("",!0)],!0)]),_:3},8,["text","max-lines","ellipsis","expanded","auto-resize","class"]))}}),$=Ee(E,[["__scopeId","data-v-5005fb0c"]]);E.__docgenInfo=Object.assign({displayName:E.name??E.__name},{name:"PzTextClamp",exportName:"default",displayName:"PzTextClamp",description:"",tags:{},props:[{name:"text",required:!0,type:{name:"string"}},{name:"maxContentLines",required:!1,type:{name:"number"},defaultValue:{func:!1,value:"MAX_CONTENT_LINES"}},{name:"clampPostfix",required:!1,type:{name:"string"},defaultValue:{func:!1,value:"DEFAULT_CLAMP_POSTFIX"}},{name:"btnClass",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}},{name:"autoResize",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"true"}},{name:"expanded",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"expandLabel",required:!1,type:{name:"string"}},{name:"collapseLabel",required:!1,type:{name:"string"}},{name:"typography",required:!1,type:{name:"PzTextVariant"}}],events:[{name:"update:expanded",type:{names:["boolean"]}},{name:"clamp-change",type:{names:["boolean"]}}],slots:[{name:"toggle",scoped:!0,bindings:[{name:"toggle",title:"binding"},{name:"expanded",title:"binding"},{name:"clamped",title:"binding"}]}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Text/PzTextClamp/PzTextClamp.vue"]});const B=[{kicker:"News teaser",title:"Two lines with default toggle",text:"The procurement framework for recovery projects should remain readable even when editors add dense context, supporting details, and legal clarifications into a single preview paragraph.",maxContentLines:2},{kicker:"Tender summary",title:"Three lines with longer body copy",text:"Prozorro teams often need the first block of text to stay compact inside cards, while still giving visitors a way to reveal the full explanation, deadlines, and rationale without leaving the page context.",maxContentLines:3},{kicker:"Always expanded",title:"Controlled expanded state",text:"This example starts opened to show that the wrapper supports v-model style control through update:expanded and still keeps the same text treatment as the collapsed variant.",maxContentLines:2,expanded:!0}],De=e=>`<template>
|
|
2
2
|
<PzTextClamp ${[`text="${e.text}"`,e.maxContentLines!==3?`:max-content-lines="${e.maxContentLines}"`:null,e.clampPostfix!=="... "?`clamp-postfix="${e.clampPostfix}"`:null,e.expandLabel!=="Show more"?`expand-label="${e.expandLabel}"`:null,e.collapseLabel!=="Collapse"?`collapse-label="${e.collapseLabel}"`:null,e.expanded?':expanded="true"':null].filter(t=>!!t).join(" ")} />
|
|
3
3
|
</template>`,Ve=()=>`<template>
|
|
4
4
|
<PzTextClamp
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{e as q,X as P,f as n,E as _,y as T,C as M,g as x,Y as b,o as d,B as S,u as B,a0 as $,t as u,q as z,c as k,r,w as C}from"./iframe-
|
|
1
|
+
import{e as q,X as P,f as n,E as _,y as T,C as M,g as x,Y as b,o as d,B as S,u as B,a0 as $,t as u,q as z,c as k,r,w as C}from"./iframe-C7ETNRpQ.js";import{P as N}from"./PzText-DpNgd6Nx.js";import{P as I}from"./PzLabel-DMn13NsD.js";import{_ as F}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./preload-helper-C1FmrZbK.js";const j={key:0,class:"pz-textarea-wrap"},D=["id","placeholder","disabled","maxlength","required","rows"],E={key:0,class:"pz-textarea-counter"},A=["id"],L={key:2,class:"pz-textarea-error"},c=q({name:"PzTextarea",__name:"PzTextarea",props:b({name:{},modelValue:{},label:{default:""},placeholder:{default:""},errorMessage:{default:""},counted:{type:Boolean,default:!1},maxSize:{default:1e3},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},rows:{default:4}},{modelValue:{default:""},modelModifiers:{}}),emits:b(["focus","blur","update:modelValue"],["update:modelValue"]),setup(e,{emit:l}){const a=e,i=l,o=P(e,"modelValue"),m=k(()=>o.value.length);return(f,t)=>(d(),n("div",{class:x(["pz-textarea",{error:!!a.errorMessage,disabled:a.disabled}])},[_(M(I),{label:a.label,for:a.name,required:a.required,disabled:a.disabled},{default:T(()=>[a.editable?(d(),n("span",j,[S(B("textarea",{id:a.name,"onUpdate:modelValue":t[0]||(t[0]=s=>o.value=s),placeholder:a.placeholder,disabled:a.disabled,maxlength:a.counted?a.maxSize:void 0,required:a.required,rows:a.rows,class:x(["pz-textarea-control",{"pz-textarea-control--counted":a.counted}]),onBlur:t[1]||(t[1]=s=>i("blur")),onFocus:t[2]||(t[2]=s=>i("focus"))},null,42,D),[[$,o.value]]),a.counted?(d(),n("span",E,u(m.value)+"/"+u(a.maxSize),1)):z("",!0)])):(d(),n("div",{key:1,id:a.name,class:"pz-textarea-readonly"},u(o.value),9,A)),a.errorMessage?(d(),n("span",L,u(a.errorMessage),1)):z("",!0)]),_:1},8,["label","for","required","disabled"])],2))}}),v=F(c,[["__scopeId","data-v-2c726136"]]);c.__docgenInfo=Object.assign({displayName:c.name??c.__name},{name:"PzTextarea",exportName:"default",displayName:"PzTextarea",description:"",tags:{},props:[{name:"name",required:!0,type:{name:"string"}},{name:"modelValue",required:!0,type:{name:"string"}},{name:"label",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}},{name:"placeholder",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}},{name:"errorMessage",required:!1,type:{name:"string"},defaultValue:{func:!1,value:'""'}},{name:"counted",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"maxSize",required:!1,type:{name:"number"},defaultValue:{func:!1,value:"1000"}},{name:"required",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"disabled",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"editable",required:!1,type:{name:"boolean"},defaultValue:{func:!1,value:"true"}},{name:"rows",required:!1,type:{name:"number"},defaultValue:{func:!1,value:"4"}}],events:[{name:"focus"},{name:"blur"},{name:"update:modelValue",type:{names:["string"]}}],sourceFiles:["/builds/Web-Projects/client-services/prozorro-ui/src/components/Form/PzTextarea/PzTextarea.vue"]});const V=2,O=e=>`<template>
|
|
2
2
|
<PzTextarea
|
|
3
3
|
v-model="value"
|
|
4
4
|
${[`name="${e.name}"`,e.label?`label="${e.label}"`:null,e.placeholder?`placeholder="${e.placeholder}"`:null,e.required?':required="true"':null,e.disabled?':disabled="true"':null,e.editable===!1?':editable="false"':null,e.counted?':counted="true"':null,e.maxSize?`:max-size="${e.maxSize}"`:null,e.rows&&e.rows!==V?`:rows="${e.rows}"`:null,e.errorMessage?`error-message="${e.errorMessage}"`:null].filter(a=>!!a).join(" ")}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as n,s as o}from"./iframe-C7ETNRpQ.js";const a=o(null),r=n(!1),f=(s,t)=>{a.value=s,r.value=!1},u=()=>{a.value=null,r.value=!1},e=(s,t)=>a.value?a.value(s,t):s,c=(s,t)=>()=>e(s,t),p=s=>s?typeof s=="function"?s():r.value?e(s):s:"";export{p as a,c as p,u as r,f as s};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import{r as g}from"./iframe-C7ETNRpQ.js";import{P as y}from"./PzBtn-DdQAmxtG.js";import{P as h}from"./PzKeyValue-Cn8RTU-S.js";import{P as f}from"./PzTable-DTSOUdXZ.js";import{s as b,p as t,r as z}from"./PzTranslator-DDtI6blH.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./_commonjsHelpers-Cpj98o6Y.js";import"./isArray-uCF_2ZQ0.js";import"./isObjectLike-zXfibqpL.js";import"./lodash-CdDiHlzQ.js";import"./PzDomHandler-BU7iMNnt.js";import"./PzMessages-CghyB4RL.js";import"./PzInfoHint-cPEdyLDe.js";import"./PzIcon-BcyUoNpX.js";import"./PzHint-l-9DaqXy.js";import"./floating-vue-btbGatfK.js";import"./floating-vue-BKNZm4Jb.js";const k={uk:{"labels.title":"Найменування","labels.amount":"Сума","labels.period":"Період"},en:{"labels.title":"Title","labels.amount":"Amount","labels.period":"Period"}},N={title:"Services/PzTranslator",tags:["autodocs"],parameters:{docs:{description:{component:["`PzTranslator` bridges an app i18n instance into **config-driven components**, so views no longer","re-map their configs through `i18n.t` before passing them down.","","It is the sibling of [`PzMessages`](/docs/services-pzmessages--docs): `PzMessages` overrides the","library's **own** built-in strings; `PzTranslator` resolves the text **you** put in a config","(`PzKeyValue.config[].labelKey`, `PzTableColumn.name`, and friends).","","The library never imports an i18n package — you register a plain function, so vue-i18n, i18next or a","hand-rolled dictionary all work.","","API:","","- `setTranslator(fn, options?)` — register the app translate function. `options.autoTranslate` also routes bare config strings through it.","- `pzT(key, params?)` — wrap a key as a lazy resolver for use inside a config.","- `translate(key, params?)` — call the translator directly; returns `key` unchanged when none is registered.","- `resolveText(value)` — resolve a text field to a string (used internally by components).","- `resetTranslator()` — unregister and fall back to identity.","","### Bootstrap","","Register once at app startup (e.g. in `main.ts`). The `te` guard keeps plain literal text from","producing missing-key warnings under `autoTranslate`:","","```ts",'import { setTranslator } from "@prozorro/prozorro-ui";','import { i18n } from "@/i18n";',"","setTranslator("," (key, params) => (i18n.global.te(key) ? i18n.global.t(key, params ?? {}) : key),"," { autoTranslate: true },",");","```","","### `autoTranslate` — zero-edit migration","","With `autoTranslate: true`, configs that already store i18n keys work unchanged and the per-view","`computed` mapper disappears:","","```ts","// config module — unchanged",'export const listConfig = [{ id: "1", key: "value-amount", labelKey: "labels.amount" }];',"```","","```vue","<!-- view — no useI18n(), no computed() -->",'<pz-key-value :config="listConfig" :data="data" />',"```","","### `pzT` — explicit keys for mixed configs","","Leave `autoTranslate` off when a config mixes i18n keys with literal text. Mark only the keys:","","```ts",'import { pzT } from "@prozorro/prozorro-ui";',"","export const listConfig = [",' { id: "1", key: "amount", labelKey: pzT("labels.amount") }, // translated',' { id: "2", key: "code", labelKey: "ДК 021:2015" }, // literal, untouched',"];","```","","`pzT` is **lazy** for the same reason `PzMessages` resolvers are: it is evaluated when the text","renders, not when the config module is evaluated. Storing `i18n.t(...)` directly would freeze","whatever existed at import time — usually the raw key path, before the locale loaded.","","### Reactivity and scope","","Translator state is a module-level singleton read inside the render effect, so a late","`setTranslator` call and a locale switch inside your translator both re-render the affected text","without a remount. Being module-scoped, there is one translator per JS realm — worth noting for SSR","or multi-app-instance setups, where the last registration wins.","","Identity fields are never translated. `PzTabs` resolves a tab's `name` for display only; the active","tab is tracked by the raw value, so switching locale cannot orphan the selection. The same holds for","`PzNav.name` (route name) and `PzKeyValue.key` (data path / slot name).","","The demo below registers a dictionary translator with `autoTranslate` **off**, so the `pzT` rows","translate while the literal row stays put. Switch locale and watch the labels update in place."].join(`
|
|
2
|
+
`)}}},render:()=>({components:{pzKeyValue:h,pzTable:f,pzBtn:y},setup(){const e=g("uk"),o=()=>{b(r=>{var s;return((s=k[e.value])==null?void 0:s[r])??r})};o();const p=()=>{e.value=e.value==="uk"?"en":"uk"},d=()=>{z()},c=[{id:"1",key:"title",labelKey:t("labels.title")},{id:"2",key:"amount",labelKey:t("labels.amount")},{id:"3",key:"code",labelKey:"ДК 021:2015"}],u={title:"Медичне обладнання",amount:"1 200 000 UAH",code:"33100000-1"},m=[{id:"1",name:t("labels.title"),key:"title"},{id:"2",name:t("labels.period"),key:"period"}];return{locale:e,switchLocale:p,register:o,disable:d,config:c,data:u,tableConfig:m,tableData:[{title:"Лот №1",period:"01.01.2026 — 31.12.2026"}]}},template:`
|
|
3
|
+
<section style="display: flex; flex-direction: column; gap: 16px;">
|
|
4
|
+
<pz-key-value :config="config" :data="data" />
|
|
5
|
+
|
|
6
|
+
<pz-table :config="tableConfig" :data="tableData" />
|
|
7
|
+
|
|
8
|
+
<div style="display: flex; align-items: center; gap: 8px;">
|
|
9
|
+
<pz-btn @click="switchLocale">Locale: {{ locale }}</pz-btn>
|
|
10
|
+
<pz-btn @click="register">Register translator</pz-btn>
|
|
11
|
+
<pz-btn @click="disable">Reset translator</pz-btn>
|
|
12
|
+
</div>
|
|
13
|
+
</section>
|
|
14
|
+
`})},a={};var n,i,l;a.parameters={...a.parameters,docs:{...(n=a.parameters)==null?void 0:n.docs,source:{originalSource:"{}",...(l=(i=a.parameters)==null?void 0:i.docs)==null?void 0:l.source}}};const j=["Playground"];export{a as Playground,j as __namedExportsOrder,N as default};
|
package/dist/app/assets/{PzValidatorXSS.stories-C6q6PXbN.js → PzValidatorXSS.stories-DowYTqqT.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as c,c as z}from"./iframe-
|
|
1
|
+
import{r as c,c as z}from"./iframe-C7ETNRpQ.js";import{P as u}from"./PzText-DpNgd6Nx.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";class s{static validQuery(t){const i={};return Object.keys(t).forEach(e=>{const a=t[e];Array.isArray(a)?i[e]=a.map(n=>s.validString(n)):i[e]=s.validString(a)}),i}static validString(t){return t==null?"":String(t).replace(/<[^>]*>/gim,"").trim()}}const m=o=>`<script setup lang="ts">
|
|
2
2
|
import { PzValidatorXSS } from "@prozorro/prozorro-ui";
|
|
3
3
|
|
|
4
4
|
const input = "${o.testInput}";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{P as n}from"./PzText-
|
|
1
|
+
import{P as n}from"./PzText-DpNgd6Nx.js";import"./iframe-C7ETNRpQ.js";import"./preload-helper-C1FmrZbK.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const p=[{token:"4",value:"4px",variable:"--pz-space-4",utility:"pz-m-4 / pz-p-4",note:"Gap between a title and its supporting text."},{token:"8",value:"8px",variable:"--pz-space-8",utility:"pz-m-8 / pz-p-8",note:"Gap between dependent text rows."},{token:"16",value:"16px",variable:"--pz-space-16",utility:"pz-m-16 / pz-p-16",note:"Spacing for title blocks, table content, and link groups."},{token:"20",value:"20px",variable:"--pz-space-20",utility:"pz-m-20 / pz-p-20",note:"Gap between equal elements."},{token:"24",value:"24px",variable:"--pz-space-24",utility:"pz-m-24 / pz-p-24",note:"Spacing for docs, dividers, and tab padding."},{token:"32",value:"32px",variable:"--pz-space-32",utility:"pz-m-32 / pz-p-32",note:"Inset from content to nested background edges."},{token:"40",value:"40px",variable:"--pz-space-40",utility:"pz-m-40 / pz-p-40",note:"Large inset inside nested content areas."},{token:"44",value:"44px",variable:"--pz-space-44",utility:"pz-m-44 / pz-p-44",note:"Gap between a header and content in cabinet layouts."},{token:"60",value:"60px",variable:"--pz-space-60",utility:"pz-m-60 / pz-p-60",note:"Gap between equal large blocks."}],s=[{title:"Margin utilities",note:"Outer spacing",items:[{name:".pz-m-*",description:"Margin on all sides."},{name:".pz-mt-* / .pz-mr-* / .pz-mb-* / .pz-ml-*",description:"Single-side margin utilities."},{name:".pz-mx-* / .pz-my-*",description:"Inline and block axis margin utilities."},{name:".pz-m-auto / .pz-mx-auto / .pz-my-auto",description:"Auto alignment helpers."}]},{title:"Padding utilities",note:"Inner spacing",items:[{name:".pz-p-*",description:"Padding on all sides."},{name:".pz-pt-* / .pz-pr-* / .pz-pb-* / .pz-pl-*",description:"Single-side padding utilities."},{name:".pz-px-* / .pz-py-*",description:"Inline and block axis padding utilities."}]}],o=[{name:"sm",prefix:".pz-{prop}-sm-{value}",minWidth:"≥ 576px",description:"Small viewports and up."},{name:"md",prefix:".pz-{prop}-md-{value}",minWidth:"≥ 768px",description:"Tablet breakpoint and up."},{name:"lg",prefix:".pz-{prop}-lg-{value}",minWidth:"≥ 1024px",description:"Large viewports and up."},{name:"xl",prefix:".pz-{prop}-xl-{value}",minWidth:"≥ 1200px",description:"Desktop breakpoint and up."},{name:"xxl",prefix:".pz-{prop}-xxl-{value}",minWidth:"≥ 1400px",description:"Wide displays and up."}],u={title:"Foundation/Spacing",parameters:{prototype:{caption:"Spacing scale",note:"Spacing token and utility reference for margin and padding helpers."},docs:{description:{component:"Spacing foundation for `@prozorro/prozorro-ui`. The utility module emits `pz-m-*` and `pz-p-*` classes backed by the shared `--pz-space-*` token scale aligned with the visible Figma spacing board."}}},render:()=>({components:{pzText:n},setup(){return{spacingTokens:p,utilityGroups:s,spacingBreakpoints:o}},template:`
|
|
2
2
|
<div class="spacing-foundation">
|
|
3
3
|
<section class="spacing-foundation-board">
|
|
4
4
|
<header class="spacing-foundation-hero">
|