Skip to content

Commit 5b75fd1

Browse files
committed
feat(core registry): Rework patterns bundle for all lazy loading.
1 parent 0f70c4f commit 5b75fd1

1 file changed

Lines changed: 238 additions & 61 deletions

File tree

src/patterns.js

Lines changed: 238 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -6,78 +6,255 @@
66
import registry from "./core/registry";
77

88
//// Import all used patterns for the bundle to be generated
9-
//import "./core/push_kit";
10-
//import "./pat/ajax/ajax";
11-
//import "./pat/auto-scale/auto-scale";
12-
//import "./pat/auto-submit/auto-submit";
13-
//import "./pat/auto-suggest/auto-suggest";
14-
//import "./pat/autofocus/autofocus";
15-
//import "./pat/breadcrumbs/breadcrumbs";
16-
//import "./pat/bumper/bumper";
17-
//import "./pat/calendar/calendar";
18-
//import "./pat/carousel/carousel";
19-
//import "./pat/checklist/checklist";
20-
//import "./pat/clone/clone";
21-
//import "./pat/clone-code/clone-code";
22-
//import "./pat/collapsible/collapsible";
23-
//import "./pat/colour-picker/colour-picker";
24-
//import "./pat/date-picker/date-picker";
25-
//import "./pat/datetime-picker/datetime-picker";
26-
//import "./pat/depends/depends";
27-
//import "./pat/display-time/display-time";
28-
//import "./pat/equaliser/equaliser";
29-
//import "./pat/expandable-tree/expandable-tree";
30-
//import "./pat/focus/focus";
31-
//import "./pat/form-state/form-state";
32-
//import "./pat/forward/forward";
33-
//import "./pat/fullscreen/fullscreen-close";
34-
//import "./pat/fullscreen/fullscreen";
35-
//import "./pat/gallery/gallery";
36-
//import "./pat/image-crop/image-crop";
37-
//import "./pat/legend/legend"; // NOTE: Transforms <legend> tags to <p class="legend"> for styling reasons.
38-
//import "./pat/markdown/markdown";
39-
//import "./pat/masonry/masonry";
40-
//import "./pat/menu/menu";
41-
//import "./pat/modal/modal";
42-
//import "./pat/navigation/navigation";
43-
//import "./pat/notification/notification";
44-
//import "./pat/push/push";
45-
//import "./pat/scroll-box/scroll-box";
46-
//import "./pat/scroll/scroll";
47-
//import "./pat/scroll-marker/scroll-marker";
48-
//import "./pat/selectbox/selectbox";
49-
//import "./pat/slides/slides";
50-
//import "./pat/sortable/sortable";
51-
//import "./pat/stacks/stacks";
52-
//import "./pat/subform/subform";
53-
//import "./pat/switch/switch";
54-
//import "./pat/syntax-highlight/syntax-highlight";
55-
//import "./pat/tabs/tabs";
56-
//import "./pat/toggle/toggle";
57-
//import "./pat/tooltip/tooltip";
58-
//import "./pat/zoom/zoom";
59-
//
60-
//// External patterns
61-
//import "@patternslib/pat-content-mirror";
62-
//import "@patternslib/pat-doclock";
63-
//import "@patternslib/pat-shopping-cart";
64-
//import "@patternslib/pat-sortable-table";
65-
//import "@patternslib/pat-tiptap";
66-
//import "@patternslib/pat-upload";
9+
import "./core/push_kit";
10+
import "./pat/focus/focus";
6711

6812
// Importing pattern styles in JavaScript
6913
// Set to ``true`` to include core styles via JavaScript
7014
//window.__patternslib_import_styles = false;
7115

