@fabriquerdemain/map-vue 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,52 @@
1
+ import { MapMarker, DetailPanelConfig } from '@repcartes/map-shared';
2
+
3
+ export interface DetailPanelProps {
4
+ /** Marqueur à afficher */
5
+ marker: MapMarker | null;
6
+ /** Configuration du panneau */
7
+ config?: DetailPanelConfig;
8
+ /** Afficher le panneau même sans marqueur */
9
+ alwaysVisible?: boolean;
10
+ }
11
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<DetailPanelProps>, {
12
+ marker: null;
13
+ config: () => {};
14
+ alwaysVisible: boolean;
15
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
+ close: () => void;
17
+ "detail-click": (marker: MapMarker) => void;
18
+ "contact-click": (marker: MapMarker) => void;
19
+ "external-click": (url: string) => void;
20
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<DetailPanelProps>, {
21
+ marker: null;
22
+ config: () => {};
23
+ alwaysVisible: boolean;
24
+ }>>> & Readonly<{
25
+ onClose?: (() => any) | undefined;
26
+ "onDetail-click"?: ((marker: MapMarker) => any) | undefined;
27
+ "onContact-click"?: ((marker: MapMarker) => any) | undefined;
28
+ "onExternal-click"?: ((url: string) => any) | undefined;
29
+ }>, {
30
+ marker: MapMarker | null;
31
+ config: DetailPanelConfig;
32
+ alwaysVisible: boolean;
33
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
34
+ export default _default;
35
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
36
+ type __VLS_TypePropsToRuntimeProps<T> = {
37
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
38
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
39
+ } : {
40
+ type: import('vue').PropType<T[K]>;
41
+ required: true;
42
+ };
43
+ };
44
+ type __VLS_WithDefaults<P, D> = {
45
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
46
+ default: D[K];
47
+ }> : P[K];
48
+ };
49
+ type __VLS_Prettify<T> = {
50
+ [K in keyof T]: T[K];
51
+ } & {};
52
+ //# sourceMappingURL=DetailPanel.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DetailPanel.vue.d.ts","sourceRoot":"","sources":["../../src/components/DetailPanel.vue"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EAClB,MAAM,uBAAuB,CAAA;AAW9B,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B;IAC1B,MAAM,EAAE,SAAS,GAAG,IAAI,CAAA;IACxB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;;;;;;;;;;;;;;;;;;;;YALS,SAAS,GAAG,IAAI;YAEf,iBAAiB;mBAEV,OAAO;;AAqjBzB,wBAOG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { FilterState, FiltersConfig, DealTypesConfig } from '@repcartes/map-shared';
2
+
3
+ export interface FiltersProps {
4
+ /** Configuration des filtres */
5
+ config?: FiltersConfig;
6
+ /** Types de deals disponibles (pour le filtre par type) */
7
+ dealTypes?: DealTypesConfig;
8
+ /** Stages disponibles */
9
+ stages?: Array<{
10
+ value: string;
11
+ label: string;
12
+ color?: string;
13
+ }>;
14
+ /** Villes disponibles */
15
+ cities?: string[];
16
+ /** État initial des filtres */
17
+ modelValue?: FilterState;
18
+ }
19
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<FiltersProps>, {
20
+ config: () => {};
21
+ dealTypes: undefined;
22
+ stages: () => never[];
23
+ cities: () => never[];
24
+ modelValue: () => {};
25
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
26
+ "update:modelValue": (state: FilterState) => void;
27
+ change: (state: FilterState) => void;
28
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<FiltersProps>, {
29
+ config: () => {};
30
+ dealTypes: undefined;
31
+ stages: () => never[];
32
+ cities: () => never[];
33
+ modelValue: () => {};
34
+ }>>> & Readonly<{
35
+ "onUpdate:modelValue"?: ((state: FilterState) => any) | undefined;
36
+ onChange?: ((state: FilterState) => any) | undefined;
37
+ }>, {
38
+ config: FiltersConfig;
39
+ dealTypes: DealTypesConfig;
40
+ stages: Array<{
41
+ value: string;
42
+ label: string;
43
+ color?: string;
44
+ }>;
45
+ cities: string[];
46
+ modelValue: FilterState;
47
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
48
+ export default _default;
49
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
50
+ type __VLS_TypePropsToRuntimeProps<T> = {
51
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
52
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
53
+ } : {
54
+ type: import('vue').PropType<T[K]>;
55
+ required: true;
56
+ };
57
+ };
58
+ type __VLS_WithDefaults<P, D> = {
59
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
60
+ default: D[K];
61
+ }> : P[K];
62
+ };
63
+ type __VLS_Prettify<T> = {
64
+ [K in keyof T]: T[K];
65
+ } & {};
66
+ //# sourceMappingURL=Filters.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Filters.vue.d.ts","sourceRoot":"","sources":["../../src/components/Filters.vue"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAO9B,MAAM,WAAW,YAAY;IAC3B,gCAAgC;IAChC,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,yBAAyB;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChE,yBAAyB;IACzB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,+BAA+B;IAC/B,UAAU,CAAC,EAAE,WAAW,CAAA;CACzB;;;;;;;;;;;;;;;;;;;;YATU,aAAa;eAEV,eAAe;YAElB,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;YAEvD,MAAM,EAAE;gBAEJ,WAAW;;AA8Z1B,wBAOG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,86 @@
1
+ import { default as L } from 'leaflet';
2
+ import { MapMarker, MapConfig, MapBounds } from '@repcartes/map-shared';
3
+
4
+ export interface MapProps {
5
+ /** Liste des marqueurs à afficher */
6
+ markers?: MapMarker[];
7
+ /** Configuration de la carte */
8
+ config?: MapConfig;
9
+ /** Marqueur actuellement sélectionné */
10
+ selectedMarkerId?: string | null;
11
+ /** Classe CSS additionnelle */
12
+ class?: string;
13
+ }
14
+ /**
15
+ * Déplace la carte vers une position
16
+ */
17
+ declare function flyTo(lat: number, lng: number, zoom?: number): void;
18
+ /**
19
+ * Ajuste la vue pour voir tous les marqueurs
20
+ */
21
+ declare function fitBounds(padding?: number): void;
22
+ /**
23
+ * Ouvre la popup d'un marqueur
24
+ */
25
+ declare function openMarkerPopup(markerId: string): void;
26
+ /**
27
+ * Retourne l'instance Leaflet de la carte
28
+ */
29
+ declare function getMap(): L.Map | null;
30
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<MapProps>, {
31
+ markers: () => never[];
32
+ config: () => {};
33
+ selectedMarkerId: null;
34
+ }>>, {
35
+ flyTo: typeof flyTo;
36
+ fitBounds: typeof fitBounds;
37
+ openMarkerPopup: typeof openMarkerPopup;
38
+ getMap: typeof getMap;
39
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
40
+ "marker-click": (marker: MapMarker) => void;
41
+ "marker-hover": (marker: MapMarker | null) => void;
42
+ "map-click": (coords: {
43
+ lat: number;
44
+ lng: number;
45
+ }) => void;
46
+ "bounds-change": (bounds: MapBounds) => void;
47
+ "zoom-change": (zoom: number) => void;
48
+ ready: (map: L.Map) => void;
49
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<MapProps>, {
50
+ markers: () => never[];
51
+ config: () => {};
52
+ selectedMarkerId: null;
53
+ }>>> & Readonly<{
54
+ "onMarker-click"?: ((marker: MapMarker) => any) | undefined;
55
+ "onMarker-hover"?: ((marker: MapMarker | null) => any) | undefined;
56
+ "onMap-click"?: ((coords: {
57
+ lat: number;
58
+ lng: number;
59
+ }) => any) | undefined;
60
+ "onBounds-change"?: ((bounds: MapBounds) => any) | undefined;
61
+ "onZoom-change"?: ((zoom: number) => any) | undefined;
62
+ onReady?: ((map: L.Map) => any) | undefined;
63
+ }>, {
64
+ config: MapConfig;
65
+ markers: MapMarker[];
66
+ selectedMarkerId: string | null;
67
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
68
+ export default _default;
69
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
70
+ type __VLS_TypePropsToRuntimeProps<T> = {
71
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
72
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
73
+ } : {
74
+ type: import('vue').PropType<T[K]>;
75
+ required: true;
76
+ };
77
+ };
78
+ type __VLS_WithDefaults<P, D> = {
79
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
80
+ default: D[K];
81
+ }> : P[K];
82
+ };
83
+ type __VLS_Prettify<T> = {
84
+ [K in keyof T]: T[K];
85
+ } & {};
86
+ //# sourceMappingURL=Map.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Map.vue.d.ts","sourceRoot":"","sources":["../../src/components/Map.vue"],"names":[],"mappings":"AAYA,OAAO,CAAC,MAAM,SAAS,CAAA;AACvB,OAAO,0BAA0B,CAAA;AACjC,OAAO,uBAAuB,CAAA;AAC9B,OAAO,8CAA8C,CAAA;AACrD,OAAO,sDAAsD,CAAA;AAE7D,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACV,MAAM,uBAAuB,CAAA;AAY9B,MAAM,WAAW,QAAQ;IACvB,qCAAqC;IACrC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAA;IACrB,gCAAgC;IAChC,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAmSD;;GAEG;AACH,iBAAS,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,QAIrD;AAED;;GAEG;AACH,iBAAS,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,QAWlC;AAED;;GAEG;AACH,iBAAS,eAAe,CAAC,QAAQ,EAAE,MAAM,QAKxC;AAED;;GAEG;AACH,iBAAS,MAAM,IAAI,CAAC,CAAC,GAAG,GAAG,IAAI,CAE9B;;;;;;;;;;;;;;aA1T8B,MAAM;aAAO,MAAM;;;;;;;;;;;;;aAAnB,MAAM;aAAO,MAAM;;;;;;YAtBvC,SAAS;aAFR,SAAS,EAAE;sBAIF,MAAM,GAAG,IAAI;;AAmblC,wBAQG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { Ref, ComputedRef } from 'vue';
2
+ import { MapMarker, FilterState } from '@repcartes/map-shared';
3
+
4
+ export interface UseMapFiltersReturn {
5
+ /** État actuel des filtres */
6
+ filters: Ref<FilterState>;
7
+ /** Marqueurs filtrés */
8
+ filteredMarkers: ComputedRef<MapMarker[]>;
9
+ /** Stages disponibles (extraits des marqueurs) */
10
+ availableStages: ComputedRef<Array<{
11
+ value: string;
12
+ label: string;
13
+ color?: string;
14
+ }>>;
15
+ /** Villes disponibles (extraites des marqueurs) */
16
+ availableCities: ComputedRef<string[]>;
17
+ /** Types disponibles (extraits des marqueurs) */
18
+ availableTypes: ComputedRef<string[]>;
19
+ /** Définir un filtre */
20
+ setFilter: (key: keyof FilterState, value: string) => void;
21
+ /** Réinitialiser tous les filtres */
22
+ clearFilters: () => void;
23
+ /** Nombre de marqueurs avant filtrage */
24
+ totalCount: ComputedRef<number>;
25
+ /** Nombre de marqueurs après filtrage */
26
+ filteredCount: ComputedRef<number>;
27
+ }
28
+ export declare function useMapFilters(markers: Ref<MapMarker[]> | ComputedRef<MapMarker[]>): UseMapFiltersReturn;
29
+ //# sourceMappingURL=useMapFilters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMapFilters.d.ts","sourceRoot":"","sources":["../../src/composables/useMapFilters.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAiB,KAAK,GAAG,EAAE,KAAK,WAAW,EAAE,MAAM,KAAK,CAAA;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnE,MAAM,WAAW,mBAAmB;IAClC,8BAA8B;IAC9B,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,CAAA;IACzB,wBAAwB;IACxB,eAAe,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAA;IACzC,kDAAkD;IAClD,eAAe,EAAE,WAAW,CAAC,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IACrF,mDAAmD;IACnD,eAAe,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;IACtC,iDAAiD;IACjD,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;IACrC,wBAAwB;IACxB,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,WAAW,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1D,qCAAqC;IACrC,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,yCAAyC;IACzC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC/B,yCAAyC;IACzC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CACnC;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC,GACnD,mBAAmB,CAmHrB"}
@@ -0,0 +1,183 @@
1
+ import { default as Map } from './components/Map.vue';
2
+
3
+ export declare const RepCartesMap: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
4
+ config: {
5
+ type: import('vue').PropType<import('@repcartes/map-shared').MapConfig>;
6
+ default: () => {};
7
+ };
8
+ class: {
9
+ type: import('vue').PropType<string>;
10
+ };
11
+ markers: {
12
+ type: import('vue').PropType<import('@repcartes/map-shared').MapMarker[]>;
13
+ default: () => never[];
14
+ };
15
+ selectedMarkerId: {
16
+ type: import('vue').PropType<string | null>;
17
+ default: null;
18
+ };
19
+ }>, {
20
+ flyTo: (lat: number, lng: number, zoom?: number) => void;
21
+ fitBounds: (padding?: number) => void;
22
+ openMarkerPopup: (markerId: string) => void;
23
+ getMap: () => L.Map | null;
24
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
25
+ "marker-click": (marker: import('@repcartes/map-shared').MapMarker) => void;
26
+ "marker-hover": (marker: import('@repcartes/map-shared').MapMarker | null) => void;
27
+ "map-click": (coords: {
28
+ lat: number;
29
+ lng: number;
30
+ }) => void;
31
+ "bounds-change": (bounds: import('@repcartes/map-shared').MapBounds) => void;
32
+ "zoom-change": (zoom: number) => void;
33
+ ready: (map: import('leaflet').Map) => void;
34
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
35
+ config: {
36
+ type: import('vue').PropType<import('@repcartes/map-shared').MapConfig>;
37
+ default: () => {};
38
+ };
39
+ class: {
40
+ type: import('vue').PropType<string>;
41
+ };
42
+ markers: {
43
+ type: import('vue').PropType<import('@repcartes/map-shared').MapMarker[]>;
44
+ default: () => never[];
45
+ };
46
+ selectedMarkerId: {
47
+ type: import('vue').PropType<string | null>;
48
+ default: null;
49
+ };
50
+ }>> & Readonly<{
51
+ "onMarker-click"?: ((marker: import('@repcartes/map-shared').MapMarker) => any) | undefined;
52
+ "onMarker-hover"?: ((marker: import('@repcartes/map-shared').MapMarker | null) => any) | undefined;
53
+ "onMap-click"?: ((coords: {
54
+ lat: number;
55
+ lng: number;
56
+ }) => any) | undefined;
57
+ "onBounds-change"?: ((bounds: import('@repcartes/map-shared').MapBounds) => any) | undefined;
58
+ "onZoom-change"?: ((zoom: number) => any) | undefined;
59
+ onReady?: ((map: import('leaflet').Map) => any) | undefined;
60
+ }>, {
61
+ config: import('@repcartes/map-shared').MapConfig;
62
+ markers: import('@repcartes/map-shared').MapMarker[];
63
+ selectedMarkerId: string | null;
64
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
65
+ export declare const RepCartesDetailPanel: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
66
+ marker: {
67
+ type: import('vue').PropType<import('@repcartes/map-shared').MapMarker | null>;
68
+ required: true;
69
+ default: null;
70
+ };
71
+ config: {
72
+ type: import('vue').PropType<import('@repcartes/map-shared').DetailPanelConfig>;
73
+ default: () => {};
74
+ };
75
+ alwaysVisible: {
76
+ type: import('vue').PropType<boolean>;
77
+ default: boolean;
78
+ };
79
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
80
+ close: () => void;
81
+ "detail-click": (marker: import('@repcartes/map-shared').MapMarker) => void;
82
+ "contact-click": (marker: import('@repcartes/map-shared').MapMarker) => void;
83
+ "external-click": (url: string) => void;
84
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
85
+ marker: {
86
+ type: import('vue').PropType<import('@repcartes/map-shared').MapMarker | null>;
87
+ required: true;
88
+ default: null;
89
+ };
90
+ config: {
91
+ type: import('vue').PropType<import('@repcartes/map-shared').DetailPanelConfig>;
92
+ default: () => {};
93
+ };
94
+ alwaysVisible: {
95
+ type: import('vue').PropType<boolean>;
96
+ default: boolean;
97
+ };
98
+ }>> & Readonly<{
99
+ onClose?: (() => any) | undefined;
100
+ "onDetail-click"?: ((marker: import('@repcartes/map-shared').MapMarker) => any) | undefined;
101
+ "onContact-click"?: ((marker: import('@repcartes/map-shared').MapMarker) => any) | undefined;
102
+ "onExternal-click"?: ((url: string) => any) | undefined;
103
+ }>, {
104
+ marker: import('@repcartes/map-shared').MapMarker | null;
105
+ config: import('@repcartes/map-shared').DetailPanelConfig;
106
+ alwaysVisible: boolean;
107
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
108
+ export declare const RepCartesFilters: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
109
+ config: {
110
+ type: import('vue').PropType<import('@repcartes/map-shared').FiltersConfig>;
111
+ default: () => {};
112
+ };
113
+ dealTypes: {
114
+ type: import('vue').PropType<import('@repcartes/map-shared').DealTypesConfig>;
115
+ default: undefined;
116
+ };
117
+ stages: {
118
+ type: import('vue').PropType<{
119
+ value: string;
120
+ label: string;
121
+ color?: string;
122
+ }[]>;
123
+ default: () => never[];
124
+ };
125
+ cities: {
126
+ type: import('vue').PropType<string[]>;
127
+ default: () => never[];
128
+ };
129
+ modelValue: {
130
+ type: import('vue').PropType<import('@repcartes/map-shared').FilterState>;
131
+ default: () => {};
132
+ };
133
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
134
+ "update:modelValue": (state: import('@repcartes/map-shared').FilterState) => void;
135
+ change: (state: import('@repcartes/map-shared').FilterState) => void;
136
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
137
+ config: {
138
+ type: import('vue').PropType<import('@repcartes/map-shared').FiltersConfig>;
139
+ default: () => {};
140
+ };
141
+ dealTypes: {
142
+ type: import('vue').PropType<import('@repcartes/map-shared').DealTypesConfig>;
143
+ default: undefined;
144
+ };
145
+ stages: {
146
+ type: import('vue').PropType<{
147
+ value: string;
148
+ label: string;
149
+ color?: string;
150
+ }[]>;
151
+ default: () => never[];
152
+ };
153
+ cities: {
154
+ type: import('vue').PropType<string[]>;
155
+ default: () => never[];
156
+ };
157
+ modelValue: {
158
+ type: import('vue').PropType<import('@repcartes/map-shared').FilterState>;
159
+ default: () => {};
160
+ };
161
+ }>> & Readonly<{
162
+ "onUpdate:modelValue"?: ((state: import('@repcartes/map-shared').FilterState) => any) | undefined;
163
+ onChange?: ((state: import('@repcartes/map-shared').FilterState) => any) | undefined;
164
+ }>, {
165
+ config: import('@repcartes/map-shared').FiltersConfig;
166
+ dealTypes: import('@repcartes/map-shared').DealTypesConfig;
167
+ stages: Array<{
168
+ value: string;
169
+ label: string;
170
+ color?: string;
171
+ }>;
172
+ cities: string[];
173
+ modelValue: import('@repcartes/map-shared').FilterState;
174
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
175
+ export default Map;
176
+ export type { MapMarker, MapConfig, MapBounds, MarkerAddress, MarkerContact, MarkerOrganisation, DetailPanelConfig, DetailPanelSections, FiltersConfig, FilterState, FilterType, DealTypesConfig, DealTypeConfig, DealStageConfig, MapEvents, } from '@repcartes/map-shared';
177
+ export { DEFAULT_MAP_CONFIG, DEFAULT_PANEL_CONFIG, DEFAULT_FILTERS_CONFIG, FRANCE_BOUNDS, TILE_URLS, TILE_ATTRIBUTIONS, isInFrance, formatAddress, formatName, } from '@repcartes/map-shared';
178
+ export type { MapProps } from './components/Map.vue';
179
+ export type { DetailPanelProps } from './components/DetailPanel.vue';
180
+ export type { FiltersProps } from './components/Filters.vue';
181
+ export { useMapFilters } from './composables/useMapFilters';
182
+ export type { UseMapFiltersReturn } from './composables/useMapFilters';
183
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,GAAG,MAAM,sBAAsB,CAAA;AAKtC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EAAM,CAAA;AAC/B,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EAAc,CAAA;AAC/C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAA5B,CAAC;;;;4EAAqC,CAAA;AAGvC,eAAe,GAAG,CAAA;AAGlB,YAAY,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,UAAU,EACV,eAAe,EACf,cAAc,EACd,eAAe,EACf,SAAS,GACV,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,UAAU,GACX,MAAM,uBAAuB,CAAA;AAG9B,YAAY,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACpD,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AACpE,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAG5D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA"}