Skip to content

Commit a630feb

Browse files
Docs: Storybook clean up round 1 (#19673)
* delete internal stories * more clean up * more cleanup * move to generic components * clean up * move body layout * move story * Move icon stories * remove prefilled color * Update icon.element.ts * rename story * Replace UUIFormControlMixin with UmbFormControlMixin Refactors all relevant input and form control components to use the new UmbFormControlMixin from '@umbraco-cms/backoffice/validation' instead of the deprecated UUIFormControlMixin. This change improves consistency and aligns with updated validation handling in the codebase. * Revert "Merge branch 'v16/bugfix/use-umb-form-control-mixin' into v16/docs/storybook-clean-up" This reverts commit 7fa70b8, reversing changes made to 8fe7391. * simplify name * Add discard changes modal stories * add error viewer modal * fix stories * rename * fix date story * add story for input with alias * add story for popover layout * add story for dropdown * add args * register core manifests * register entity action bundle + list * add stack example * clean up * Create data-type-input.stories.ts * change overview story to docs * rename to docs * rename to docs * Update icon.stories.ts * Update preview.js * remove overview story * rename default story * load more manifests * import all manifests * Update preview.js * Update preview.js * provide all stores + global contexts * Update data-type-input.stories.ts * add user input and ref stories * add storybook auth context * set the initial storybook language * use isoCode param * fix input-language component * delete broken stories * fix icon picker story * fix mock member ids * Fix query parameter name in item handler Changed the query parameter from 'paths' to 'path' in the item handler to correctly retrieve item paths from the request. This ensures the handler processes requests as expected. * Update user item handler to use user mock DB Replaces the document mock database with the user mock database in the user item handler to ensure correct data source is used for user-related requests. * Add config to checkbox list story Introduces a sample configuration to the checkbox list Storybook story, providing predefined options for demonstration and testing purposes. * Add config to select property editor story Introduces a sample UmbPropertyEditorConfigCollection to the select property editor Storybook story, providing predefined options for demonstration and testing purposes. * Add config to radio button list Storybook story Introduces a sample UmbPropertyEditorConfigCollection to the radio button list * Refactor slider story to use config collection Replaces inline config array with UmbPropertyEditorConfigCollection for the slider property editor story. * Delete property-editor-ui-label.stories.ts * Group releated UIs * Remove multi-url picker Storybook file * add input stylesheet story * add back localization stories * Delete property-editor-config.stories.ts --------- Co-authored-by: Jacob Overgaard <[email protected]>
1 parent 170becd commit a630feb

File tree

165 files changed

+673
-1876
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

165 files changed

+673
-1876
lines changed

src/Umbraco.Web.UI.Client/.storybook/preview.js

Lines changed: 108 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,8 @@ import { setCustomElements } from '@storybook/web-components-vite';
1010
import { startMockServiceWorker } from '../src/mocks';
1111

1212
import '../src/libs/controller-api/controller-host-provider.element';
13+
import { UmbExtensionsApiInitializer } from '../src/libs/extension-api/index';
1314
import { UmbModalManagerContext } from '../src/packages/core/modal';
14-
import { UmbDataTypeTreeStore } from '../src/packages/data-type/tree/data-type-tree.store';
15-
import { UmbDocumentDetailStore } from '../src/packages/documents/documents/repository/detail/document-detail.store';
16-
import { UmbDocumentTreeStore } from '../src/packages/documents/documents/tree/document-tree.store';
17-
import { UmbCurrentUserStore } from '../src/packages/user/current-user/repository/current-user.store';
1815
import { umbExtensionsRegistry } from '../src/packages/core/extension-registry';
1916
import { UmbIconRegistry } from '../src/packages/core/icon-registry/icon.registry';
2017
import { UmbLitElement } from '../src/packages/core/lit-element';
@@ -25,27 +22,128 @@ import icons from '../src/packages/core/icon-registry/icons';
2522
import '../src/libs/context-api/provide/context-provider.element';
2623
import '../src/packages/core/components';
2724

25+
import { manifests as blockManifests } from '../src/packages/block/manifests';
26+
import { manifests as clipboardManifests } from '../src/packages/clipboard/manifests';
27+
import { manifests as codeEditorManifests } from '../src/packages/code-editor/manifests';
28+
import { manifests as contentManifests } from '../src/packages/content/manifests';
29+
import { manifests as coreManifests } from '../src/packages/core/manifests';
30+
import { manifests as dataTypeManifests } from '../src/packages/data-type/manifests';
31+
import { manifests as dictionaryManifests } from '../src/packages/dictionary/manifests';
2832
import { manifests as documentManifests } from '../src/packages/documents/manifests';
29-
import { manifests as localizationManifests } from '../src/packages/core/localization/manifests';
33+
import { manifests as embeddedMediaManifests } from '../src/packages/embedded-media/manifests';
34+
import { manifests as extensionInsightsManifests } from '../src/packages/extension-insights/manifests';
35+
import { manifests as healthCheckManifests } from '../src/packages/health-check/manifests';
36+
import { manifests as helpManifests } from '../src/packages/help/manifests';
37+
import { manifests as languageManifests } from '../src/packages/language/manifests';
38+
import { manifests as logViewerManifests } from '../src/packages/log-viewer/manifests';
39+
import { manifests as markdownEditorManifests } from '../src/packages/markdown-editor/manifests';
40+
import { manifests as mediaManifests } from '../src/packages/media/manifests';
41+
import { manifests as memberManifests } from '../src/packages/members/manifests';
42+
import { manifests as modelsBuilderManifests } from '../src/packages/models-builder/manifests';
43+
import { manifests as multiUrlPickerManifests } from '../src/packages/multi-url-picker/manifests';
44+
import { manifests as packageManifests } from '../src/packages/packages/manifests';
45+
import { manifests as performanceProfilingManifests } from '../src/packages/performance-profiling/manifests';
46+
import { manifests as propertyEditorManifests } from '../src/packages/property-editors/manifests';
47+
import { manifests as publishCacheManifests } from '../src/packages/publish-cache/manifests';
48+
import { manifests as relationsManifests } from '../src/packages/relations/manifests';
49+
import { manifests as rteManifests } from '../src/packages/rte/manifests';
50+
import { manifests as searchManifests } from '../src/packages/search/manifests';
51+
import { manifests as segmentManifests } from '../src/packages/segment/manifests';
52+
import { manifests as settingsManifests } from '../src/packages/settings/manifests';
53+
import { manifests as staticFileManifests } from '../src/packages/static-file/manifests';
54+
import { manifests as sysInfoManifests } from '../src/packages/sysinfo/manifests';
55+
import { manifests as tagManifests } from '../src/packages/tags/manifests';
56+
import { manifests as telemetryManifests } from '../src/packages/telemetry/manifests';
57+
import { manifests as templatingManifests } from '../src/packages/templating/manifests';
58+
import { manifests as tipTapManifests } from '../src/packages/tiptap/manifests';
59+
import { manifests as translationManifests } from '../src/packages/translation/manifests';
60+
import { manifests as ufmManifests } from '../src/packages/ufm/manifests';
61+
//import { manifests as umbracoNewsManifests } from '../src/packages/umbraco-news/manifests';
62+
import { manifests as userManifests } from '../src/packages/user/manifests';
63+
import { manifests as webhookManifests } from '../src/packages/webhook/manifests';
64+
3065
import { UmbNotificationContext } from '../src/packages/core/notification';
66+
import { UmbContextBase } from '../src/libs/class-api/index';
67+
import { UmbBooleanState } from '../src/libs/observable-api/index';
68+
import { UMB_APP_LANGUAGE_CONTEXT } from '../src/packages/language/constants';
3169

3270
// MSW
3371
startMockServiceWorker({ serviceWorker: { url: (import.meta.env.VITE_BASE_PATH ?? '/') + 'mockServiceWorker.js' } });
3472

73+
class UmbStoryBookAuthContext extends UmbContextBase {
74+
#isAuthorized = new UmbBooleanState(true);
75+
isAuthorized = this.#isAuthorized.asObservable();
76+
77+
constructor(host) {
78+
super(host, 'UmbAuthContext');
79+
}
80+
}
81+
3582
class UmbStoryBookElement extends UmbLitElement {
3683
_umbIconRegistry = new UmbIconRegistry();
3784

85+
#manifests = [
86+
...blockManifests,
87+
...clipboardManifests,
88+
...codeEditorManifests,
89+
...contentManifests,
90+
...coreManifests,
91+
...dataTypeManifests,
92+
...dictionaryManifests,
93+
...documentManifests,
94+
...embeddedMediaManifests,
95+
...extensionInsightsManifests,
96+
...healthCheckManifests,
97+
...helpManifests,
98+
...languageManifests,
99+
...logViewerManifests,
100+
...markdownEditorManifests,
101+
...mediaManifests,
102+
...memberManifests,
103+
...modelsBuilderManifests,
104+
...multiUrlPickerManifests,
105+
...packageManifests,
106+
...performanceProfilingManifests,
107+
...propertyEditorManifests,
108+
...publishCacheManifests,
109+
...relationsManifests,
110+
...rteManifests,
111+
...searchManifests,
112+
...segmentManifests,
113+
...settingsManifests,
114+
...staticFileManifests,
115+
...sysInfoManifests,
116+
...tagManifests,
117+
...telemetryManifests,
118+
...templatingManifests,
119+
...tipTapManifests,
120+
...translationManifests,
121+
...ufmManifests,
122+
//...umbracoNewsManifests,
123+
...userManifests,
124+
...webhookManifests,
125+
];
126+
38127
constructor() {
39128
super();
129+
new UmbExtensionsApiInitializer(this, umbExtensionsRegistry, 'globalContext', [this]);
130+
new UmbExtensionsApiInitializer(this, umbExtensionsRegistry, 'store', [this]);
131+
new UmbExtensionsApiInitializer(this, umbExtensionsRegistry, 'treeStore', [this]);
132+
new UmbExtensionsApiInitializer(this, umbExtensionsRegistry, 'itemStore', [this]);
133+
40134
this._umbIconRegistry.setIcons(icons);
41135
this._umbIconRegistry.attach(this);
42-
this._registerExtensions(documentManifests);
136+
this._registerExtensions(this.#manifests);
137+
138+
new UmbStoryBookAuthContext(this);
43139
new UmbModalManagerContext(this);
44-
new UmbCurrentUserStore(this);
45140
new UmbNotificationContext(this);
46141

47-
this._registerExtensions(localizationManifests);
48142
umbLocalizationRegistry.loadLanguage('en-us'); // register default language
143+
144+
this.consumeContext(UMB_APP_LANGUAGE_CONTEXT, (appLanguageContext) => {
145+
appLanguageContext.setLanguage('en-us'); // set default language
146+
});
49147
}
50148

51149
_registerExtensions(manifests) {
@@ -66,26 +164,8 @@ customElements.define('umb-storybook', UmbStoryBookElement);
66164

67165
const storybookProvider = (story) => html` <umb-storybook>${story()}</umb-storybook> `;
68166

69-
const dataTypeStoreProvider = (story) => html`
70-
<umb-controller-host-provider .create=${(host) => new UmbDataTypeTreeStore(host)}
71-
>${story()}</umb-controller-host-provider
72-
>
73-
`;
74-
75-
const documentStoreProvider = (story) => html`
76-
<umb-controller-host-provider .create=${(host) => new UmbDocumentDetailStore(host)}
77-
>${story()}</umb-controller-host-provider
78-
>
79-
`;
80-
81-
const documentTreeStoreProvider = (story) => html`
82-
<umb-controller-host-provider .create=${(host) => new UmbDocumentTreeStore(host)}
83-
>${story()}</umb-controller-host-provider
84-
>
85-
`;
86-
87167
// Provide the MSW addon decorator globally
88-
export const decorators = [documentStoreProvider, documentTreeStoreProvider, dataTypeStoreProvider, storybookProvider];
168+
export const decorators = [storybookProvider];
89169

90170
export const parameters = {
91171
docs: {
@@ -98,28 +178,7 @@ export const parameters = {
98178
storySort: {
99179
method: 'alphabetical',
100180
includeNames: true,
101-
order: [
102-
'Guides',
103-
[
104-
'Getting started',
105-
'Extending the Backoffice',
106-
[
107-
'Intro',
108-
'Registration',
109-
'Header Apps',
110-
'Sections',
111-
['Intro', 'Sidebar', 'Views', '*'],
112-
'Entity Actions',
113-
'Workspaces',
114-
['Intro', 'Views', 'Actions', '*'],
115-
'Property Editors',
116-
'Repositories',
117-
'*',
118-
],
119-
'*',
120-
],
121-
'*',
122-
],
181+
order: ['Generic Components', 'Extension Type', 'Entity', 'Guides'],
123182
},
124183
},
125184
controls: {

src/Umbraco.Web.UI.Client/src/apps/backoffice/backoffice.stories.ts

Lines changed: 0 additions & 14 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/installer/consent/installer-consent.stories.ts

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/installer/database/installer-database.stories.ts

Lines changed: 0 additions & 17 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/installer/error/installer-error.stories.ts

Lines changed: 0 additions & 38 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/installer/installer.stories.ts

Lines changed: 0 additions & 12 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/installer/installing/installer-installing.stories.ts

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/installer/shared/layout/installer-layout.stories.ts

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/installer/user/installer-user.stories.ts

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/Umbraco.Web.UI.Client/src/apps/preview/preview.stories.ts

Lines changed: 0 additions & 10 deletions
This file was deleted.

0 commit comments

Comments
 (0)