@sitecore-jss/sitecore-jss-angular 22.10.0-canary.9 → 22.10.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.
Files changed (85) hide show
  1. package/LICENSE.txt +202 -202
  2. package/README.md +10 -10
  3. package/angular.json +47 -48
  4. package/dist/README.md +10 -10
  5. package/dist/fesm2022/sitecore-jss-sitecore-jss-angular.mjs +228 -393
  6. package/dist/fesm2022/sitecore-jss-sitecore-jss-angular.mjs.map +1 -1
  7. package/dist/index.d.ts +640 -3
  8. package/ng-package.json +13 -13
  9. package/package.json +22 -22
  10. package/tsconfig.json +10 -10
  11. package/tsconfig.spec.json +18 -18
  12. package/typings/README.md +2 -2
  13. package/dist/components/base-field.directive.d.ts +0 -39
  14. package/dist/components/date.directive.d.ts +0 -27
  15. package/dist/components/default-empty-image-field-editing-placeholder.component.d.ts +0 -8
  16. package/dist/components/default-empty-text-field-editing-placeholder.component.d.ts +0 -8
  17. package/dist/components/editframe.component.d.ts +0 -22
  18. package/dist/components/editing-scripts.component.d.ts +0 -16
  19. package/dist/components/field-metadata-marker.component.d.ts +0 -12
  20. package/dist/components/file.directive.d.ts +0 -17
  21. package/dist/components/form.component.d.ts +0 -48
  22. package/dist/components/generic-link.directive.d.ts +0 -24
  23. package/dist/components/hidden-rendering.component.d.ts +0 -6
  24. package/dist/components/image.directive.d.ts +0 -43
  25. package/dist/components/link.directive.d.ts +0 -41
  26. package/dist/components/missing-component.component.d.ts +0 -7
  27. package/dist/components/placeholder-loading.directive.d.ts +0 -8
  28. package/dist/components/placeholder.component.d.ts +0 -82
  29. package/dist/components/raw.component.d.ts +0 -12
  30. package/dist/components/render-component.component.d.ts +0 -33
  31. package/dist/components/render-each.directive.d.ts +0 -8
  32. package/dist/components/render-empty.directive.d.ts +0 -8
  33. package/dist/components/rendering-field-sxa.d.ts +0 -40
  34. package/dist/components/rendering-field.d.ts +0 -39
  35. package/dist/components/rendering.d.ts +0 -5
  36. package/dist/components/rich-text.directive.d.ts +0 -25
  37. package/dist/components/router-link.directive.d.ts +0 -23
  38. package/dist/components/text.directive.d.ts +0 -23
  39. package/dist/esm2022/components/base-field.directive.mjs +0 -56
  40. package/dist/esm2022/components/date.directive.mjs +0 -82
  41. package/dist/esm2022/components/default-empty-image-field-editing-placeholder.component.mjs +0 -26
  42. package/dist/esm2022/components/default-empty-text-field-editing-placeholder.component.mjs +0 -17
  43. package/dist/esm2022/components/editframe.component.mjs +0 -101
  44. package/dist/esm2022/components/editing-scripts.component.mjs +0 -59
  45. package/dist/esm2022/components/field-metadata-marker.component.mjs +0 -36
  46. package/dist/esm2022/components/file.directive.mjs +0 -49
  47. package/dist/esm2022/components/form.component.mjs +0 -125
  48. package/dist/esm2022/components/generic-link.directive.mjs +0 -75
  49. package/dist/esm2022/components/hidden-rendering.component.mjs +0 -20
  50. package/dist/esm2022/components/image.directive.mjs +0 -173
  51. package/dist/esm2022/components/link.directive.mjs +0 -153
  52. package/dist/esm2022/components/missing-component.component.mjs +0 -31
  53. package/dist/esm2022/components/placeholder-loading.directive.mjs +0 -17
  54. package/dist/esm2022/components/placeholder.component.mjs +0 -459
  55. package/dist/esm2022/components/raw.component.mjs +0 -39
  56. package/dist/esm2022/components/render-component.component.mjs +0 -106
  57. package/dist/esm2022/components/render-each.directive.mjs +0 -17
  58. package/dist/esm2022/components/render-empty.directive.mjs +0 -17
  59. package/dist/esm2022/components/rendering-field-sxa.mjs +0 -2
  60. package/dist/esm2022/components/rendering-field.mjs +0 -2
  61. package/dist/esm2022/components/rendering.mjs +0 -8
  62. package/dist/esm2022/components/rich-text.directive.mjs +0 -83
  63. package/dist/esm2022/components/router-link.directive.mjs +0 -57
  64. package/dist/esm2022/components/text.directive.mjs +0 -76
  65. package/dist/esm2022/lib.module.mjs +0 -173
  66. package/dist/esm2022/public_api.mjs +0 -32
  67. package/dist/esm2022/services/data-resolver-factory.mjs +0 -60
  68. package/dist/esm2022/services/guard-resolver-factory.mjs +0 -98
  69. package/dist/esm2022/services/jss-can-activate-error.mjs +0 -15
  70. package/dist/esm2022/services/jss-component-factory.service.mjs +0 -103
  71. package/dist/esm2022/services/jss-state.service.mjs +0 -44
  72. package/dist/esm2022/services/placeholder.token.mjs +0 -28
  73. package/dist/esm2022/services/shared.token.mjs +0 -6
  74. package/dist/esm2022/sitecore-jss-sitecore-jss-angular.mjs +0 -5
  75. package/dist/esm2022/utils.mjs +0 -17
  76. package/dist/lib.module.d.ts +0 -50
  77. package/dist/public_api.d.ts +0 -33
  78. package/dist/services/data-resolver-factory.d.ts +0 -13
  79. package/dist/services/guard-resolver-factory.d.ts +0 -11
  80. package/dist/services/jss-can-activate-error.d.ts +0 -10
  81. package/dist/services/jss-component-factory.service.d.ts +0 -27
  82. package/dist/services/jss-state.service.d.ts +0 -36
  83. package/dist/services/placeholder.token.d.ts +0 -65
  84. package/dist/services/shared.token.d.ts +0 -12
  85. package/dist/utils.d.ts +0 -6
