@jumoo/usync-expansions 0.0.0-stage → 17.6.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/dist/api/client/client.gen.d.ts +2 -0
- package/dist/api/client/client.gen.js +235 -0
- package/dist/api/client/index.d.ts +8 -0
- package/dist/api/client/index.js +6 -0
- package/dist/api/client/types.gen.d.ts +117 -0
- package/dist/api/client/types.gen.js +2 -0
- package/dist/api/client/utils.gen.d.ts +33 -0
- package/dist/api/client/utils.gen.js +230 -0
- package/dist/api/client.gen.d.ts +12 -0
- package/dist/api/client.gen.js +4 -0
- package/dist/api/core/auth.gen.d.ts +18 -0
- package/dist/api/core/auth.gen.js +14 -0
- package/dist/api/core/bodySerializer.gen.d.ts +25 -0
- package/dist/api/core/bodySerializer.gen.js +57 -0
- package/dist/api/core/params.gen.d.ts +43 -0
- package/dist/api/core/params.gen.js +100 -0
- package/dist/api/core/pathSerializer.gen.d.ts +33 -0
- package/dist/api/core/pathSerializer.gen.js +106 -0
- package/dist/api/core/queryKeySerializer.gen.d.ts +18 -0
- package/dist/api/core/queryKeySerializer.gen.js +92 -0
- package/dist/api/core/serverSentEvents.gen.d.ts +71 -0
- package/dist/api/core/serverSentEvents.gen.js +133 -0
- package/dist/api/core/types.gen.d.ts +78 -0
- package/dist/api/core/types.gen.js +2 -0
- package/dist/api/core/utils.gen.d.ts +19 -0
- package/dist/api/core/utils.gen.js +87 -0
- package/dist/api/index.d.ts +3 -0
- package/dist/api/index.js +4 -0
- package/dist/api/sdk.gen.d.ts +37 -0
- package/dist/api/sdk.gen.js +112 -0
- package/dist/api/types.gen.d.ts +1251 -0
- package/dist/api/types.gen.js +255 -0
- package/dist/background/background-cancel.controller.d.ts +16 -0
- package/dist/background/background-cancel.controller.js +83 -0
- package/dist/background/background-pipeline.repository.d.ts +18 -0
- package/dist/background/background-pipeline.repository.js +33 -0
- package/dist/background/components/constants.d.ts +5 -0
- package/dist/background/components/constants.js +5 -0
- package/dist/background/components/index.d.ts +5 -0
- package/dist/background/components/index.js +5 -0
- package/dist/background/components/pending-list.element.d.ts +18 -0
- package/dist/background/components/pending-list.element.js +69 -0
- package/dist/background/components/pipelines-table.element.d.ts +15 -0
- package/dist/background/components/pipelines-table.element.js +60 -0
- package/dist/background/components/process-list.element.d.ts +10 -0
- package/dist/background/components/process-list.element.js +69 -0
- package/dist/background/components/queue-table.element.d.ts +15 -0
- package/dist/background/components/queue-table.element.js +50 -0
- package/dist/background/index.d.ts +1 -0
- package/dist/background/index.js +1 -0
- package/dist/background/manifest.d.ts +1 -0
- package/dist/background/manifest.js +24 -0
- package/dist/background/workspace/background-workspace-element.d.ts +10 -0
- package/dist/background/workspace/background-workspace-element.js +71 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/dist/components/report-summary-view.d.ts +23 -0
- package/dist/components/report-summary-view.js +199 -0
- package/dist/components/usync-property-layout.d.ts +17 -0
- package/dist/components/usync-property-layout.js +159 -0
- package/dist/exports.d.ts +6 -0
- package/dist/exports.js +6 -0
- package/dist/hey-api.d.ts +11 -0
- package/dist/hey-api.js +14 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +19 -0
- package/dist/items/index.d.ts +2 -0
- package/dist/items/index.js +2 -0
- package/dist/items/manifests.d.ts +1 -0
- package/dist/items/manifests.js +7 -0
- package/dist/items/sync-item.context.d.ts +10 -0
- package/dist/items/sync-item.context.js +29 -0
- package/dist/items/sync-item.repository.d.ts +17 -0
- package/dist/items/sync-item.repository.js +37 -0
- package/dist/lang/en.d.ts +30 -0
- package/dist/lang/en.js +29 -0
- package/dist/lang/manifest.d.ts +1 -0
- package/dist/lang/manifest.js +11 -0
- package/dist/licence/components/index.d.ts +2 -0
- package/dist/licence/components/index.js +2 -0
- package/dist/licence/components/licence-notice.d.ts +10 -0
- package/dist/licence/components/licence-notice.js +55 -0
- package/dist/licence/components/licence-status.view.d.ts +14 -0
- package/dist/licence/components/licence-status.view.js +50 -0
- package/dist/licence/components/styles.d.ts +1 -0
- package/dist/licence/components/styles.js +41 -0
- package/dist/licence/index.d.ts +5 -0
- package/dist/licence/index.js +5 -0
- package/dist/licence/lang/en.d.ts +17 -0
- package/dist/licence/lang/en.js +17 -0
- package/dist/licence/lang/manifests.d.ts +1 -0
- package/dist/licence/lang/manifests.js +13 -0
- package/dist/licence/licence.context.d.ts +17 -0
- package/dist/licence/licence.context.js +66 -0
- package/dist/licence/licence.element.d.ts +19 -0
- package/dist/licence/licence.element.js +270 -0
- package/dist/licence/licence.repository.d.ts +15 -0
- package/dist/licence/licence.repository.js +42 -0
- package/dist/licence/manifest.d.ts +2 -0
- package/dist/licence/manifest.js +31 -0
- package/dist/licence/source/licence.source.d.ts +15 -0
- package/dist/licence/source/licence.source.js +39 -0
- package/dist/menu/manifest.d.ts +1 -0
- package/dist/menu/manifest.js +12 -0
- package/dist/restore/components/index.d.ts +1 -0
- package/dist/restore/components/index.js +1 -0
- package/dist/restore/components/restore-point-table.element.d.ts +21 -0
- package/dist/restore/components/restore-point-table.element.js +126 -0
- package/dist/restore/constants.d.ts +23 -0
- package/dist/restore/constants.js +30 -0
- package/dist/restore/index.d.ts +7 -0
- package/dist/restore/index.js +7 -0
- package/dist/restore/lang/en.d.ts +23 -0
- package/dist/restore/lang/en.js +33 -0
- package/dist/restore/lang/manifest.d.ts +1 -0
- package/dist/restore/lang/manifest.js +11 -0
- package/dist/restore/manifest.d.ts +1 -0
- package/dist/restore/manifest.js +63 -0
- package/dist/restore/restore.context.d.ts +10 -0
- package/dist/restore/restore.context.js +29 -0
- package/dist/restore/restore.repository.d.ts +15 -0
- package/dist/restore/restore.repository.js +43 -0
- package/dist/restore/steps/manifest.d.ts +1 -0
- package/dist/restore/steps/manifest.js +36 -0
- package/dist/restore/steps/restore-create-complete.d.ts +6 -0
- package/dist/restore/steps/restore-create-complete.js +33 -0
- package/dist/restore/steps/restore-create-element.d.ts +9 -0
- package/dist/restore/steps/restore-create-element.js +97 -0
- package/dist/restore/steps/restore-report-config-element.d.ts +14 -0
- package/dist/restore/steps/restore-report-config-element.js +105 -0
- package/dist/restore/steps/restore-report-element.d.ts +6 -0
- package/dist/restore/steps/restore-report-element.js +39 -0
- package/dist/restore/workspace/restore.workspace-view.element.d.ts +24 -0
- package/dist/restore/workspace/restore.workspace-view.element.js +195 -0
- package/dist/restore/workspace/restore.workspace.context.d.ts +17 -0
- package/dist/restore/workspace/restore.workspace.context.js +52 -0
- package/dist/restore/workspace/restore.workspace.element.d.ts +12 -0
- package/dist/restore/workspace/restore.workspace.element.js +91 -0
- package/package.json +54 -6
- package/README.md +0 -3
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _uSyncProcessListElement_cancelController;
|
|
13
|
+
import { JumooProcessingPipelineList, PipelineStatus } from '@jumoo/processing';
|
|
14
|
+
import { customElement, html, state } from '@umbraco-cms/backoffice/external/lit';
|
|
15
|
+
import { uSyncBackgroundCancelController } from '../background-cancel.controller.js';
|
|
16
|
+
import { USYNC_BACKGROUND_CHANGED_EVENT } from './constants.js';
|
|
17
|
+
let uSyncProcessListElement = class uSyncProcessListElement extends JumooProcessingPipelineList {
|
|
18
|
+
constructor() {
|
|
19
|
+
super();
|
|
20
|
+
_uSyncProcessListElement_cancelController.set(this, new uSyncBackgroundCancelController(this));
|
|
21
|
+
this.tableColumns = [
|
|
22
|
+
{ name: 'Alias', alias: 'alias' },
|
|
23
|
+
// { name: 'Strategy', alias: 'strategy' },
|
|
24
|
+
{ name: 'State', alias: 'state' },
|
|
25
|
+
{ name: 'Action', alias: 'action' },
|
|
26
|
+
{ name: 'Background', alias: 'background' },
|
|
27
|
+
{ name: 'Scheduled', alias: 'scheduled' },
|
|
28
|
+
{ name: 'Actions', alias: 'actions' },
|
|
29
|
+
];
|
|
30
|
+
// Background and Scheduled are where headless (Publisher/Start, Exporter/Start) runs sit.
|
|
31
|
+
this.statuses = [
|
|
32
|
+
PipelineStatus.WAITING,
|
|
33
|
+
PipelineStatus.BACKGROUND,
|
|
34
|
+
PipelineStatus.SCHEDULED,
|
|
35
|
+
PipelineStatus.RUNNING,
|
|
36
|
+
PipelineStatus.COMPLETED,
|
|
37
|
+
PipelineStatus.FAILED,
|
|
38
|
+
PipelineStatus.CANCELLED,
|
|
39
|
+
];
|
|
40
|
+
}
|
|
41
|
+
async onCancelPipeline(e) {
|
|
42
|
+
if (await __classPrivateFieldGet(this, _uSyncProcessListElement_cancelController, "f").cancel(e.detail.piplineId, e.detail.alias)) {
|
|
43
|
+
this.dispatchEvent(new CustomEvent(USYNC_BACKGROUND_CHANGED_EVENT, {
|
|
44
|
+
bubbles: true,
|
|
45
|
+
composed: true,
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
renderListPipelines() {
|
|
50
|
+
return !this.pipelines || this.pipelines.length === 0
|
|
51
|
+
? html `<div class="emtpy">Nothing with status ${this.status}</div>`
|
|
52
|
+
: html `<usync-pipelines-table
|
|
53
|
+
.pipelines=${this.pipelines}
|
|
54
|
+
.hideDelete=${this.hideDelete}
|
|
55
|
+
.tableColumns=${this.tableColumns}
|
|
56
|
+
@view-pipeline=${this.onViewPipeline}
|
|
57
|
+
@cancel-pipeline=${this.onCancelPipeline}
|
|
58
|
+
@delete-pipeline=${this.onDeletePipeline}></usync-pipelines-table>`;
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
_uSyncProcessListElement_cancelController = new WeakMap();
|
|
62
|
+
__decorate([
|
|
63
|
+
state()
|
|
64
|
+
], uSyncProcessListElement.prototype, "tableColumns", void 0);
|
|
65
|
+
uSyncProcessListElement = __decorate([
|
|
66
|
+
customElement('usync-process-list')
|
|
67
|
+
], uSyncProcessListElement);
|
|
68
|
+
export { uSyncProcessListElement };
|
|
69
|
+
export default uSyncProcessListElement;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { JumooQueueTableElement, QueuedItem } from '@jumoo/processing';
|
|
2
|
+
/**
|
|
3
|
+
* @description the processing queue table, with process and cancel buttons. A queued item's
|
|
4
|
+
* key is the id of the pipeline it runs.
|
|
5
|
+
*/
|
|
6
|
+
export declare class uSyncQueueTableElement extends JumooQueueTableElement {
|
|
7
|
+
#private;
|
|
8
|
+
renderActions(item: QueuedItem): import("lit-html").TemplateResult<1>;
|
|
9
|
+
}
|
|
10
|
+
export default uSyncQueueTableElement;
|
|
11
|
+
declare global {
|
|
12
|
+
interface HTMLElementTagNameMap {
|
|
13
|
+
'usync-queue-table': uSyncQueueTableElement;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _uSyncQueueTableElement_instances, _uSyncQueueTableElement_dispatch;
|
|
13
|
+
import { JumooQueueTableElement } from '@jumoo/processing';
|
|
14
|
+
import { customElement, html } from '@umbraco-cms/backoffice/external/lit';
|
|
15
|
+
/**
|
|
16
|
+
* @description the processing queue table, with process and cancel buttons. A queued item's
|
|
17
|
+
* key is the id of the pipeline it runs.
|
|
18
|
+
*/
|
|
19
|
+
let uSyncQueueTableElement = class uSyncQueueTableElement extends JumooQueueTableElement {
|
|
20
|
+
constructor() {
|
|
21
|
+
super(...arguments);
|
|
22
|
+
_uSyncQueueTableElement_instances.add(this);
|
|
23
|
+
}
|
|
24
|
+
renderActions(item) {
|
|
25
|
+
return html `<uui-button-group>
|
|
26
|
+
<uui-button
|
|
27
|
+
label=${this.localize.term('uSyncBackground_process')}
|
|
28
|
+
color="positive"
|
|
29
|
+
look="outline"
|
|
30
|
+
@click=${() => __classPrivateFieldGet(this, _uSyncQueueTableElement_instances, "m", _uSyncQueueTableElement_dispatch).call(this, 'process-queue-item', item)}></uui-button>
|
|
31
|
+
<uui-button
|
|
32
|
+
label=${this.localize.term('uSyncBackground_cancel')}
|
|
33
|
+
color="warning"
|
|
34
|
+
look="outline"
|
|
35
|
+
@click=${() => __classPrivateFieldGet(this, _uSyncQueueTableElement_instances, "m", _uSyncQueueTableElement_dispatch).call(this, 'cancel-queue-item', item)}></uui-button>
|
|
36
|
+
</uui-button-group>`;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
_uSyncQueueTableElement_instances = new WeakSet();
|
|
40
|
+
_uSyncQueueTableElement_dispatch = function _uSyncQueueTableElement_dispatch(name, item) {
|
|
41
|
+
this.dispatchEvent(new CustomEvent(name, {
|
|
42
|
+
composed: true,
|
|
43
|
+
detail: { key: item.key, name: item.note || item.processor },
|
|
44
|
+
}));
|
|
45
|
+
};
|
|
46
|
+
uSyncQueueTableElement = __decorate([
|
|
47
|
+
customElement('usync-queue-table')
|
|
48
|
+
], uSyncQueueTableElement);
|
|
49
|
+
export { uSyncQueueTableElement };
|
|
50
|
+
export default uSyncQueueTableElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components/index.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components/index.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const manifests: (import("@umbraco-cms/backoffice/workspace").ManifestWorkspace<import("@umbraco-cms/backoffice/workspace").MetaWorkspace, import("@umbraco-cms/backoffice/controller-api").UmbControllerHostElement, import("@umbraco-cms/backoffice/workspace").UmbWorkspaceContext> | import("@jumoo/usync").ManifestuSyncMenuItem)[];
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
const workspaceAlias = 'usync-background-workspace';
|
|
2
|
+
const backgroundEntity = 'usync-background';
|
|
3
|
+
const menuItem = {
|
|
4
|
+
type: 'usync-menuItem',
|
|
5
|
+
alias: 'usync.background.menu.item',
|
|
6
|
+
name: 'background',
|
|
7
|
+
weight: 8,
|
|
8
|
+
meta: {
|
|
9
|
+
label: 'Background',
|
|
10
|
+
icon: 'icon-circuits',
|
|
11
|
+
entityType: backgroundEntity,
|
|
12
|
+
menus: ['usync.menu'],
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
const workspace = {
|
|
16
|
+
type: 'workspace',
|
|
17
|
+
alias: workspaceAlias,
|
|
18
|
+
name: 'uSync Background',
|
|
19
|
+
js: () => import('./workspace/background-workspace-element.js'),
|
|
20
|
+
meta: {
|
|
21
|
+
entityType: backgroundEntity,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
export const manifests = [menuItem, workspace];
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
|
|
2
|
+
export declare class uSyncBackgroundWorkspaceElement extends UmbLitElement {
|
|
3
|
+
#private;
|
|
4
|
+
private _processList?;
|
|
5
|
+
private _pendingList?;
|
|
6
|
+
constructor();
|
|
7
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
8
|
+
static styles: import("lit").CSSResult;
|
|
9
|
+
}
|
|
10
|
+
export default uSyncBackgroundWorkspaceElement;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
8
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
11
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
12
|
+
};
|
|
13
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
14
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
15
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
16
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
17
|
+
};
|
|
18
|
+
var _uSyncBackgroundWorkspaceElement_pipelinesContext;
|
|
19
|
+
import { PipelinesContext, PipelineStatus } from '@jumoo/processing';
|
|
20
|
+
import { css, customElement, html, query } from '@umbraco-cms/backoffice/external/lit';
|
|
21
|
+
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
|
|
22
|
+
let uSyncBackgroundWorkspaceElement = class uSyncBackgroundWorkspaceElement extends UmbLitElement {
|
|
23
|
+
constructor() {
|
|
24
|
+
super();
|
|
25
|
+
_uSyncBackgroundWorkspaceElement_pipelinesContext.set(this, void 0);
|
|
26
|
+
__classPrivateFieldSet(this, _uSyncBackgroundWorkspaceElement_pipelinesContext, new PipelinesContext(this), "f");
|
|
27
|
+
console.debug('uSyncBackgroundWorkspaceElement', __classPrivateFieldGet(this, _uSyncBackgroundWorkspaceElement_pipelinesContext, "f"));
|
|
28
|
+
// a cancel (or process) in one list changes what's in both. The literal is
|
|
29
|
+
// USYNC_BACKGROUND_CHANGED_EVENT: importing the constant would pull the main bundle into
|
|
30
|
+
// this lazy chunk as a second copy (and define every element twice).
|
|
31
|
+
this.addEventListener('usync-background-changed', () => {
|
|
32
|
+
this._processList?.getPipelines();
|
|
33
|
+
this._pendingList?.onRefresh();
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
render() {
|
|
37
|
+
return html `<umb-body-layout
|
|
38
|
+
><div class="layout">
|
|
39
|
+
<uui-box .headline=${this.localize.term('uSyncBackground_title')}>
|
|
40
|
+
${this.localize.term('uSyncBackground_intro')}
|
|
41
|
+
</uui-box>
|
|
42
|
+
|
|
43
|
+
<usync-process-list
|
|
44
|
+
.defaultStatus=${PipelineStatus.WAITING}
|
|
45
|
+
.headline=${this.localize.term('uSyncBackground_processes')}></usync-process-list>
|
|
46
|
+
|
|
47
|
+
<usync-pending-list
|
|
48
|
+
.headline=${this.localize.term('uSyncBackground_queue')}></usync-pending-list>
|
|
49
|
+
</div>
|
|
50
|
+
</umb-body-layout>`;
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
_uSyncBackgroundWorkspaceElement_pipelinesContext = new WeakMap();
|
|
54
|
+
uSyncBackgroundWorkspaceElement.styles = css `
|
|
55
|
+
.layout {
|
|
56
|
+
display: flex;
|
|
57
|
+
flex-direction: column;
|
|
58
|
+
gap: var(--uui-size-space-4);
|
|
59
|
+
}
|
|
60
|
+
`;
|
|
61
|
+
__decorate([
|
|
62
|
+
query('usync-process-list')
|
|
63
|
+
], uSyncBackgroundWorkspaceElement.prototype, "_processList", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
query('usync-pending-list')
|
|
66
|
+
], uSyncBackgroundWorkspaceElement.prototype, "_pendingList", void 0);
|
|
67
|
+
uSyncBackgroundWorkspaceElement = __decorate([
|
|
68
|
+
customElement('usync-background-workspace-element')
|
|
69
|
+
], uSyncBackgroundWorkspaceElement);
|
|
70
|
+
export { uSyncBackgroundWorkspaceElement };
|
|
71
|
+
export default uSyncBackgroundWorkspaceElement;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
|
|
2
|
+
import { USyncActionView } from '@jumoo/usync-expansions';
|
|
3
|
+
export declare class uSyncResportSummaryView extends UmbLitElement {
|
|
4
|
+
#private;
|
|
5
|
+
showAll: boolean;
|
|
6
|
+
headline: string;
|
|
7
|
+
results?: USyncActionView[];
|
|
8
|
+
/**
|
|
9
|
+
* @description is this being shown as part of a report (or false as results)
|
|
10
|
+
*/
|
|
11
|
+
isReport: boolean;
|
|
12
|
+
private countChanges;
|
|
13
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
14
|
+
renderToggle(): import("lit-html").TemplateResult<1>;
|
|
15
|
+
renderChangeSummary(changes: number): import("lit-html").TemplateResult<1>;
|
|
16
|
+
renderReportSummary(changes: number): import("lit-html").TemplateResult<1>;
|
|
17
|
+
renderResultSummary(changes: number): import("lit-html").TemplateResult<1>;
|
|
18
|
+
renderTable(): import("lit-html").TemplateResult<1>;
|
|
19
|
+
renderTableHeader(): import("lit-html").TemplateResult<1>;
|
|
20
|
+
renderRows(): import("lit-html").TemplateResult<1>;
|
|
21
|
+
static styles: import("lit").CSSResult;
|
|
22
|
+
}
|
|
23
|
+
export default uSyncResportSummaryView;
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _uSyncResportSummaryView_instances, _uSyncResportSummaryView_showDetail;
|
|
13
|
+
import { classMap, css, customElement, html, nothing, property, state, when, } from '@umbraco-cms/backoffice/external/lit';
|
|
14
|
+
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
|
|
15
|
+
import { ChangeType } from '../api/index.js';
|
|
16
|
+
let uSyncResportSummaryView = class uSyncResportSummaryView extends UmbLitElement {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(...arguments);
|
|
19
|
+
_uSyncResportSummaryView_instances.add(this);
|
|
20
|
+
this.showAll = false;
|
|
21
|
+
this.headline = 'Change report';
|
|
22
|
+
/**
|
|
23
|
+
* @description is this being shown as part of a report (or false as results)
|
|
24
|
+
*/
|
|
25
|
+
this.isReport = true;
|
|
26
|
+
}
|
|
27
|
+
countChanges() {
|
|
28
|
+
let changes = 0;
|
|
29
|
+
this.results?.forEach((result) => {
|
|
30
|
+
if (result.change !== ChangeType.NO_CHANGE) {
|
|
31
|
+
changes++;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
return changes;
|
|
35
|
+
}
|
|
36
|
+
render() {
|
|
37
|
+
const changes = this.countChanges();
|
|
38
|
+
return html ` ${this.renderChangeSummary(changes)}
|
|
39
|
+
<uui-box .headline=${this.headline}>
|
|
40
|
+
<div slot="header-actions">${this.renderToggle()}</div>
|
|
41
|
+
${when(this.showAll || changes > 0, () => this.renderTable())}
|
|
42
|
+
</uui-box>`;
|
|
43
|
+
}
|
|
44
|
+
renderToggle() {
|
|
45
|
+
return html `
|
|
46
|
+
<uui-toggle
|
|
47
|
+
.label=${this.localize.term('uSync_showAll')}
|
|
48
|
+
labelPosition="left"
|
|
49
|
+
?checked=${this.showAll}
|
|
50
|
+
@change=${() => {
|
|
51
|
+
this.showAll = !this.showAll;
|
|
52
|
+
}}></uui-toggle>
|
|
53
|
+
`;
|
|
54
|
+
}
|
|
55
|
+
renderChangeSummary(changes) {
|
|
56
|
+
return this.isReport
|
|
57
|
+
? this.renderReportSummary(changes)
|
|
58
|
+
: this.renderResultSummary(changes);
|
|
59
|
+
}
|
|
60
|
+
renderReportSummary(changes) {
|
|
61
|
+
return changes > 0
|
|
62
|
+
? html `<div class="change-msg">
|
|
63
|
+
<h4>
|
|
64
|
+
${this.localize.term('uSyncReport_pendingChanges', [
|
|
65
|
+
changes,
|
|
66
|
+
this.results?.length ?? 0,
|
|
67
|
+
])}
|
|
68
|
+
</h4>
|
|
69
|
+
</div>`
|
|
70
|
+
: html `<div class="change-msg positive">
|
|
71
|
+
<h4>${this.localize.term('uSyncReport_noChanges')}</h4>
|
|
72
|
+
<p>${this.localize.term('uSyncReport_noChangesDescription')}</p>
|
|
73
|
+
</div>`;
|
|
74
|
+
}
|
|
75
|
+
renderResultSummary(changes) {
|
|
76
|
+
return changes > 0
|
|
77
|
+
? html `<div class="change-msg">
|
|
78
|
+
<h4>
|
|
79
|
+
${this.localize.term('uSyncReport_resultChanges', [
|
|
80
|
+
changes,
|
|
81
|
+
this.results?.length ?? 0,
|
|
82
|
+
])}
|
|
83
|
+
</h4>
|
|
84
|
+
</div>`
|
|
85
|
+
: html `<div class="change-msg positive">
|
|
86
|
+
<h4>${this.localize.term('uSyncReport_noChanges')}</h4>
|
|
87
|
+
<p>${this.localize.term('uSyncReport_resultNoChange')}</p>
|
|
88
|
+
</div>`;
|
|
89
|
+
}
|
|
90
|
+
renderTable() {
|
|
91
|
+
return html `
|
|
92
|
+
<uui-table> ${this.renderTableHeader()} ${this.renderRows()} </uui-table>
|
|
93
|
+
`;
|
|
94
|
+
}
|
|
95
|
+
renderTableHeader() {
|
|
96
|
+
return html `
|
|
97
|
+
<uui-table-head>
|
|
98
|
+
<uui-table-head-cell class="icon-cell" .noPadding=${true}>
|
|
99
|
+
<!-- <umb-icon name="icon-checkbox-dotted"></umb-icon> -->
|
|
100
|
+
</uui-table-head-cell>
|
|
101
|
+
<uui-table-head-cell style="--uui-table-cell-padding: var(--uui-size-space-2);">
|
|
102
|
+
<umb-localize key="uSync_changeName">Name</umb-localize>
|
|
103
|
+
</uui-table-head-cell>
|
|
104
|
+
</uui-table-head>
|
|
105
|
+
`;
|
|
106
|
+
}
|
|
107
|
+
renderRows() {
|
|
108
|
+
const rowsHtml = this.results?.map((result) => {
|
|
109
|
+
if (!this.showAll && result.change == ChangeType.NO_CHANGE)
|
|
110
|
+
return nothing;
|
|
111
|
+
const icon = result.change == ChangeType.NO_CHANGE
|
|
112
|
+
? 'icon-trafic'
|
|
113
|
+
: result.success
|
|
114
|
+
? 'icon-check color-green'
|
|
115
|
+
: 'icon-wrong color-red';
|
|
116
|
+
return html `
|
|
117
|
+
<uui-table-row
|
|
118
|
+
class=${classMap({ changerow: result.change != ChangeType.NO_CHANGE })}>
|
|
119
|
+
<uui-table-cell class="icon-cell" .noPadding=${true}>
|
|
120
|
+
<umb-icon .name=${icon}></umb-icon>
|
|
121
|
+
</uui-table-cell>
|
|
122
|
+
<uui-table-cell
|
|
123
|
+
@click=${() => __classPrivateFieldGet(this, _uSyncResportSummaryView_instances, "m", _uSyncResportSummaryView_showDetail).call(this, result)}
|
|
124
|
+
.clipText=${true}
|
|
125
|
+
style="--uui-table-cell-padding: var(--uui-size-space-2);">
|
|
126
|
+
<div>${result.name}</div>
|
|
127
|
+
<div class="item-detail">
|
|
128
|
+
<div>${result.itemType}</div>
|
|
129
|
+
<div>${result.change}</div>
|
|
130
|
+
</div>
|
|
131
|
+
</uui-table-cell>
|
|
132
|
+
</uui-table-row>
|
|
133
|
+
`;
|
|
134
|
+
});
|
|
135
|
+
return html `${rowsHtml}`;
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
_uSyncResportSummaryView_instances = new WeakSet();
|
|
139
|
+
_uSyncResportSummaryView_showDetail = async function _uSyncResportSummaryView_showDetail(action) {
|
|
140
|
+
if (action.change == ChangeType.NO_CHANGE)
|
|
141
|
+
return;
|
|
142
|
+
// TODO . Open the shared details modal
|
|
143
|
+
};
|
|
144
|
+
uSyncResportSummaryView.styles = css `
|
|
145
|
+
.changerow {
|
|
146
|
+
cursor: pointer;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.icon-cell {
|
|
150
|
+
width: var(--uui-size-8);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.item-detail {
|
|
154
|
+
display: flex;
|
|
155
|
+
justify-content: space-between;
|
|
156
|
+
font-size: smaller;
|
|
157
|
+
color: var(--uui-color-disabled-contrast);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.change-msg {
|
|
161
|
+
padding: var(--uui-size-3);
|
|
162
|
+
margin-bottom: var(--uui-size-3);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.change-msg.positive {
|
|
166
|
+
background-color: var(--uui-color-positive);
|
|
167
|
+
color: #fff;
|
|
168
|
+
box-shadow: var(--uui-shadow-depth-1);
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.change-msg > * {
|
|
172
|
+
margin: var(--uui-size-4) 0;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
uui-box {
|
|
176
|
+
margin-bottom: var(--uui-size-3);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
uui-table-row:hover {
|
|
180
|
+
background-color: var(--uui-color-disabled);
|
|
181
|
+
}
|
|
182
|
+
`;
|
|
183
|
+
__decorate([
|
|
184
|
+
state()
|
|
185
|
+
], uSyncResportSummaryView.prototype, "showAll", void 0);
|
|
186
|
+
__decorate([
|
|
187
|
+
property({ type: String })
|
|
188
|
+
], uSyncResportSummaryView.prototype, "headline", void 0);
|
|
189
|
+
__decorate([
|
|
190
|
+
property({ type: Array })
|
|
191
|
+
], uSyncResportSummaryView.prototype, "results", void 0);
|
|
192
|
+
__decorate([
|
|
193
|
+
property({ type: Boolean })
|
|
194
|
+
], uSyncResportSummaryView.prototype, "isReport", void 0);
|
|
195
|
+
uSyncResportSummaryView = __decorate([
|
|
196
|
+
customElement('usync-report-summary-view')
|
|
197
|
+
], uSyncResportSummaryView);
|
|
198
|
+
export { uSyncResportSummaryView };
|
|
199
|
+
export default uSyncResportSummaryView;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
|
|
2
|
+
export declare class uSyncPropertyLayout extends UmbLitElement {
|
|
3
|
+
#private;
|
|
4
|
+
alias: string;
|
|
5
|
+
label: string;
|
|
6
|
+
description: string;
|
|
7
|
+
invalid?: boolean;
|
|
8
|
+
mandatory?: boolean;
|
|
9
|
+
alignment: 'left' | 'right';
|
|
10
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
11
|
+
static styles: import("lit").CSSResult[];
|
|
12
|
+
}
|
|
13
|
+
declare global {
|
|
14
|
+
interface HTMLElementTagNameMap {
|
|
15
|
+
'usync-property-layout': uSyncPropertyLayout;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _uSyncPropertyLayout_instances, _uSyncPropertyLayout_renderDescription;
|
|
13
|
+
import { css, customElement, html, property, when, } from '@umbraco-cms/backoffice/external/lit';
|
|
14
|
+
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
|
|
15
|
+
import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
|
|
16
|
+
let uSyncPropertyLayout = class uSyncPropertyLayout extends UmbLitElement {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(...arguments);
|
|
19
|
+
_uSyncPropertyLayout_instances.add(this);
|
|
20
|
+
this.alias = '';
|
|
21
|
+
this.label = '';
|
|
22
|
+
this.description = '';
|
|
23
|
+
this.alignment = 'right';
|
|
24
|
+
}
|
|
25
|
+
render() {
|
|
26
|
+
// TODO: Only show alias on label if user has access to DocumentType within settings:
|
|
27
|
+
return html `
|
|
28
|
+
<div id="headerColumn">
|
|
29
|
+
<uui-label id="label" title=${this.alias} ?required=${this.mandatory}>
|
|
30
|
+
${this.localize.string(this.label)}
|
|
31
|
+
${when(this.invalid, () => html `<div id="invalid-badge">
|
|
32
|
+
<uui-badge color="invalid" attention>!</uui-badge>
|
|
33
|
+
</div>`)}
|
|
34
|
+
</uui-label>
|
|
35
|
+
<slot name="action-menu"></slot>
|
|
36
|
+
${__classPrivateFieldGet(this, _uSyncPropertyLayout_instances, "m", _uSyncPropertyLayout_renderDescription).call(this)}
|
|
37
|
+
<slot name="description"></slot>
|
|
38
|
+
</div>
|
|
39
|
+
<div id="editorColumn">
|
|
40
|
+
<umb-form-validation-message>
|
|
41
|
+
<slot name="editor"></slot>
|
|
42
|
+
</umb-form-validation-message>
|
|
43
|
+
</div>
|
|
44
|
+
`;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
_uSyncPropertyLayout_instances = new WeakSet();
|
|
48
|
+
_uSyncPropertyLayout_renderDescription = function _uSyncPropertyLayout_renderDescription() {
|
|
49
|
+
if (!this.description)
|
|
50
|
+
return;
|
|
51
|
+
const ufmValue = {
|
|
52
|
+
alias: this.alias,
|
|
53
|
+
label: this.label,
|
|
54
|
+
description: this.description,
|
|
55
|
+
};
|
|
56
|
+
return html `<umb-ufm-render
|
|
57
|
+
id="description"
|
|
58
|
+
.markdown=${this.description}
|
|
59
|
+
.value=${ufmValue}></umb-ufm-render>`;
|
|
60
|
+
};
|
|
61
|
+
uSyncPropertyLayout.styles = [
|
|
62
|
+
UmbTextStyles,
|
|
63
|
+
css `
|
|
64
|
+
:host {
|
|
65
|
+
display: grid;
|
|
66
|
+
grid-template-columns: 100px minmax(0, 1fr);
|
|
67
|
+
column-gap: var(--uui-size-layout-2);
|
|
68
|
+
padding: var(--uui-size-4) 0;
|
|
69
|
+
container-type: inline-size;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
:host(:not([alignment='left'])) {
|
|
73
|
+
grid-template-columns: 300px minmax(0, 1fr);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
:host > div {
|
|
77
|
+
grid-column: span 2;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
:host(:not([orientation='vertical'])) > div {
|
|
81
|
+
grid-column: span 1;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
#headerColumn {
|
|
85
|
+
position: relative;
|
|
86
|
+
height: min-content;
|
|
87
|
+
top: var(--umb-property-layout-header-top);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
:host(:not([orientation='vertical'])) #headerColumn {
|
|
91
|
+
position: sticky;
|
|
92
|
+
top: var(--umb-property-layout-header-top, calc(var(--uui-size-space-2) * -1));
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
:host {
|
|
96
|
+
/* TODO: Temp solution to not get a yellow asterisk when invalid. */
|
|
97
|
+
--umb-temp-uui-color-invalid: var(--uui-color-invalid);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
#label {
|
|
101
|
+
position: relative;
|
|
102
|
+
word-break: break-word;
|
|
103
|
+
/* TODO: Temp solution to not get a yellow asterisk when invalid. */
|
|
104
|
+
--uui-color-invalid: var(--uui-color-danger);
|
|
105
|
+
}
|
|
106
|
+
#invalid-badge {
|
|
107
|
+
display: inline-block;
|
|
108
|
+
position: relative;
|
|
109
|
+
width: 18px;
|
|
110
|
+
height: 1em;
|
|
111
|
+
margin-right: 6px;
|
|
112
|
+
}
|
|
113
|
+
uui-badge {
|
|
114
|
+
//height: var(--uui-color-invalid);
|
|
115
|
+
background-color: var(--umb-temp-uui-color-invalid);
|
|
116
|
+
color: var(--uui-color-invalid-contrast);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
#description {
|
|
120
|
+
color: var(--uui-color-text-alt);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
#editorColumn {
|
|
124
|
+
display: flex;
|
|
125
|
+
align-items: center;
|
|
126
|
+
margin-top: var(--uui-size-space-3);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
:host(:not([alignment='left'])) #editorColumn {
|
|
130
|
+
justify-content: flex-end;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
:host(:not([orientation='vertical'])) #editorColumn {
|
|
134
|
+
margin-top: 0;
|
|
135
|
+
}
|
|
136
|
+
`,
|
|
137
|
+
];
|
|
138
|
+
__decorate([
|
|
139
|
+
property({ type: String })
|
|
140
|
+
], uSyncPropertyLayout.prototype, "alias", void 0);
|
|
141
|
+
__decorate([
|
|
142
|
+
property({ type: String })
|
|
143
|
+
], uSyncPropertyLayout.prototype, "label", void 0);
|
|
144
|
+
__decorate([
|
|
145
|
+
property({ type: String })
|
|
146
|
+
], uSyncPropertyLayout.prototype, "description", void 0);
|
|
147
|
+
__decorate([
|
|
148
|
+
property({ type: Boolean })
|
|
149
|
+
], uSyncPropertyLayout.prototype, "invalid", void 0);
|
|
150
|
+
__decorate([
|
|
151
|
+
property({ type: Boolean })
|
|
152
|
+
], uSyncPropertyLayout.prototype, "mandatory", void 0);
|
|
153
|
+
__decorate([
|
|
154
|
+
property({ type: String })
|
|
155
|
+
], uSyncPropertyLayout.prototype, "alignment", void 0);
|
|
156
|
+
uSyncPropertyLayout = __decorate([
|
|
157
|
+
customElement('usync-property-layout')
|
|
158
|
+
], uSyncPropertyLayout);
|
|
159
|
+
export { uSyncPropertyLayout };
|