7216
const lazy_patterns = {
73-
inject: {
17+
"inject": {
7418
trigger: ".pat-inject",
7519
importer: async () => (await import("./pat/inject/inject")).default,
7620
},
77-
validation: {
78-
trigger: ".pat-validation",
21+
"validation": {
22+
trigger: "form.pat-validation",
7923
importer: async () => (await import("./pat/validation/validation")).default,
8024
},
25+
26+
"ajax": {
27+
trigger: ".pat-ajax",
28+
importer: async () => (await import("./pat/ajax/ajax")).default,
29+
},
30+
"autoscale": {
31+
trigger: ".pat-auto-scale",
32+
importer: async () => (await import("./pat/auto-scale/auto-scale")).default,
33+
},
34+
"autosubmit": {
35+
trigger: ".pat-autosubmit, .pat-auto-submit",
36+
importer: async () => (await import("./pat/auto-submit/auto-submit")).default,
37+
},
38+
"autosuggest": {
39+
trigger: ".pat-autosuggest,.pat-auto-suggest",
40+
importer: async () => (await import("./pat/auto-suggest/auto-suggest")).default,
41+
},
42+
"autofocus": {
43+
trigger: `
44+
input.pat-autofocus,
45+
input[autofocus],
46+
select.pat-autofocus,
47+
select[autofocus],
48+
textarea.pat-autofocus,
49+
textarea[autofocus],
50+
button.pat-autofocus,
51+
button[autofocus]
52+
`,
53+
importer: async () => (await import("./pat/autofocus/autofocus")).default,
54+
},
55+
"breadcrumbs": {
56+
trigger: "nav.pat-breadcrumbs",
57+
importer: async () => (await import("./pat/breadcrumbs/breadcrumbs")).default,
58+
},
59+
"bumper": {
60+
trigger: ".pat-bumper",
61+
importer: async () => (await import("./pat/bumper/bumper")).default,
62+
},
63+
"calendar": {
64+
trigger: ".pat-calendar",
65+
importer: async () => (await import("./pat/calendar/calendar")).default,
66+
},
67+
"carousel": {
68+
trigger: ".pat-carousel",
69+
importer: async () => (await import("./pat/carousel/carousel")).default,
70+
},
71+
"checklist": {
72+
trigger: ".pat-checklist",
73+
importer: async () => (await import("./pat/checklist/checklist")).default,
74+
},
75+
"clone": {
76+
trigger: ".pat-clone",
77+
importer: async () => (await import("./pat/clone/clone")).default,
78+
},
79+
"clone-code": {
80+
trigger: ".pat-clone-code",
81+
importer: async () => (await import("./pat/clone-code/clone-code")).default,
82+
},
83+
"collapsible": {
84+
trigger: ".pat-collapsible",
85+
importer: async () => (await import("./pat/collapsible/collapsible")).default,
86+
},
87+
"polyfill-color": {
88+
trigger: "input.pat-colour-picker,input.pat-color-picker",
89+
importer: async () =>
90+
(await import("./pat/colour-picker/colour-picker")).default,
91+
},
92+
"date-picker": {
93+
trigger: ".pat-date-picker",
94+
importer: async () => (await import("./pat/date-picker/date-picker")).default,
95+
},
96+
"datetime-picker": {
97+
trigger: ".pat-datetime-picker",
98+
importer: async () =>
99+
(await import("./pat/datetime-picker/datetime-picker")).default,
100+
},
101+
"depends": {
102+
trigger: ".pat-depends",
103+
importer: async () => (await import("./pat/depends/depends")).default,
104+
},
105+
"display-time": {
106+
trigger: ".pat-display-time",
107+
importer: async () => (await import("./pat/display-time/display-time")).default,
108+
},
109+
"equaliser": {
110+
trigger: ".pat-equaliser, .pat-equalizer",
111+
importer: async () => (await import("./pat/equaliser/equaliser")).default,
112+
},
113+
"expandable": {
114+
trigger: "ul.pat-expandable",
115+
importer: async () =>
116+
(await import("./pat/expandable-tree/expandable-tree")).default,
117+
},
118+
"form-state": {
119+
trigger: "form.pat-form-state",
120+
importer: async () => (await import("./pat/form-state/form-state")).default,
121+
},
122+
"forward": {
123+
trigger: ".pat-forward",
124+
importer: async () => (await import("./pat/forward/forward")).default,
125+
},
126+
"fullscreen-close": {
127+
trigger: ".close-fullscreen",
128+
importer: async () =>
129+
(await import("./pat/fullscreen/fullscreen-close")).default,
130+
},
131+
"fullscreen": {
132+
trigger: ".pat-fullscreen",
133+
importer: async () => (await import("./pat/fullscreen/fullscreen")).default,
134+
},
135+
"gallery": {
136+
trigger: ".pat-gallery",
137+
importer: async () => (await import("./pat/gallery/gallery")).default,
138+
},
139+
"image-crop": {
140+
trigger: "img.pat-image-crop",
141+
importer: async () => (await import("./pat/image-crop/image-crop")).default,
142+
},
143+
"legend": {
144+
trigger: "legend",
145+
importer: async () => (await import("./pat/legend/legend")).default,
146+
},
147+
"markdown": {
148+
trigger: ".pat-markdown",
149+
importer: async () => (await import("./pat/markdown/markdown")).default,
150+
},
151+
"masonry": {
152+
trigger: ".pat-masonry",
153+
importer: async () => (await import("./pat/masonry/masonry")).default,
154+
},
155+
"menu": {
156+
trigger: ".pat-menu",
157+
importer: async () => (await import("./pat/menu/menu")).default,
158+
},
159+
"modal": {
160+
trigger: "div.pat-modal, a.pat-modal, form.pat-modal, .pat-modal.pat-subform",
161+
importer: async () => (await import("./pat/modal/modal")).default,
162+
},
163+
"navigation": {
164+
trigger: ".pat-navigation",
165+
importer: async () => (await import("./pat/navigation/navigation")).default,
166+
},
167+
"notification": {
168+
trigger: ".pat-notification",
169+
importer: async () => (await import("./pat/notification/notification")).default,
170+
},
171+
"push": {
172+
trigger: ".pat-push",
173+
importer: async () => (await import("./pat/push/push")).default,
174+
},
175+
"scroll": {
176+
trigger: ".pat-scroll",
177+
importer: async () => (await import("./pat/scroll/scroll")).default,
178+
},
179+
"scroll-box": {
180+
trigger: ".pat-scroll-box",
181+
importer: async () => (await import("./pat/scroll-box/scroll-box")).default,
182+
},
183+
"scroll-marker": {
184+
trigger: ".pat-scroll-marker",
185+
importer: async () =>
186+
(await import("./pat/scroll-marker/scroll-marker")).default,
187+
},
188+
"selectbox": {
189+
trigger: ".pat-selectbox",
190+
importer: async () => (await import("./pat/selectbox/selectbox")).default,
191+
},
192+
"slides": {
193+
trigger: ".pat-slides",
194+
importer: async () => (await import("./pat/slides/slides")).default,
195+
},
196+
"sortable": {
197+
trigger: ".pat-sortable",
198+
importer: async () => (await import("./pat/sortable/sortable")).default,
199+
},
200+
"stacks": {
201+
trigger: ".pat-stacks",
202+
importer: async () => (await import("./pat/stacks/stacks")).default,
203+
},
204+
"subform": {
205+
trigger: ".pat-subform",
206+
importer: async () => (await import("./pat/subform/subform")).default,
207+
},
208+
"switch": {
209+
trigger: ".pat-switch",
210+
importer: async () => (await import("./pat/switch/switch")).default,
211+
},
212+
"syntax-highlight": {
213+
trigger: ".pat-syntax-highlight",
214+
importer: async () =>
215+
(await import("./pat/syntax-highlight/syntax-highlight")).default,
216+
},
217+
"tabs": {
218+
trigger: ".pat-tabs",
219+
importer: async () => (await import("./pat/tabs/tabs")).default,
220+
},
221+
"toggle": {
222+
trigger: ".pat-toggle",
223+
importer: async () => (await import("./pat/toggle/toggle")).default,
224+
},
225+
"tooltip": {
226+
trigger: ".pat-tooltip, .pat-tooltip-ng",
227+
importer: async () => (await import("./pat/tooltip/tooltip")).default,
228+
},
229+
"zoom": {
230+
trigger: ".pat-zoom",
231+
importer: async () => (await import("./pat/zoom/zoom")).default,
232+
},
233+
// External patterns
234+
"content-mirror": {
235+
trigger: ".pat-content-mirror",
236+
importer: async () => (await import("@patternslib/pat-content-mirror")).default,
237+
},
238+
"doclock": {
239+
trigger: ".pat-doclock",
240+
importer: async () => (await import("@patternslib/pat-doclock")).default,
241+
},
242+
"shopping-cart": {
243+
trigger: ".pat-shopping-cart",
244+
importer: async () => (await import("@patternslib/pat-shopping-cart")).default,
245+
},
246+
"sortable-table": {
247+
trigger: ".pat-sortable-table",
248+
importer: async () => (await import("@patternslib/pat-sortable-table")).default,
249+
},
250+
"tiptap": {
251+
trigger: ".pat-tiptap",
252+
importer: async () => (await import("@patternslib/pat-tiptap")).default,
253+
},
254+
"upload": {
255+
trigger: ".pat-upload",
256+
importer: async () => (await import("@patternslib/pat-upload")).default,
257+
},
81258
};
82259

83260
registry.init(lazy_patterns);

0 commit comments

Comments
 (0)