package/dist/index.d.ts CHANGED
@@ -1,5 +1,642 @@
1
+ import * as i0 from '@angular/core';
2
+ import { OnChanges, SimpleChanges, ViewContainerRef, EmbeddedViewRef, TemplateRef, Type, Renderer2, InjectionToken, OnInit, DoCheck, OnDestroy, EventEmitter, TransferState, ModuleWithProviders } from '@angular/core';
3
+ import { GenericFieldValue, FieldMetadata, ComponentRendering, HtmlElementRendering, LayoutServiceContextData, RouteData } from '@sitecore-jss/sitecore-jss/layout';
4
+ export { ComponentFields, ComponentParams, ComponentRendering, EditMode, Field, GraphQLLayoutService, HtmlElementRendering, LayoutService, LayoutServiceContext, LayoutServiceContextData, LayoutServiceData, LayoutServicePageState, PlaceholdersData, RestLayoutService, RouteData, getChildPlaceholder, getContentStylesheetLink, getFieldValue } from '@sitecore-jss/sitecore-jss/layout';
5
+ import { MetadataKind, EditFrameDataSource, EditButtonTypes } from '@sitecore-jss/sitecore-jss/editing';
6
+ export { DefaultEditFrameButton, DefaultEditFrameButtons, EditFrameDataSource, FieldEditButton, WebEditButton, handleEditorAnchors, isEditorActive, resetEditorChromes } from '@sitecore-jss/sitecore-jss/editing';
7
+ import { NavigationExtras, ActivatedRouteSnapshot, RouterStateSnapshot, Router, UrlTree, RedirectCommand } from '@angular/router';
8
+ import { Observable } from 'rxjs';
9
+ import * as i1 from '@angular/common';
10
+ export { mediaApi } from '@sitecore-jss/sitecore-jss/media';
11
+ export { DictionaryPhrases, DictionaryService, GraphQLDictionaryService, RestDictionaryService } from '@sitecore-jss/sitecore-jss/i18n';
12
+ export { DefaultRetryStrategy, GraphQLClientError, GraphQLRequestClient, GraphQLRequestClientFactoryConfig, RetryStrategy, getEdgeProxyContentUrl } from '@sitecore-jss/sitecore-jss/graphql';
13
+ export { CacheClient, CacheOptions, ClientError, HTMLLink, HttpDataFetcher, HttpResponse, MemoryCacheClient, NativeDataFetcher, NativeDataFetcherConfig, NativeDataFetcherError, NativeDataFetcherResponse, constants, debug, enableDebug } from '@sitecore-jss/sitecore-jss';
14
+ export { CdpHelper, DEFAULT_VARIANT, GraphQLPersonalizeService, GraphQLPersonalizeServiceConfig, PersonalizeInfo, getGroomedVariantIds, personalizeLayout } from '@sitecore-jss/sitecore-jss/personalize';
15
+ export { isServer } from '@sitecore-jss/sitecore-jss/utils';
16
+ export { CampaignInstance, EventInstance, GoalInstance, OutcomeInstance, PageViewInstance, TrackingRequestOptions, trackingApi } from '@sitecore-jss/sitecore-jss/tracking';
17
+
18
+ interface RenderingField<V = GenericFieldValue> extends FieldMetadata {
19
+ value?: V;
20
+ editable?: string;
21
+ }
22
+ interface DateField extends RenderingField<string | number | Date> {
23
+ }
24
+ interface FileFieldValue {
25
+ src?: string;
26
+ title?: string;
27
+ displayName?: string;
28
+ }
29
+ interface FileField extends FileFieldValue, RenderingField<FileFieldValue> {
30
+ }
31
+ interface ImageFieldValue {
32
+ [key: string]: unknown;
33
+ src?: string;
34
+ srcSet?: {
35
+ [key: string]: string | number | undefined;
36
+ }[];
37
+ }
38
+ interface ImageField extends ImageFieldValue, RenderingField {
39
+ value?: ImageFieldValue;
40
+ }
41
+ interface LinkFieldValue {
42
+ [key: string]: unknown;
43
+ href?: string;
44
+ text?: string;
45
+ anchor?: string;
46
+ }
47
+ interface LinkField extends LinkFieldValue, RenderingField {
48
+ value?: LinkFieldValue;
49
+ editableFirstPart?: string;
50
+ editableLastPart?: string;
51
+ }
52
+ interface RichTextField extends RenderingField<string> {
53
+ }
54
+ interface TextField extends RenderingField<string> {
55
+ }
56
+
1
57
  /**
2
- * Generated bundle index. Do not edit.
58
+ * File fields cannot be managed via the EE. We never output "editable."
3
59
  */
