{"version":3,"file":"useSimplePageParam-C82egOlX.mjs","names":[],"sources":["../src/components/composable/route/useSimplePageParam.ts"],"sourcesContent":["import { useFilterStore } from '../../../stores/FilterStore';\nimport { useRouteUpdateParams } from './useRouteUpdateParams';\nimport { computed, onMounted, Ref, ref, watch } from \"vue\";\n\nimport { RouteProps, ROUTE_PARAMS } from \"./types\";\n\nexport const useSimplePageParam = (props: RouteProps, force=false, advancedSearch=false)=>{\n\n  const { updateRouteParam } = useRouteUpdateParams();\n\n  const filterStore  = useFilterStore();\n\n  const isInit = ref(false);\n  const searchPattern = ref(\"\");\n  const organisationId: Ref<string|undefined> = ref(undefined);\n\n  const searchMinSize = computed(() => getMinSize((props.routeQuery as string)));\n  const paginateFirst = computed(() => {\n    if(!props.pr || props.ps === undefined) {\n      return 0;\n    }\n    return Math.max(((props.pr as number) - 1 ) * (props.ps as number), 0);\n  });\n\n  watch(searchPattern, () => {\n    if(!advancedSearch){\n      const query = getMinSize(searchPattern.value);\n      updateRouteParam({\n        [ROUTE_PARAMS.Query]: query.length ? query : undefined,\n      }, force);\n    }\n  });\n\n  // When changing global organisation, update organisation here\n  watch(() => filterStore.filterOrgaId, () => {\n    organisationId.value = filterStore.filterOrgaId;\n  });\n\n  onMounted(() => {\n    initOrga();\n    initSearchPattern();\n    isInit.value = true;\n  });\n\n  function getMinSize(param:string){\n    return param.length>3 ?param : \"\"\n  }\n  function initSearchPattern(){\n    searchPattern.value = (props.routeQuery as string) ?? \"\";\n  }\n  function initOrga(){\n    organisationId.value = filterStore.filterOrgaId ?? (props.routeOrga as string);\n  }\n\n\n  return {\n    searchPattern,\n    organisationId,\n    searchMinSize,\n    paginateFirst,\n    initSearchPattern,\n    initOrga,\n    updateRouteParam,\n    isInit\n  };\n}\n"],"mappings":";;;;;AAMA,IAAa,sBAAsB,OAAmB,QAAM,OAAO,iBAAe,UAAQ;CAExF,MAAM,EAAE,qBAAqB,qBAAqB;CAElD,MAAM,cAAe,eAAe;CAEpC,MAAM,SAAS,IAAI,KAAK;CACxB,MAAM,gBAAgB,IAAI,EAAE;CAC5B,MAAM,iBAAwC,IAAI,KAAA,CAAS;CAE3D,MAAM,gBAAgB,eAAe,WAAY,MAAM,UAAqB,CAAC;CAC7E,MAAM,gBAAgB,eAAe;EACnC,IAAG,CAAC,MAAM,MAAM,MAAM,OAAO,KAAA,GAC3B,OAAO;EAET,OAAO,KAAK,KAAM,MAAM,KAAgB,KAAO,MAAM,IAAe,CAAC;CACvE,CAAC;CAED,MAAM,qBAAqB;EACzB,IAAG,CAAC,gBAAe;GACjB,MAAM,QAAQ,WAAW,cAAc,KAAK;GAC5C,iBAAiB,GACd,aAAa,QAAQ,MAAM,SAAS,QAAQ,KAAA,EAC/C,GAAG,KAAK;EACV;CACF,CAAC;CAGD,YAAY,YAAY,oBAAoB;EAC1C,eAAe,QAAQ,YAAY;CACrC,CAAC;CAED,gBAAgB;EACd,SAAS;EACT,kBAAkB;EAClB,OAAO,QAAQ;CACjB,CAAC;CAED,SAAS,WAAW,OAAa;EAC/B,OAAO,MAAM,SAAO,IAAG,QAAQ;CACjC;CACA,SAAS,oBAAmB;EAC1B,cAAc,QAAS,MAAM,cAAyB;CACxD;CACA,SAAS,WAAU;EACjB,eAAe,QAAQ,YAAY,gBAAiB,MAAM;CAC5D;CAGA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}