@mgdis/stencil-helpers 2.2.6 → 3.1.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/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # @mgdis/stencil-helpers
2
2
 
3
- This package centralizes helper functions for your [Stencil](https://stenciljs.com/) projects. It is divided into four thematic sections:
3
+ This package centralizes helper functions for your [Stencil](https://stenciljs.com/) projects.
4
+
5
+ It is divided into four thematic sections:
4
6
 
5
7
  - **Components**: Centralizes all component utilities.
6
8
  - **Locale**: Centralizes all necessary locale utilities for managing content translation.
@@ -12,7 +14,3 @@ This package centralizes helper functions for your [Stencil](https://stenciljs.c
12
14
  ```bash
13
15
  pnpm i @mgdis/stencil-helpers
14
16
  ```
15
-
16
- ## Documentation
17
-
18
- Read the full [documentation](./docs/README.md)
@@ -110,5 +110,91 @@ export declare const cleanString: (text: string) => string;
110
110
  * @param callback - code to excute on next tick
111
111
  * @returns differed code excution
112
112
  */
113
- export declare const nextTick: (callback: () => void) => Promise<void>;
113
+ export declare const nextTick: (callback?: () => void) => Promise<void>;
114
+ /**
115
+ * Check if a value is of object type.
116
+ * @param object - The value to validate.
117
+ * @returns `true` if the value is a valid object (non-null and not an array), otherwise `false`.
118
+ */
119
+ export declare const isObject: <T>(object: unknown) => object is T;
120
+ /**
121
+ * Get object value from key
122
+ * @param object - object to query
123
+ * @param path - path of the property to get. Nested keys are allowed with `.` separators (eg: 'key0.key1.key2' = object[key0][key1][key2])
124
+ * @param defaultValue - The value returned for `undefined` resolved values
125
+ * @returns object value
126
+ */
127
+ export declare const getObjectValueFromKey: <T, R>(object: T, path: string, defaultValue?: R) => R | undefined;
128
+ /**
129
+ * Define getPage methode interface
130
+ */
131
+ export interface IGetPage<T> {
132
+ (offset?: number, filter?: Parameters<Array<T>['filter']>[0]): Page<T>;
133
+ }
134
+ /**
135
+ * Cursor type
136
+ */
137
+ export type CursorType = 'first' | 'next' | 'previous' | 'last';
138
+ /**
139
+ * Cursor possible values
140
+ */
141
+ export declare const Cursor: Record<string, CursorType>;
142
+ /**
143
+ * Define a valid Page object and navigate throw page items with cursor.
144
+ * Page object entries follow the REST API page practices.
145
+ */
146
+ export declare class Page<T> {
147
+ /**
148
+ * Define items
149
+ */
150
+ items: T[];
151
+ /**
152
+ * Define total
153
+ */
154
+ total: number;
155
+ /**
156
+ * Define top
157
+ */
158
+ top: number;
159
+ /**
160
+ * Define next
161
+ */
162
+ next?: IGetPage<T> | string | URL;
163
+ /**
164
+ * Define base index
165
+ */
166
+ readonly baseIndex = 1;
167
+ constructor(init: Partial<Pick<Page<T>, 'items' | 'top' | 'total' | 'next'>>);
168
+ /**
169
+ * Get index of items from cursor
170
+ * @param cursor - cursor to find
171
+ * @param oldItem - previous item
172
+ * @returns item index
173
+ */
174
+ getIndexFromCursor: (cursor?: CursorType, oldItem?: T) => number | null;
175
+ }
176
+ /**
177
+ * Paginate an items array to navigate into with pages.
178
+ * It follow REST standard and allow to navigate in items array with a similar format.
179
+ */
180
+ export declare class Paginate<T> {
181
+ #private;
182
+ /**
183
+ * Define paginated items
184
+ */
185
+ items: Page<T>['items'];
186
+ constructor(items: Page<T>['items'], options?: {
187
+ step?: number;
188
+ top?: Page<T>['top'];
189
+ total?: Page<T>['total'];
190
+ next?: Page<T>['next'];
191
+ });
192
+ /**
193
+ * Get page
194
+ * @param offset - pagiantion offset
195
+ * @param filter - filter methode
196
+ * @returns formated page
197
+ */
198
+ getPage: IGetPage<T>;
199
+ }
114
200
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,eAAW,EAAE,eAAW,KAAG,MAWnD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAI,UAAU,OAAO,KAAG,OAA+F,CAAC;AAE/I;;GAEG;AACH,qBAAa,SAAS;IACpB;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;gBAEN,SAAS,GAAE,MAAM,EAAO;IAIpC;;;OAGG;IACH,GAAG,GAAI,WAAW,MAAM,KAAG,IAAI,CAI7B;IAEF;;;OAGG;IACH,MAAM,GAAI,WAAW,MAAM,KAAG,IAAI,CAKhC;IAEF;;;;OAIG;IACH,GAAG,GAAI,WAAW,MAAM,KAAG,OAAO,CAEhC;IAEF;;;OAGG;IACH,IAAI,QAAO,MAAM,CAEf;CACH;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAAM,EAA2E,CAAC;AAE9I;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,SAAS,OAAO,EAAE,UAAU,MAAM,EAAE,KAAG,OAEhE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,kHAAgH,CAAC;AAE/I;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAI,aAAa,MAAM,KAAG,MAAM,EAItD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,EAAE,UAAS,MAAM,EAAO,KAAG,MAAM,EAgBpF,CAAC;AAkBF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAA0D,CAAC;AAEnH;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,KAAG,MAGzC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAA2D,CAAC;AAEpH;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,KAAG,MAMjC,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAU,UAAU,MAAM,IAAI,KAAG,OAAO,CAAC,IAAI,CAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}