@se-studio/core-ui 1.0.106 → 1.0.108
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/CHANGELOG.md +18 -0
- package/dist/cmsRegistration.d.ts +65 -0
- package/dist/cmsRegistration.d.ts.map +1 -1
- package/dist/cmsRegistration.js +38 -0
- package/dist/cmsRegistration.js.map +1 -1
- package/dist/elements/RtfOrString.d.ts +3 -1
- package/dist/elements/RtfOrString.d.ts.map +1 -1
- package/dist/elements/RtfOrString.js +2 -2
- package/dist/elements/RtfOrString.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/route-handlers/createCmsTxtHandler.d.ts.map +1 -1
- package/dist/route-handlers/createCmsTxtHandler.js +3 -2
- package/dist/route-handlers/createCmsTxtHandler.js.map +1 -1
- package/dist/route-handlers/createGuidelinesHandler.d.ts +1 -1
- package/dist/route-handlers/createGuidelinesHandler.d.ts.map +1 -1
- package/dist/route-handlers/createGuidelinesHandler.js +5 -5
- package/dist/route-handlers/createGuidelinesHandler.js.map +1 -1
- package/dist/rtf/rtf.d.ts +4 -2
- package/dist/rtf/rtf.d.ts.map +1 -1
- package/dist/rtf/rtf.js +8 -4
- package/dist/rtf/rtf.js.map +1 -1
- package/dist/utils/createDefaultRenderText.d.ts +17 -0
- package/dist/utils/createDefaultRenderText.d.ts.map +1 -0
- package/dist/utils/createDefaultRenderText.js +23 -0
- package/dist/utils/createDefaultRenderText.js.map +1 -0
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @se-studio/core-ui
|
|
2
2
|
|
|
3
|
+
## 1.0.108
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Bulk version bump: patch for all packages
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
- @se-studio/contentful-rest-api@1.0.108
|
|
10
|
+
- @se-studio/core-data-types@1.0.108
|
|
11
|
+
|
|
12
|
+
## 1.0.107
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- Bulk version bump: patch for all packages
|
|
17
|
+
- Updated dependencies
|
|
18
|
+
- @se-studio/contentful-rest-api@1.0.107
|
|
19
|
+
- @se-studio/core-data-types@1.0.107
|
|
20
|
+
|
|
3
21
|
## 1.0.106
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
|
@@ -24,6 +24,13 @@ import type { ITyped } from '@se-studio/core-data-types';
|
|
|
24
24
|
import type { CollectionRenderer, EmbeddedCollectionRenderer } from './components/CmsCollection';
|
|
25
25
|
import type { ComponentRenderer, EmbeddedComponentRenderer } from './components/CmsComponent';
|
|
26
26
|
import type { EmbeddedExternalComponentRenderer, ExternalComponentRenderer } from './components/CmsExternalComponent';
|
|
27
|
+
/**
|
|
28
|
+
* Converter function for a single CMS item to a markdown string.
|
|
29
|
+
* Structurally identical to `MarkdownItemConverter` in `@se-studio/markdown-renderer`,
|
|
30
|
+
* but uses `context: unknown` so `core-ui` does not depend on that package.
|
|
31
|
+
* App-side implementations cast `context` to `MarkdownConverterContext` inside the function body.
|
|
32
|
+
*/
|
|
33
|
+
export type MarkdownItemConverter = (item: ITyped, context: unknown, headingLevel: number) => string;
|
|
27
34
|
/**
|
|
28
35
|
* A Contentful Rich Text document stored as-is for direct rendering in the showcase.
|
|
29
36
|
* Uses `unknown` for `json` so JSON-imported curated mocks are compatible without casts
|
|
@@ -91,6 +98,8 @@ export interface ComponentRegistration<TName extends string = string, TComponent
|
|
|
91
98
|
showcaseExclude?: boolean;
|
|
92
99
|
/** If set, this component suppresses itself when any of these types exist in the page contents */
|
|
93
100
|
defaultOf?: string[];
|
|
101
|
+
/** Optional custom markdown converter for search indexing. Overrides the generic component renderer. */
|
|
102
|
+
markdownConverter?: MarkdownItemConverter;
|
|
94
103
|
}
|
|
95
104
|
/**
|
|
96
105
|
* Registration for a CMS collection.
|
|
@@ -121,6 +130,8 @@ export interface CollectionRegistration<TName extends string = string, TCollecti
|
|
|
121
130
|
showcaseExclude?: boolean;
|
|
122
131
|
/** If set, this collection suppresses itself when any of these types exist in the page contents */
|
|
123
132
|
defaultOf?: string[];
|
|
133
|
+
/** Optional custom markdown converter for search indexing. Overrides the generic collection renderer. */
|
|
134
|
+
markdownConverter?: MarkdownItemConverter;
|
|
124
135
|
}
|
|
125
136
|
/**
|
|
126
137
|
* Registration for an external component (forms, iframes, third-party widgets).
|
|
@@ -137,6 +148,8 @@ export interface ExternalComponentRegistration<TName extends string = string, TE
|
|
|
137
148
|
* - A renderer function: used as the dedicated embedded renderer.
|
|
138
149
|
*/
|
|
139
150
|
embeddedRenderer?: EmbeddedExternalComponentRenderer<TExternal> | false;
|
|
151
|
+
/** Optional custom markdown converter for search indexing. */
|
|
152
|
+
markdownConverter?: MarkdownItemConverter;
|
|
140
153
|
}
|
|
141
154
|
type ComponentRegistrationsInput<TComponent extends ITyped> = readonly ComponentRegistration<string, TComponent>[] | Record<string, ComponentRegistration<string, TComponent>>;
|
|
142
155
|
/**
|
|
@@ -216,5 +229,57 @@ export declare function defineCollection<TName extends string, TCollection exten
|
|
|
216
229
|
* ```
|
|
217
230
|
*/
|
|
218
231
|
export declare function defineExternalComponent<TName extends string, TExternal extends ITyped>(registration: ExternalComponentRegistration<TName, TExternal>): ExternalComponentRegistration<TName, TExternal>;
|
|
232
|
+
/**
|
|
233
|
+
* Registration for a custom CMS data type that can appear inside collection contents.
|
|
234
|
+
* Use this for types like IPlan, IPricingPlan that have their own `item.type` value
|
|
235
|
+
* (distinct from 'Component' / 'Collection').
|
|
236
|
+
*
|
|
237
|
+
* @example
|
|
238
|
+
* ```ts
|
|
239
|
+
* export const PlanDataType = defineDataType({
|
|
240
|
+
* name: 'plan',
|
|
241
|
+
* markdownConverter: (item, context, headingLevel) => {
|
|
242
|
+
* const plan = item as IPlan;
|
|
243
|
+
* return `### ${plan.name}\n\n`;
|
|
244
|
+
* },
|
|
245
|
+
* });
|
|
246
|
+
* ```
|
|
247
|
+
*/
|
|
248
|
+
export interface DataTypeRegistration<TName extends string = string, TData extends ITyped = ITyped> {
|
|
249
|
+
/** The value of `item.type` for this data type (e.g. 'plan', 'pricingPlan') */
|
|
250
|
+
name: TName;
|
|
251
|
+
/** Markdown converter for search indexing */
|
|
252
|
+
markdownConverter: (item: TData, context: unknown, headingLevel: number) => string;
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Helper to create a data type registration with type inference.
|
|
256
|
+
*/
|
|
257
|
+
export declare function defineDataType<TName extends string, TData extends ITyped>(registration: DataTypeRegistration<TName, TData>): DataTypeRegistration<TName, TData>;
|
|
258
|
+
/** Minimal shape shared by all registration types that can carry a markdown converter. */
|
|
259
|
+
interface HasMarkdownConverter {
|
|
260
|
+
name: string;
|
|
261
|
+
markdownConverter?: MarkdownItemConverter | ((item: ITyped, context: unknown, headingLevel: number) => string);
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Builds a `customConverters` map suitable for `MarkdownConverterContext.customConverters`
|
|
265
|
+
* from any combination of component, collection, external, or data-type registration lists.
|
|
266
|
+
*
|
|
267
|
+
* Keys are the name used for dispatch:
|
|
268
|
+
* - `ComponentRegistration.name` → matched against `component.componentType`
|
|
269
|
+
* - `CollectionRegistration.name` → matched against `collection.collectionType`
|
|
270
|
+
* - `ExternalComponentRegistration.name` → matched against external component type
|
|
271
|
+
* - `DataTypeRegistration.name` → matched against `item.type`
|
|
272
|
+
*
|
|
273
|
+
* @example
|
|
274
|
+
* ```ts
|
|
275
|
+
* const customConverters = buildMarkdownConverters(
|
|
276
|
+
* dataTypeRegistrations,
|
|
277
|
+
* componentRegistrationsList,
|
|
278
|
+
* collectionRegistrationsList,
|
|
279
|
+
* );
|
|
280
|
+
* // Pass to MarkdownConverterContext.customConverters or rebuildSearchIndex({ customConverters })
|
|
281
|
+
* ```
|
|
282
|
+
*/
|
|
283
|
+
export declare function buildMarkdownConverters(...lists: Array<readonly HasMarkdownConverter[] | Record<string, HasMarkdownConverter>>): Record<string, MarkdownItemConverter>;
|
|
219
284
|
export {};
|
|
220
285
|
//# sourceMappingURL=cmsRegistration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmsRegistration.d.ts","sourceRoot":"","sources":["../src/cmsRegistration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACjG,OAAO,KAAK,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,KAAK,EACV,iCAAiC,EACjC,yBAAyB,EAC1B,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"cmsRegistration.d.ts","sourceRoot":"","sources":["../src/cmsRegistration.ts"],"names":[],"mappings":"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"}
|
package/dist/cmsRegistration.js
CHANGED
|
@@ -190,4 +190,42 @@ export function defineCollection(registration) {
|
|
|
190
190
|
export function defineExternalComponent(registration) {
|
|
191
191
|
return registration;
|
|
192
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Helper to create a data type registration with type inference.
|
|
195
|
+
*/
|
|
196
|
+
export function defineDataType(registration) {
|
|
197
|
+
return registration;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Builds a `customConverters` map suitable for `MarkdownConverterContext.customConverters`
|
|
201
|
+
* from any combination of component, collection, external, or data-type registration lists.
|
|
202
|
+
*
|
|
203
|
+
* Keys are the name used for dispatch:
|
|
204
|
+
* - `ComponentRegistration.name` → matched against `component.componentType`
|
|
205
|
+
* - `CollectionRegistration.name` → matched against `collection.collectionType`
|
|
206
|
+
* - `ExternalComponentRegistration.name` → matched against external component type
|
|
207
|
+
* - `DataTypeRegistration.name` → matched against `item.type`
|
|
208
|
+
*
|
|
209
|
+
* @example
|
|
210
|
+
* ```ts
|
|
211
|
+
* const customConverters = buildMarkdownConverters(
|
|
212
|
+
* dataTypeRegistrations,
|
|
213
|
+
* componentRegistrationsList,
|
|
214
|
+
* collectionRegistrationsList,
|
|
215
|
+
* );
|
|
216
|
+
* // Pass to MarkdownConverterContext.customConverters or rebuildSearchIndex({ customConverters })
|
|
217
|
+
* ```
|
|
218
|
+
*/
|
|
219
|
+
export function buildMarkdownConverters(...lists) {
|
|
220
|
+
const result = {};
|
|
221
|
+
for (const list of lists) {
|
|
222
|
+
const arr = Array.isArray(list) ? list : Object.values(list);
|
|
223
|
+
for (const reg of arr) {
|
|
224
|
+
if (reg.markdownConverter) {
|
|
225
|
+
result[reg.name] = reg.markdownConverter;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return result;
|
|
230
|
+
}
|
|
193
231
|
//# sourceMappingURL=cmsRegistration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmsRegistration.js","sourceRoot":"","sources":["../src/cmsRegistration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;
|
|
1
|
+
{"version":3,"file":"cmsRegistration.js","sourceRoot":"","sources":["../src/cmsRegistration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { RenderNode } from '@contentful/rich-text-react-renderer';
|
|
1
|
+
import type { RenderNode, RenderText } from '@contentful/rich-text-react-renderer';
|
|
2
2
|
import type { IContentfulRichText } from '@se-studio/contentful-rest-api';
|
|
3
3
|
import type { IContentContext } from '@se-studio/core-data-types';
|
|
4
4
|
import type { CSSProperties } from 'react';
|
|
@@ -13,5 +13,7 @@ export declare const RtfOrString: React.FC<{
|
|
|
13
13
|
embeddedPositionClassName?: string;
|
|
14
14
|
/** Optional custom render node overrides. Merged after defaults, so individual nodes can be replaced. */
|
|
15
15
|
renderNode?: RenderNode;
|
|
16
|
+
/** Optional custom text renderer. Overrides the default text/shortcode processing inside rich text. */
|
|
17
|
+
renderText?: RenderText;
|
|
16
18
|
}>;
|
|
17
19
|
//# sourceMappingURL=RtfOrString.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RtfOrString.d.ts","sourceRoot":"","sources":["../../src/elements/RtfOrString.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"RtfOrString.d.ts","sourceRoot":"","sources":["../../src/elements/RtfOrString.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,yGAAyG;IACzG,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,uGAAuG;IACvG,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAqCA,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { RTF } from '../rtf/rtf';
|
|
3
|
-
export const RtfOrString = ({ id, content, className, style, rendererConfig, contentContext, embeddedPositionClassName = 'w-full col-span-full', renderNode, ...other }) => {
|
|
3
|
+
export const RtfOrString = ({ id, content, className, style, rendererConfig, contentContext, embeddedPositionClassName = 'w-full col-span-full', renderNode, renderText, ...other }) => {
|
|
4
4
|
if (typeof content === 'string') {
|
|
5
5
|
return (_jsx("div", { className: className, style: style, ...other, children: content }));
|
|
6
6
|
}
|
|
7
7
|
const json = content.json;
|
|
8
8
|
if (json) {
|
|
9
|
-
return (_jsx(RTF, { content: json, className: className, style: style, rendererConfig: rendererConfig, contentContext: contentContext, embeddedPositionClassName: embeddedPositionClassName, renderNode: renderNode, ...other }));
|
|
9
|
+
return (_jsx(RTF, { content: json, className: className, style: style, rendererConfig: rendererConfig, contentContext: contentContext, embeddedPositionClassName: embeddedPositionClassName, renderNode: renderNode, renderText: renderText, ...other }));
|
|
10
10
|
}
|
|
11
11
|
return null;
|
|
12
12
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RtfOrString.js","sourceRoot":"","sources":["../../src/elements/RtfOrString.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,MAAM,CAAC,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"RtfOrString.js","sourceRoot":"","sources":["../../src/elements/RtfOrString.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,MAAM,CAAC,MAAM,WAAW,GAYnB,CAAC,EACJ,EAAE,EACF,OAAO,EACP,SAAS,EACT,KAAK,EACL,cAAc,EACd,cAAc,EACd,yBAAyB,GAAG,sBAAsB,EAClD,UAAU,EACV,UAAU,EACV,GAAG,KAAK,EACT,EAA6B,EAAE;IAC9B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CACL,cAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,KAAM,KAAK,YAC/C,OAAO,GACJ,CACP,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAI,OAA+B,CAAC,IAAI,CAAC;IACnD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CACL,KAAC,GAAG,IACF,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,EAC9B,yBAAyB,EAAE,yBAAyB,EACpD,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,KAClB,KAAK,GACT,CACH,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
*
|
|
34
34
|
* @packageDocumentation
|
|
35
35
|
*/
|
|
36
|
+
export type { RenderNode, RenderText } from '@contentful/rich-text-react-renderer';
|
|
36
37
|
export { AnalyticsProvider, useAnalyticsContext } from './analytics/AnalyticsProvider';
|
|
37
38
|
export { ConsentAwareAdapter, ConsoleAnalyticsAdapter, GoogleTagManagerAdapter, } from './analytics/adapters';
|
|
38
39
|
export type { AnalyticsAdapter, ClickTrackingProperties, PageTrackingProperties, } from './analytics/types';
|
|
@@ -40,8 +41,8 @@ export { useAnalytics } from './analytics/useAnalytics';
|
|
|
40
41
|
export type { AppHelpers, AppHelpersConfig, AppHelpersWithSitemap, } from './app-helpers';
|
|
41
42
|
export { createAppHelpers } from './app-helpers';
|
|
42
43
|
export type { CmsRendererConfig, CmsRendererTypes, FetchHelpers, LinkFetchOptions, PreviewDataAttributes, PreviewHelpers, } from './CmsRendererConfig';
|
|
43
|
-
export type { CollectionRegistration, ComponentRegistration, ExternalComponentRegistration, MockData, } from './cmsRegistration';
|
|
44
|
-
export { buildCollectionMaps, buildComponentMaps, buildExternalComponentMaps, defineCollection, defineComponent, defineExternalComponent, } from './cmsRegistration';
|
|
44
|
+
export type { CollectionRegistration, ComponentRegistration, DataTypeRegistration, ExternalComponentRegistration, MarkdownItemConverter, MockData, } from './cmsRegistration';
|
|
45
|
+
export { buildCollectionMaps, buildComponentMaps, buildExternalComponentMaps, buildMarkdownConverters, defineCollection, defineComponent, defineDataType, defineExternalComponent, } from './cmsRegistration';
|
|
45
46
|
export { BannerManager } from './components/banner/BannerManager';
|
|
46
47
|
export { ClientMonitor } from './components/ClientMonitor.js';
|
|
47
48
|
export type { CollectionMap, CollectionRenderer, CollectionRendererProps, EmbeddedCollectionMap, EmbeddedCollectionRenderer, } from './components/CmsCollection';
|
|
@@ -88,6 +89,7 @@ export { buildPageMetadata, calculateTitleAndDescription, getLocalizedPath, } fr
|
|
|
88
89
|
export { cn } from './utils/cn';
|
|
89
90
|
export { getRelatedArticles, getRelatedPeople, processCollectionLinks, } from './utils/componentUtils';
|
|
90
91
|
export { convertText } from './utils/convertText';
|
|
92
|
+
export { createDefaultRenderText } from './utils/createDefaultRenderText';
|
|
91
93
|
export { handleCmsError } from './utils/errorHandling';
|
|
92
94
|
export { captureException, initErrorMonitoring } from './utils/errorMonitoring';
|
|
93
95
|
export { getLinkAriaLabel } from './utils/linkAccessibility';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -33,14 +33,13 @@
|
|
|
33
33
|
*
|
|
34
34
|
* @packageDocumentation
|
|
35
35
|
*/
|
|
36
|
-
// Component and Collection Mapping Infrastructure
|
|
37
36
|
// Analytics
|
|
38
37
|
export { AnalyticsProvider, useAnalyticsContext } from './analytics/AnalyticsProvider';
|
|
39
38
|
// Analytics Adapters
|
|
40
39
|
export { ConsentAwareAdapter, ConsoleAnalyticsAdapter, GoogleTagManagerAdapter, } from './analytics/adapters';
|
|
41
40
|
export { useAnalytics } from './analytics/useAnalytics';
|
|
42
41
|
export { createAppHelpers } from './app-helpers';
|
|
43
|
-
export { buildCollectionMaps, buildComponentMaps, buildExternalComponentMaps, defineCollection, defineComponent, defineExternalComponent, } from './cmsRegistration';
|
|
42
|
+
export { buildCollectionMaps, buildComponentMaps, buildExternalComponentMaps, buildMarkdownConverters, defineCollection, defineComponent, defineDataType, defineExternalComponent, } from './cmsRegistration';
|
|
44
43
|
export { BannerManager } from './components/banner/BannerManager';
|
|
45
44
|
export { ClientMonitor } from './components/ClientMonitor.js';
|
|
46
45
|
export { CmsCollection } from './components/CmsCollection';
|
|
@@ -85,6 +84,7 @@ export { buildPageMetadata, calculateTitleAndDescription, getLocalizedPath, } fr
|
|
|
85
84
|
export { cn } from './utils/cn';
|
|
86
85
|
export { getRelatedArticles, getRelatedPeople, processCollectionLinks, } from './utils/componentUtils';
|
|
87
86
|
export { convertText } from './utils/convertText';
|
|
87
|
+
export { createDefaultRenderText } from './utils/createDefaultRenderText';
|
|
88
88
|
export { handleCmsError } from './utils/errorHandling';
|
|
89
89
|
export { captureException, initErrorMonitoring } from './utils/errorMonitoring';
|
|
90
90
|
export { getLinkAriaLabel } from './utils/linkAccessibility';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createCmsTxtHandler.d.ts","sourceRoot":"","sources":["../../src/route-handlers/createCmsTxtHandler.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,oBAAoB,GAC5B,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,QAAQ,
|
|
1
|
+
{"version":3,"file":"createCmsTxtHandler.d.ts","sourceRoot":"","sources":["../../src/route-handlers/createCmsTxtHandler.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,oBAAoB,GAC5B,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,QAAQ,CA8GjC"}
|
|
@@ -10,7 +10,6 @@ import { NextResponse } from 'next/server';
|
|
|
10
10
|
*/
|
|
11
11
|
export function createCmsTxtHandler(options) {
|
|
12
12
|
const { appName, port, extraContent } = options;
|
|
13
|
-
// biome-ignore lint/style/useNamingConvention: Route handler name convention
|
|
14
13
|
return function GET() {
|
|
15
14
|
const content = `# CMS Tools and Resources — ${appName}
|
|
16
15
|
|
|
@@ -52,11 +51,13 @@ Intended for LLMs creating or editing pages — does not require code access.
|
|
|
52
51
|
URL: /cms/guidelines.md
|
|
53
52
|
Type: Text/Markdown (full guidelines document)
|
|
54
53
|
|
|
55
|
-
Single component or
|
|
54
|
+
Single component, collection, or external (smaller context):
|
|
56
55
|
|
|
57
56
|
URL: /cms/guidelines.md?component=<TypeName>
|
|
58
57
|
URL: /cms/guidelines.md?collection=<TypeName>
|
|
58
|
+
URL: /cms/guidelines.md?external=<TypeName>
|
|
59
59
|
Example: /cms/guidelines.md?component=Hero
|
|
60
|
+
Example: /cms/guidelines.md?external=formstack
|
|
60
61
|
|
|
61
62
|
The guidelines are generated periodically and committed to the repository.
|
|
62
63
|
For components not yet documented, the document notes they are pending.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createCmsTxtHandler.js","sourceRoot":"","sources":["../../src/route-handlers/createCmsTxtHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAW3C;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAA6B;IAE7B,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAEhD,
|
|
1
|
+
{"version":3,"file":"createCmsTxtHandler.js","sourceRoot":"","sources":["../../src/route-handlers/createCmsTxtHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAW3C;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAA6B;IAE7B,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAEhD,OAAO,SAAS,GAAG;QACjB,MAAM,OAAO,GAAG,+BAA+B,OAAO;;;;;;yCAMjB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2F3C,YAAY,CAAC,CAAC,CAAC,YAAY,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAE/C,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE;YAC/B,OAAO,EAAE;gBACP,cAAc,EAAE,2BAA2B;gBAC3C,eAAe,EAAE,sBAAsB;aACxC;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -2,7 +2,7 @@ export interface GuidelinesHandlerOptions {
|
|
|
2
2
|
cwd: string;
|
|
3
3
|
}
|
|
4
4
|
/**
|
|
5
|
-
* Creates a Next.js GET handler for the /cms
|
|
5
|
+
* Creates a Next.js GET handler for the /cms/guidelines.md route.
|
|
6
6
|
*
|
|
7
7
|
* Serves the committed COMPONENT_GUIDELINES_FOR_LLM.md document as plain text/markdown.
|
|
8
8
|
* The document is self-contained: no source code access is required to read it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createGuidelinesHandler.d.ts","sourceRoot":"","sources":["../../src/route-handlers/createGuidelinesHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createGuidelinesHandler.d.ts","sourceRoot":"","sources":["../../src/route-handlers/createGuidelinesHandler.ts"],"names":[],"mappings":"AA2CA,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,wBAAwB,GAChC,CAAC,OAAO,EAAE,OAAO,KAAK,QAAQ,CA2DhC"}
|
|
@@ -3,11 +3,12 @@ import { join } from 'node:path';
|
|
|
3
3
|
import { NextResponse } from 'next/server';
|
|
4
4
|
/**
|
|
5
5
|
* Extract the section for a given type name from the merged guidelines document.
|
|
6
|
-
*
|
|
6
|
+
* Returns everything from "# <TypeName>" up to (but not including) the next "---"
|
|
7
|
+
* separator. Stops only at fragment boundaries, not at ## headings inside the section.
|
|
7
8
|
*/
|
|
8
9
|
function extractSection(content, typeName) {
|
|
9
10
|
const escapedName = typeName.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
10
|
-
const sectionPattern = new RegExp(`(^# ${escapedName}\\s*$[\\s\\S]*?)(
|
|
11
|
+
const sectionPattern = new RegExp(`(^# ${escapedName}\\s*$[\\s\\S]*?)(?=^---$)`, 'mi');
|
|
11
12
|
const match = sectionPattern.exec(content);
|
|
12
13
|
if (match?.[1]) {
|
|
13
14
|
return match[1].trim();
|
|
@@ -37,7 +38,7 @@ function extractSection(content, typeName) {
|
|
|
37
38
|
return sectionLines.join('\n').trim();
|
|
38
39
|
}
|
|
39
40
|
/**
|
|
40
|
-
* Creates a Next.js GET handler for the /cms
|
|
41
|
+
* Creates a Next.js GET handler for the /cms/guidelines.md route.
|
|
41
42
|
*
|
|
42
43
|
* Serves the committed COMPONENT_GUIDELINES_FOR_LLM.md document as plain text/markdown.
|
|
43
44
|
* The document is self-contained: no source code access is required to read it.
|
|
@@ -60,7 +61,6 @@ export function createGuidelinesHandler(options) {
|
|
|
60
61
|
return null;
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
|
-
// biome-ignore lint/style/useNamingConvention: Route handler name convention
|
|
64
64
|
return function GET(request) {
|
|
65
65
|
const { searchParams } = new URL(request.url);
|
|
66
66
|
const component = searchParams.get('component');
|
|
@@ -77,7 +77,7 @@ export function createGuidelinesHandler(options) {
|
|
|
77
77
|
if (typeName) {
|
|
78
78
|
const section = extractSection(guidelines, typeName);
|
|
79
79
|
if (!section) {
|
|
80
|
-
return new NextResponse(`# Not found\n\nNo guideline found for "${typeName}".\n\nAvailable at /cms
|
|
80
|
+
return new NextResponse(`# Not found\n\nNo guideline found for "${typeName}".\n\nAvailable at /cms/guidelines.md (full document).`, {
|
|
81
81
|
status: 404,
|
|
82
82
|
headers: { 'Content-Type': 'text/plain; charset=utf-8' },
|
|
83
83
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createGuidelinesHandler.js","sourceRoot":"","sources":["../../src/route-handlers/createGuidelinesHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C
|
|
1
|
+
{"version":3,"file":"createGuidelinesHandler.js","sourceRoot":"","sources":["../../src/route-handlers/createGuidelinesHandler.ts"],"names":[],"mappings":"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"}
|
package/dist/rtf/rtf.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type RenderNode } from '@contentful/rich-text-react-renderer';
|
|
1
|
+
import { type RenderNode, type RenderText } from '@contentful/rich-text-react-renderer';
|
|
2
2
|
import { type Document } from '@contentful/rich-text-types';
|
|
3
3
|
import type { IContentContext } from '@se-studio/core-data-types';
|
|
4
4
|
import { type HTMLAttributes } from 'react';
|
|
@@ -17,6 +17,8 @@ type RTFProps = {
|
|
|
17
17
|
embeddedPositionClassName?: string;
|
|
18
18
|
/** Optional custom render node overrides. Merged after defaults, so individual nodes can be replaced. */
|
|
19
19
|
renderNode?: RenderNode;
|
|
20
|
+
/** Optional custom text renderer. Overrides the default text/shortcode processing. */
|
|
21
|
+
renderText?: RenderText;
|
|
20
22
|
} & Omit<HTMLAttributes<HTMLElement>, 'content'>;
|
|
21
23
|
/**
|
|
22
24
|
* Renders Contentful rich text fields with support for embedded entries and assets.
|
|
@@ -52,6 +54,6 @@ type RTFProps = {
|
|
|
52
54
|
* />
|
|
53
55
|
* ```
|
|
54
56
|
*/
|
|
55
|
-
export declare function RTF({ content, className, style, rendererConfig, contentContext, embeddedPositionClassName, renderNode, ...other }: RTFProps): import("react/jsx-runtime").JSX.Element | null;
|
|
57
|
+
export declare function RTF({ content, className, style, rendererConfig, contentContext, embeddedPositionClassName, renderNode, renderText, ...other }: RTFProps): import("react/jsx-runtime").JSX.Element | null;
|
|
56
58
|
export {};
|
|
57
59
|
//# sourceMappingURL=rtf.d.ts.map
|
package/dist/rtf/rtf.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rtf.d.ts","sourceRoot":"","sources":["../../src/rtf/rtf.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,KAAK,QAAQ,EAGd,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,4BAA4B,CAAC;AAE3F,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"rtf.d.ts","sourceRoot":"","sources":["../../src/rtf/rtf.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,UAAU,EAChB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,KAAK,QAAQ,EAGd,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,4BAA4B,CAAC;AAE3F,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAyN9D;;GAEG;AACH,KAAK,QAAQ,GAAG;IACd,8CAA8C;IAC9C,OAAO,EAAE,QAAQ,CAAC;IAClB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,uDAAuD;IACvD,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,0DAA0D;IAC1D,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,yGAAyG;IACzG,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,sFAAsF;IACtF,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,GAAG,CAAC,EAClB,OAAO,EACP,SAAS,EACT,KAAK,EACL,cAAc,EACd,cAAc,EACd,yBAAyB,EACzB,UAAU,EACV,UAAU,EACV,GAAG,KAAK,EACT,EAAE,QAAQ,kDAuBV"}
|
package/dist/rtf/rtf.js
CHANGED
|
@@ -99,7 +99,7 @@ function createComplexLinksRenderer(rendererConfig, contentContext, embeddedPosi
|
|
|
99
99
|
},
|
|
100
100
|
};
|
|
101
101
|
}
|
|
102
|
-
function buildOptions(rendererConfig, contentContext, embeddedPositionClassName, renderNode) {
|
|
102
|
+
function buildOptions(rendererConfig, contentContext, embeddedPositionClassName, renderNode, renderText) {
|
|
103
103
|
const complexLinksRenderer = createComplexLinksRenderer(rendererConfig, contentContext, embeddedPositionClassName);
|
|
104
104
|
// Counter for generating unique keys for text nodes
|
|
105
105
|
let textNodeCounter = 0;
|
|
@@ -113,7 +113,11 @@ function buildOptions(rendererConfig, contentContext, embeddedPositionClassName,
|
|
|
113
113
|
// Wrap text nodes in keyed fragments to avoid React key warnings
|
|
114
114
|
// when they appear alongside other inline elements
|
|
115
115
|
const key = `text-${textNodeCounter++}`;
|
|
116
|
-
const content =
|
|
116
|
+
const content = renderText
|
|
117
|
+
? renderText(text)
|
|
118
|
+
: processText && contentContext
|
|
119
|
+
? processText(text, contentContext)
|
|
120
|
+
: convertText(text);
|
|
117
121
|
return _jsx(Fragment, { children: content }, key);
|
|
118
122
|
},
|
|
119
123
|
preserveWhitespace: true,
|
|
@@ -154,8 +158,8 @@ function buildOptions(rendererConfig, contentContext, embeddedPositionClassName,
|
|
|
154
158
|
* />
|
|
155
159
|
* ```
|
|
156
160
|
*/
|
|
157
|
-
export function RTF({ content, className, style, rendererConfig, contentContext, embeddedPositionClassName, renderNode, ...other }) {
|
|
158
|
-
const options = buildOptions(rendererConfig, contentContext, embeddedPositionClassName, renderNode);
|
|
161
|
+
export function RTF({ content, className, style, rendererConfig, contentContext, embeddedPositionClassName, renderNode, renderText, ...other }) {
|
|
162
|
+
const options = buildOptions(rendererConfig, contentContext, embeddedPositionClassName, renderNode, renderText);
|
|
159
163
|
try {
|
|
160
164
|
const doc = documentToReactComponents(content, options);
|
|
161
165
|
return (_jsx("div", { className: className, style: style, ...other, children: doc }));
|
package/dist/rtf/rtf.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rtf.js","sourceRoot":"","sources":["../../src/rtf/rtf.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,yBAAyB,
|
|
1
|
+
{"version":3,"file":"rtf.js","sourceRoot":"","sources":["../../src/rtf/rtf.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { RenderText } from '@contentful/rich-text-react-renderer';
|
|
2
|
+
import type { IContentContext, ProcessTextFn } from '@se-studio/core-data-types';
|
|
3
|
+
/**
|
|
4
|
+
* Returns the default renderText handler used internally by RTF.
|
|
5
|
+
*
|
|
6
|
+
* Use this as the fallback inside a custom renderText so that unmatched text
|
|
7
|
+
* still passes through the normal processText → convertText pipeline:
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* const fallback = createDefaultRenderText(rendererConfig?.processText, contentContext);
|
|
11
|
+
* const renderText: RenderText = (text) => {
|
|
12
|
+
* if (isShortcode(text)) return <span>{text}</span>;
|
|
13
|
+
* return fallback(text);
|
|
14
|
+
* };
|
|
15
|
+
*/
|
|
16
|
+
export declare function createDefaultRenderText(processText?: ProcessTextFn, contentContext?: IContentContext): RenderText;
|
|
17
|
+
//# sourceMappingURL=createDefaultRenderText.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDefaultRenderText.d.ts","sourceRoot":"","sources":["../../src/utils/createDefaultRenderText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAIjF;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,CAAC,EAAE,aAAa,EAC3B,cAAc,CAAC,EAAE,eAAe,GAC/B,UAAU,CAOZ"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { convertText } from './convertText';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the default renderText handler used internally by RTF.
|
|
4
|
+
*
|
|
5
|
+
* Use this as the fallback inside a custom renderText so that unmatched text
|
|
6
|
+
* still passes through the normal processText → convertText pipeline:
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* const fallback = createDefaultRenderText(rendererConfig?.processText, contentContext);
|
|
10
|
+
* const renderText: RenderText = (text) => {
|
|
11
|
+
* if (isShortcode(text)) return <span>{text}</span>;
|
|
12
|
+
* return fallback(text);
|
|
13
|
+
* };
|
|
14
|
+
*/
|
|
15
|
+
export function createDefaultRenderText(processText, contentContext) {
|
|
16
|
+
return (text) => {
|
|
17
|
+
if (processText && contentContext) {
|
|
18
|
+
return processText(text, contentContext);
|
|
19
|
+
}
|
|
20
|
+
return convertText(text);
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=createDefaultRenderText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDefaultRenderText.js","sourceRoot":"","sources":["../../src/utils/createDefaultRenderText.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CACrC,WAA2B,EAC3B,cAAgC;IAEhC,OAAO,CAAC,IAAY,EAAa,EAAE;QACjC,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;YAClC,OAAO,WAAW,CAAC,IAAI,EAAE,cAAc,CAAc,CAAC;QACxD,CAAC;QACD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@se-studio/core-ui",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.108",
|
|
4
4
|
"description": "Shared React UI component library with Tailwind CSS v4 for SE Studio applications",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -68,8 +68,8 @@
|
|
|
68
68
|
"mustache": "4.2.0",
|
|
69
69
|
"server-only": "0.0.1",
|
|
70
70
|
"tailwind-merge": "^3.5.0",
|
|
71
|
-
"@se-studio/contentful-rest-api": "1.0.
|
|
72
|
-
"@se-studio/core-data-types": "1.0.
|
|
71
|
+
"@se-studio/contentful-rest-api": "1.0.108",
|
|
72
|
+
"@se-studio/core-data-types": "1.0.108"
|
|
73
73
|
},
|
|
74
74
|
"devDependencies": {
|
|
75
75
|
"@biomejs/biome": "^2.4.7",
|