4
- /// <amd-module name="@sitecore-jss/sitecore-jss-angular" />
5
- export * from './public_api';
60
+ declare class FileDirective implements OnChanges {
61
+ field: FileField;
62
+ private viewRef;
63
+ private viewContainer;
64
+ private templateRef;
65
+ ngOnChanges(changes: SimpleChanges): void;
66
+ private updateView;
67
+ static ɵfac: i0.ɵɵFactoryDeclaration<FileDirective, never>;
68
+ static ɵdir: i0.ɵɵDirectiveDeclaration<FileDirective, "[scFile]", never, { "field": { "alias": "scFile"; "required": false; }; }, {}, never, never, true, never>;
69
+ }
70
+
71
+ /**
72
+ * Base class that contains common functionality for the field directives.
73
+ */
74
+ declare abstract class BaseFieldDirective {
75
+ protected viewContainer: ViewContainerRef;
76
+ protected viewRef: EmbeddedViewRef<unknown>;
77
+ protected abstract field: RenderingField<GenericFieldValue>;
78
+ protected abstract editable: boolean;
79
+ /**
80
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
81
+ */
82
+ protected abstract emptyFieldEditingTemplate: TemplateRef<unknown>;
83
+ /**
84
+ * Default component to render in Pages in Metadata edit mode if field value is empty and emptyFieldEditingTemplate is not provided
85
+ */
86
+ protected abstract defaultFieldEditingComponent: Type<unknown>;
87
+ /**
88
+ * Determines if directive should render the field as is
89
+ * Returns true if we are in edit mode 'chromes' (field.editable is present) or field is not empty
90
+ */
91
+ protected shouldRender(): boolean;
92
+ /**
93
+ * Renders the empty field markup which is required by Pages in editMode 'metadata' in case field is empty.
94
+ */
95
+ protected renderEmpty(): void;
96
+ /**
97
+ * Renders a metadata chrome marker for the field. Required by Pages in editMode 'metadata'.
98
+ * @param {string} kind - 'open' or 'close' to indicate the start or end of the metadata chrome
99
+ */
100
+ protected renderMetadata(kind: MetadataKind): void;
101
+ static ɵfac: i0.ɵɵFactoryDeclaration<BaseFieldDirective, never>;
102
+ static ɵdir: i0.ɵɵDirectiveDeclaration<BaseFieldDirective, never, never, {}, {}, never, never, true, never>;
103
+ }
104
+
105
+ declare class ImageDirective extends BaseFieldDirective implements OnChanges {
106
+ field: ImageField;
107
+ editable: boolean;
108
+ /**
109
+ * Custom regexp that finds media URL prefix that will be replaced by `/-/jssmedia` or `/~/jssmedia`.
110
+ * @example
111
+ * /\/([-~]{1})assets\//i
112
+ * /-assets/website -> /-/jssmedia/website
113
+ * /~assets/website -> /~/jssmedia/website
114
+ */
115
+ mediaUrlPrefix?: RegExp;
116
+ urlParams: {
117
+ [param: string]: string | number;
118
+ };
119
+ attrs: {
120
+ [param: string]: unknown;
121
+ };
122
+ /**
123
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
124
+ */
125
+ emptyFieldEditingTemplate: TemplateRef<unknown>;
126
+ /**
127
+ * Default component to render in Pages in Metadata edit mode if field value is empty and emptyFieldEditingTemplate is not provided
128
+ */
129
+ protected defaultFieldEditingComponent: Type<unknown>;
130
+ private inlineRef;
131
+ private templateRef;
132
+ private renderer;
133
+ private elementRef;
134
+ ngOnChanges(changes: SimpleChanges): void;
135
+ private updateView;
136
+ private getImageAttrs;
137
+ private renderTemplate;
138
+ private getElementAttrs;
139
+ private renderInlineWrapper;
140
+ static ɵfac: i0.ɵɵFactoryDeclaration<ImageDirective, never>;
141
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ImageDirective, "[scImage]", never, { "field": { "alias": "scImage"; "required": false; }; "editable": { "alias": "scImageEditable"; "required": false; }; "mediaUrlPrefix": { "alias": "scImageMediaUrlPrefix"; "required": false; }; "urlParams": { "alias": "scImageUrlParams"; "required": false; }; "attrs": { "alias": "scImageAttrs"; "required": false; }; "emptyFieldEditingTemplate": { "alias": "scImageEmptyFieldEditingTemplate"; "required": false; }; }, {}, never, never, true, never>;
142
+ }
143
+
144
+ declare class LinkDirective extends BaseFieldDirective implements OnChanges {
145
+ editable: boolean;
146
+ attrs: {
147
+ [attr: string]: string;
148
+ };
149
+ field: LinkField;
150
+ /**
151
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
152
+ */
153
+ emptyFieldEditingTemplate: TemplateRef<unknown>;
154
+ /**
155
+ * Default component to render in Pages in Metadata edit mode if field value is empty and emptyFieldEditingTemplate is not provided
156
+ */
157
+ protected defaultFieldEditingComponent: Type<unknown>;
158
+ protected templateRef: TemplateRef<any>;
159
+ protected renderer: Renderer2;
160
+ private inlineRef;
161
+ private elementRef;
162
+ ngOnChanges(changes: SimpleChanges): void;
163
+ protected renderTemplate(props: {
164
+ [prop: string]: unknown;
165
+ }, linkText?: string): void;
166
+ protected updateAttribute(node: HTMLElement, key: string, propValue?: unknown): void;
167
+ /**
168
+ * Determines if directive should render the field as is
169
+ * Returns true if we are in edit mode 'chromes' (field.editable is present) or field is not empty
170
+ * or link field text is present and we are not in edit mode 'metadata'
171
+ * The right side of the expression was added to preserve existing functionality
172
+ */
173
+ protected shouldRender(): boolean;
174
+ private updateView;
175
+ private renderInlineWrapper;
176
+ private getElementAttrs;
177
+ static ɵfac: i0.ɵɵFactoryDeclaration<LinkDirective, never>;
178
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LinkDirective, "[scLink]", never, { "editable": { "alias": "scLinkEditable"; "required": false; }; "attrs": { "alias": "scLinkAttrs"; "required": false; }; "field": { "alias": "scLink"; "required": false; }; "emptyFieldEditingTemplate": { "alias": "scLinkEmptyFieldEditingTemplate"; "required": false; }; }, {}, never, never, true, never>;
179
+ }
180
+
181
+ declare class RouterLinkDirective extends LinkDirective {
182
+ editable: boolean;
183
+ attrs: {
184
+ [attr: string]: string;
185
+ };
186
+ field: LinkField;
187
+ /**
188
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
189
+ */
190
+ emptyFieldEditingTemplate: TemplateRef<unknown>;
191
+ private router;
192
+ protected renderTemplate(props: {
193
+ [prop: string]: string;
194
+ }, linkText: string): void;
195
+ static ɵfac: i0.ɵɵFactoryDeclaration<RouterLinkDirective, never>;
196
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RouterLinkDirective, "[scRouterLink]", never, { "editable": { "alias": "scRouterLinkEditable"; "required": false; }; "attrs": { "alias": "scRouterLinkAttrs"; "required": false; }; "field": { "alias": "scRouterLink"; "required": false; }; "emptyFieldEditingTemplate": { "alias": "scRouterLinkEmptyFieldEditingTemplate"; "required": false; }; }, {}, never, never, true, never>;
197
+ }
198
+
199
+ declare class GenericLinkDirective extends LinkDirective {
200
+ editable: boolean;
201
+ attrs: {
202
+ [key: string]: string;
203
+ };
204
+ field: LinkField;
205
+ extras?: NavigationExtras;
206
+ /**
207
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
208
+ */
209
+ emptyFieldEditingTemplate: TemplateRef<unknown>;
210
+ private router;
211
+ protected renderTemplate(props: {
212
+ [key: string]: string;
213
+ }, linkText: string): void;
214
+ static ɵfac: i0.ɵɵFactoryDeclaration<GenericLinkDirective, never>;
215
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GenericLinkDirective, "[scGenericLink]", never, { "editable": { "alias": "scGenericLinkEditable"; "required": false; }; "attrs": { "alias": "scGenericLinkAttrs"; "required": false; }; "field": { "alias": "scGenericLink"; "required": false; }; "extras": { "alias": "scGenericLinkExtras"; "required": false; }; "emptyFieldEditingTemplate": { "alias": "scGenericLinkEmptyFieldEditingTemplate"; "required": false; }; }, {}, never, never, true, never>;
216
+ }
217
+
218
+ /** Registers a statically loaded component */
219
+ declare class ComponentNameAndType {
220
+ name: string;
221
+ type: Type<unknown>;
222
+ canActivate?: JssCanActivate | Type<JssCanActivate> | JssCanActivateFn | Array<JssCanActivate | JssCanActivateFn | Type<JssCanActivate>>;
223
+ resolve?: {
224
+ [key: string]: JssResolve<unknown> | Type<JssResolve<unknown>>;
225
+ };
226
+ }
227
+ /** Registers a lazily loaded component by name and module to lazy load when it's needed */
228
+ interface ComponentNameAndModule {
229
+ /** Name of the component */
230
+ path: string;
231
+ /**
232
+ * Dynamic import of the component,
233
+ * e.g. () => import('./path/to/lazyloadedcomponent.module').then(m => m.LazyLoadedComponentModuleExportName)
234
+ */
235
+ loadChildren: () => Promise<Type<unknown>>;
236
+ canActivate?: JssCanActivate | JssCanActivateFn | Type<JssCanActivate> | Array<JssCanActivate | JssCanActivateFn | Type<JssCanActivate>>;
237
+ resolve?: {
238
+ [key: string]: JssResolve<unknown> | Type<JssResolve<unknown>>;
239
+ };
240
+ }
241
+ declare const DYNAMIC_COMPONENT: InjectionToken<Type<unknown> | {
242
+ [s: string]: unknown;
243
+ }>;
244
+ interface GuardInput {
245
+ activatedRoute: ActivatedRouteSnapshot;
246
+ routerState: RouterStateSnapshot;
247
+ rendering: ComponentRendering;
248
+ router: Router;
249
+ }
250
+ interface JssCanActivateFn {
251
+ (input: GuardInput): Observable<boolean | UrlTree | RedirectCommand | string | string[]> | Promise<boolean | UrlTree | RedirectCommand | string | string[]> | boolean | UrlTree | RedirectCommand | string | string[];
252
+ }
253
+ interface JssCanActivate {
254
+ canActivate: JssCanActivateFn;
255
+ }
256
+ interface JssResolve<T> {
257
+ resolve(input: GuardInput): Observable<T> | Promise<T> | T;
258
+ }
259
+
260
+ declare class PlaceholderLoadingDirective {
261
+ templateRef: TemplateRef<any>;
262
+ static ɵfac: i0.ɵɵFactoryDeclaration<PlaceholderLoadingDirective, never>;
263
+ static ɵdir: i0.ɵɵDirectiveDeclaration<PlaceholderLoadingDirective, "[scPlaceholderLoading]", never, {}, {}, never, never, true, never>;
264
+ }
265
+
266
+ declare class RenderEachDirective {
267
+ templateRef: TemplateRef<any>;
268
+ static ɵfac: i0.ɵɵFactoryDeclaration<RenderEachDirective, never>;
269
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RenderEachDirective, "[renderEach]", never, {}, {}, never, never, true, never>;
270
+ }
271
+
272
+ declare class RenderEmptyDirective {
273
+ templateRef: TemplateRef<any>;
274
+ static ɵfac: i0.ɵɵFactoryDeclaration<RenderEmptyDirective, never>;
275
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RenderEmptyDirective, "[renderEmpty]", never, {}, {}, never, never, true, never>;
276
+ }
277
+
278
+ declare class PlaceholderComponent implements OnInit, OnChanges, DoCheck, OnDestroy {
279
+ name?: string;
280
+ rendering: ComponentRendering;
281
+ renderings?: Array<ComponentRendering | HtmlElementRendering>;
282
+ outputs: {
283
+ [k: string]: (eventType: unknown) => void;
284
+ };
285
+ clientOnly: boolean;
286
+ loaded: EventEmitter<string>;
287
+ failed: EventEmitter<Error>;
288
+ renderEachTemplate: RenderEachDirective;
289
+ renderEmptyTemplate: RenderEmptyDirective;
290
+ placeholderLoading?: PlaceholderLoadingDirective;
291
+ private view;
292
+ private metadataNode;
293
+ isLoading: boolean;
294
+ metadataMode: boolean;
295
+ chromeType: string;
296
+ private _inputs;
297
+ private _differ;
298
+ private _componentInstances;
299
+ private placeholderData?;
300
+ private destroyed;
301
+ private parentStyleAttribute;
302
+ private contextSubscription;
303
+ private differs;
304
+ private componentFactory;
305
+ private changeDetectorRef;
306
+ private elementRef;
307
+ private renderer;
308
+ private router;
309
+ private missingComponentComponent;
310
+ private hiddenRenderingComponent;
311
+ private guardResolver;
312
+ private dataResolver;
313
+ private platformId;
314
+ private jssState;
315
+ constructor();
316
+ set inputs(value: {
317
+ [key: string]: unknown;
318
+ });
319
+ ngOnInit(): void;
320
+ ngOnDestroy(): void;
321
+ ngOnChanges(changes: SimpleChanges): void;
322
+ ngDoCheck(): void;
323
+ /**
324
+ * Gets id for Metadata code blocks, in specific format
325
+ * Metadata code blocks will wrap be added around placeholder content and each rendering component
326
+ * to allow for editing integration in Pages.
327
+ * @param {string} kind code block type ("open" or "close"). "open" is added before an element, and "close" added after one.
328
+ * @param {string?} renderingId rendering uid to apply as id to code block
329
+ * @returns {string} formatted id value for code HTML node
330
+ */
331
+ getCodeBlockId: (kind: string, renderingId?: string) => string | undefined;
332
+ /**
333
+ * Get renderings/components to be rendered for current placeholder name
334
+ * Can modify the inner placeholders collection to adjust to using SXA dynamic placeholders
335
+ * @returns {ComponentRendering<ComponentFields> | HtmlElementRendering[] | null} List of renderings to be rendered
336
+ */
337
+ private getPlaceholder;
338
+ private _setComponentInputs;
339
+ private _subscribeComponentOutputs;
340
+ private _render;
341
+ private _renderTemplatedComponent;
342
+ private _renderEmbeddedComponent;
343
+ static ɵfac: i0.ɵɵFactoryDeclaration<PlaceholderComponent, never>;
344
+ static ɵcmp: i0.ɵɵComponentDeclaration<PlaceholderComponent, "sc-placeholder,[sc-placeholder]", never, { "name": { "alias": "name"; "required": false; }; "rendering": { "alias": "rendering"; "required": false; }; "renderings": { "alias": "renderings"; "required": false; }; "outputs": { "alias": "outputs"; "required": false; }; "clientOnly": { "alias": "clientOnly"; "required": false; }; "inputs": { "alias": "inputs"; "required": false; }; }, { "loaded": "loaded"; "failed": "failed"; }, ["renderEachTemplate", "renderEmptyTemplate", "placeholderLoading"], never, true, never>;
345
+ }
346
+
347
+ declare class HiddenRenderingComponent {
348
+ get style(): string;
349
+ static ɵfac: i0.ɵɵFactoryDeclaration<HiddenRenderingComponent, never>;
350
+ static ɵcmp: i0.ɵɵComponentDeclaration<HiddenRenderingComponent, "sc-hidden-rendering", never, {}, {}, never, never, true, never>;
351
+ }
352
+
353
+ /**
354
+ * Renders a single JSS component given a rendering definition.
355
+ * Useful inside templated placeholders.
356
+ */
357
+ declare class RenderComponentComponent implements OnChanges {
358
+ rendering: ComponentRendering | HtmlElementRendering;
359
+ outputs: {
360
+ [k: string]: (eventType: unknown) => void;
361
+ };
362
+ private view;
363
+ private _inputs;
364
+ private _differ;
365
+ private destroyed;
366
+ private differs;
367
+ private componentFactory;
368
+ private missingComponentComponent;
369
+ set inputs(value: {
370
+ [key: string]: unknown;
371
+ });
372
+ ngOnChanges(changes: SimpleChanges): void;
373
+ private _setComponentInputs;
374
+ private _subscribeComponentOutputs;
375
+ private _render;
376
+ static ɵfac: i0.ɵɵFactoryDeclaration<RenderComponentComponent, never>;
377
+ static ɵcmp: i0.ɵɵComponentDeclaration<RenderComponentComponent, "sc-render-component", never, { "rendering": { "alias": "rendering"; "required": false; }; "outputs": { "alias": "outputs"; "required": false; }; "inputs": { "alias": "inputs"; "required": false; }; }, {}, never, never, true, never>;
378
+ }
379
+
380
+ declare class DateDirective extends BaseFieldDirective implements OnChanges {
381
+ format?: string;
382
+ timezone?: string;
383
+ locale?: string;
384
+ editable: boolean;
385
+ field: DateField;
386
+ /**
387
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
388
+ */
389
+ emptyFieldEditingTemplate: TemplateRef<unknown>;
390
+ /**
391
+ * Default component to render in Pages in Metadata edit mode if field value is empty and emptyFieldEditingTemplate is not provided
392
+ */
393
+ protected defaultFieldEditingComponent: Type<unknown>;
394
+ private templateRef;
395
+ private datePipe;
396
+ ngOnChanges(changes: SimpleChanges): void;
397
+ private updateView;
398
+ static ɵfac: i0.ɵɵFactoryDeclaration<DateDirective, never>;
399
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DateDirective, "[scDate]", never, { "format": { "alias": "scDateFormat"; "required": false; }; "timezone": { "alias": "scDateTimezone"; "required": false; }; "locale": { "alias": "scDateLocale"; "required": false; }; "editable": { "alias": "scDateEditable"; "required": false; }; "field": { "alias": "scDate"; "required": false; }; "emptyFieldEditingTemplate": { "alias": "scDateEmptyFieldEditingTemplate"; "required": false; }; }, {}, never, never, true, never>;
400
+ }
401
+
402
+ declare class EditFrameComponent implements OnChanges {
403
+ dataSource: EditFrameDataSource;
404
+ buttons: EditButtonTypes[];
405
+ title: string;
406
+ tooltip: string;
407
+ cssClass: string;
408
+ parameters: Record<string, string | number | boolean | undefined | null>;
409
+ sitecore: LayoutServiceContextData & {
410
+ route: RouteData<unknown> | null;
411
+ };
412
+ isEditing: boolean;
413
+ frameProps: Record<string, unknown>;
414
+ chromeData: string;
415
+ ngOnChanges(): void;
416
+ buildChromeData(): string;
417
+ static ɵfac: i0.ɵɵFactoryDeclaration<EditFrameComponent, never>;
418
+ static ɵcmp: i0.ɵɵComponentDeclaration<EditFrameComponent, "sc-edit-frame,[sc-edit-frame]", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "buttons": { "alias": "buttons"; "required": false; }; "title": { "alias": "title"; "required": false; }; "tooltip": { "alias": "tooltip"; "required": false; }; "cssClass": { "alias": "cssClass"; "required": false; }; "parameters": { "alias": "parameters"; "required": false; }; "sitecore": { "alias": "sitecore"; "required": false; }; }, {}, never, ["*"], true, never>;
419
+ }
420
+
421
+ /**
422
+ * Component that renders editing scripts and client data for the current page in Sitecore Editor.
423
+ * Only renders scripts when Metadata mode is used.
424
+ */
425
+ declare class EditingScriptsComponent implements OnInit {
426
+ private renderer;
427
+ private stateService;
428
+ private document;
429
+ ngOnInit(): void;
430
+ static ɵfac: i0.ɵɵFactoryDeclaration<EditingScriptsComponent, never>;
431
+ static ɵcmp: i0.ɵɵComponentDeclaration<EditingScriptsComponent, "sc-editing-scripts", never, {}, {}, never, never, true, never>;
432
+ }
433
+
434
+ /**
435
+ * Shape of the Form component rendering data.
436
+ * FormId is the rendering parameter that specifies the ID of the Sitecore Form to render.
437
+ */
438
+ type FormRendering = {
439
+ params: {
440
+ FormId: string;
441
+ styles?: string;
442
+ };
443
+ } & ComponentRendering;
444
+ /**
445
+ * A component that renders a Sitecore Form.
446
+ * It fetches the form markup from the Sitecore Edge service and renders it in the component's template.
447
+ */
448
+ declare class FormComponent implements OnInit, OnDestroy {
449
+ /**
450
+ * The rendering data for the component
451
+ */
452
+ rendering: FormRendering;
453
+ hasError: boolean;
454
+ isEditing: boolean;
455
+ private contextSubscription;
456
+ private edgeConfig;
457
+ private platformId;
458
+ private elRef;
459
+ private jssState;
460
+ ngOnInit(): void;
461
+ ngOnDestroy(): void;
462
+ /**
463
+ * Fetches the form markup from the Sitecore Edge service and renders it in the component's template.
464
+ */
465
+ loadForm(): Promise<void>;
466
+ static ɵfac: i0.ɵɵFactoryDeclaration<FormComponent, never>;
467
+ static ɵcmp: i0.ɵɵComponentDeclaration<FormComponent, "app-form", never, { "rendering": { "alias": "rendering"; "required": false; }; }, {}, never, never, true, never>;
468
+ }
469
+
470
+ /**
471
+ * Shape of the Sitecore Edge configuration.
472
+ */
473
+ type EdgeConfigToken = {
474
+ sitecoreEdgeUrl?: string;
475
+ sitecoreEdgeContextId: string;
476
+ };
477
+ /**
478
+ * Injection token for the Sitecore Edge configuration.
479
+ */
480
+ declare const EDGE_CONFIG: InjectionToken<EdgeConfigToken>;
481
+
482
+ declare class BaseJssState {
483
+ sitecore?: LayoutServiceContextData & {
484
+ route: RouteData | null;
485
+ };
486
+ viewBag?: {
487
+ [key: string]: unknown;
488
+ };
489
+ }
490
+ /**
491
+ * The service that is used to store and retrieve the current state of the app.
492
+ * Referenced by the SDK to get the current state of the app.
493
+ */
494
+ declare class JssStateService<State extends BaseJssState = BaseJssState> {
495
+ protected transferState: TransferState;
496
+ private _state;
497
+ constructor();
498
+ /**
499
+ * Observable JSS state to subscribe to
500
+ */
501
+ get state(): Observable<State>;
502
+ /**
503
+ * The 'here and now' state value, usable without subscribing
504
+ */
505
+ get stateValue(): State;
506
+ /**
507
+ * Set new JSS state
508
+ * @param {JssState} newState new state
509
+ */
510
+ setState(newState: State): void;
511
+ static ɵfac: i0.ɵɵFactoryDeclaration<JssStateService<any>, never>;
512
+ static ɵprov: i0.ɵɵInjectableDeclaration<JssStateService<any>>;
513
+ }
514
+
515
+ /**
516
+ * @param {HtmlElementRendering | ComponentRendering} rendering
517
+ */
518
+ declare function isRawRendering(rendering: HtmlElementRendering | ComponentRendering): rendering is HtmlElementRendering;
519
+
520
+ interface LayoutServiceLinkField {
521
+ field: {
522
+ link: LinkField;
523
+ };
524
+ }
525
+ interface SxaLinkListFields {
526
+ data: {
527
+ datasource: {
528
+ children: {
529
+ results: LayoutServiceLinkField[];
530
+ };
531
+ field: {
532
+ title: TextField;
533
+ };
534
+ };
535
+ };
536
+ }
537
+ interface SxaTitleSourceItem {
538
+ url: {
539
+ path: string;
540
+ siteName: string;
541
+ };
542
+ field: {
543
+ jsonValue: {
544
+ value: string;
545
+ editable?: string;
546
+ metadata?: {
547
+ [key: string]: unknown;
548
+ };
549
+ };
550
+ };
551
+ }
552
+ interface SxaTitleFields {
553
+ data: {
554
+ datasource: SxaTitleSourceItem;
555
+ contextItem: SxaTitleSourceItem;
556
+ };
557
+ }
558
+
559
+ declare class RichTextDirective extends BaseFieldDirective implements OnChanges {
560
+ editable: boolean;
561
+ field: RichTextField;
562
+ /**
563
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
564
+ */
565
+ emptyFieldEditingTemplate: TemplateRef<unknown>;
566
+ /**
567
+ * Default component to render in Pages in Metadata edit mode if field value is empty and emptyFieldEditingTemplate is not provided
568
+ */
569
+ protected defaultFieldEditingComponent: Type<unknown>;
570
+ private templateRef;
571
+ private renderer;
572
+ private router;
573
+ ngOnChanges(changes: SimpleChanges): void;
574
+ private updateView;
575
+ static ɵfac: i0.ɵɵFactoryDeclaration<RichTextDirective, never>;
576
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RichTextDirective, "[scRichText]", never, { "editable": { "alias": "scRichTextEditable"; "required": false; }; "field": { "alias": "scRichText"; "required": false; }; "emptyFieldEditingTemplate": { "alias": "scRichTextEmptyFieldEditingTemplate"; "required": false; }; }, {}, never, never, true, never>;
577
+ }
578
+
579
+ declare class TextDirective extends BaseFieldDirective implements OnChanges {
580
+ editable: boolean;
581
+ encode: boolean;
582
+ field: TextField;
583
+ /**
584
+ * Custom template to render in Pages in Metadata edit mode if field value is empty
585
+ */
586
+ emptyFieldEditingTemplate: TemplateRef<unknown>;
587
+ /**
588
+ * Default component to render in Pages in Metadata edit mode if field value is empty and emptyFieldEditingTemplate is not provided
589
+ */
590
+ protected defaultFieldEditingComponent: Type<unknown>;
591
+ private templateRef;
592
+ ngOnChanges(changes: SimpleChanges): void;
593
+ private updateView;
594
+ static ɵfac: i0.ɵɵFactoryDeclaration<TextDirective, never>;
595
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TextDirective, "[scText]", never, { "editable": { "alias": "scTextEditable"; "required": false; }; "encode": { "alias": "scTextEncode"; "required": false; }; "field": { "alias": "scText"; "required": false; }; "emptyFieldEditingTemplate": { "alias": "scTextEmptyFieldEditingTemplate"; "required": false; }; }, {}, never, never, true, never>;
596
+ }
597
+
598
+ declare class RawComponent implements OnInit {
599
+ rendering: HtmlElementRendering;
600
+ private renderer;
601
+ private elementRef;
602
+ ngOnInit(): void;
603
+ static ɵfac: i0.ɵɵFactoryDeclaration<RawComponent, never>;
604
+ static ɵcmp: i0.ɵɵComponentDeclaration<RawComponent, "sc-raw", never, { "rendering": { "alias": "rendering"; "required": false; }; }, {}, never, never, true, never>;
605
+ }
606
+
607
+ declare class MissingComponentComponent {
608
+ rendering: ComponentRendering;
609
+ static ɵfac: i0.ɵɵFactoryDeclaration<MissingComponentComponent, never>;
610
+ static ɵcmp: i0.ɵɵComponentDeclaration<MissingComponentComponent, "sc-missing-component", never, { "rendering": { "alias": "rendering"; "required": false; }; }, {}, never, never, true, never>;
611
+ }
612
+
613
+ declare class JssModule {
614
+ /**
615
+ * Instantiates the JSS module with no component factory.
616
+ * Useful for using it from libraries. Most of the time you'd want withComponents()
617
+ * @returns {ModuleWithProviders<JssModule>} module
618
+ */
619
+ static forRoot(): ModuleWithProviders<JssModule>;
620
+ /**
621
+ * Instantiates a module for a lazy-loaded JSS component(s)
622
+ * @param {Type<unknown> | Record<string, Type<unknown>> } value - component or map of components
623
+ * @returns {ModuleWithProviders<JssModule>} module
624
+ */
625
+ static forChild(value: Type<unknown> | {
626
+ [key: string]: Type<unknown>;
627
+ }): ModuleWithProviders<JssModule>;
628
+ /**
629
+ * Instantiates the JSS module and specifies the mapping from component name to component implementation.
630
+ * Appropriate when defining the set of JSS components that your app is aware of.
631
+ * @param {ComponentNameAndType[]} components
632
+ * @param {ComponentNameAndModule[]} [lazyComponents]
633
+ * @returns {ModuleWithProviders<JssModule>} module
634
+ */
635
+ static withComponents(components: ComponentNameAndType[], lazyComponents?: ComponentNameAndModule[]): ModuleWithProviders<JssModule>;
636
+ static ɵfac: i0.ɵɵFactoryDeclaration<JssModule, never>;
637
+ static ɵmod: i0.ɵɵNgModuleDeclaration<JssModule, never, [typeof i1.CommonModule, typeof FileDirective, typeof ImageDirective, typeof LinkDirective, typeof RouterLinkDirective, typeof GenericLinkDirective, typeof TextDirective, typeof DateDirective, typeof RenderEachDirective, typeof RenderEmptyDirective, typeof PlaceholderLoadingDirective, typeof RenderComponentComponent, typeof PlaceholderComponent, typeof RawComponent, typeof RichTextDirective, typeof MissingComponentComponent, typeof HiddenRenderingComponent, typeof EditFrameComponent, typeof EditingScriptsComponent, typeof FormComponent], [typeof FileDirective, typeof ImageDirective, typeof DateDirective, typeof LinkDirective, typeof RouterLinkDirective, typeof GenericLinkDirective, typeof RenderEachDirective, typeof RenderEmptyDirective, typeof RenderComponentComponent, typeof PlaceholderComponent, typeof HiddenRenderingComponent, typeof PlaceholderLoadingDirective, typeof RichTextDirective, typeof TextDirective, typeof EditFrameComponent, typeof EditingScriptsComponent, typeof FormComponent]>;
638
+ static ɵinj: i0.ɵɵInjectorDeclaration<JssModule>;
639
+ }
640
+
641
+ export { BaseJssState, ComponentNameAndType, DYNAMIC_COMPONENT, DateDirective, EDGE_CONFIG, EditFrameComponent, EditingScriptsComponent, FileDirective, FormComponent, GenericLinkDirective, HiddenRenderingComponent, ImageDirective, JssModule, JssStateService, LinkDirective, PlaceholderComponent, PlaceholderLoadingDirective, RenderComponentComponent, RenderEachDirective, RenderEmptyDirective, RichTextDirective, RouterLinkDirective, TextDirective, isRawRendering };
642
+ export type { ComponentNameAndModule, FileField, GuardInput, ImageField, ImageFieldValue, JssCanActivate, JssCanActivateFn, JssResolve, LinkField, LinkFieldValue, RenderingField, RichTextField, SxaLinkListFields, SxaTitleFields, TextField };
package/ng-package.json CHANGED
@@ -1,13 +1,13 @@
1
- {
2
- "$schema": "./node_modules/ng-packagr/ng-package.schema.json",
3
- "dest": "dist",
4
- "lib": {
5
- "entryFile": "./src/public_api.ts"
6
- },
7
- "allowedNonPeerDependencies": [
8
- "sitecore-jss",
9
- "@angular/common",
10
- "@angular/core",
11
- "@angular/router"
12
- ]
13
- }
1
+ {
2
+ "$schema": "./node_modules/ng-packagr/ng-package.schema.json",
3
+ "dest": "dist",
4
+ "lib": {
5
+ "entryFile": "./src/public_api.ts"
6
+ },
7
+ "allowedNonPeerDependencies": [
8
+ "sitecore-jss",
9
+ "@angular/common",
10
+ "@angular/core",
11
+ "@angular/router"
12
+ ]
13
+ }