@brandup/ui-app 1.0.34 → 1.0.35

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/cjs/index.js CHANGED
@@ -118,23 +118,6 @@ const StateMiddlewareFactory = () => {
118
118
  };
119
119
  };
120
120
 
121
- const win = window;
122
- const doc = window.document;
123
- const body = doc.body;
124
- const loc = window.location;
125
- var BROWSER = {
126
- window: win,
127
- document: doc,
128
- body,
129
- location: loc,
130
- reload: () => loc.reload()
131
- };
132
-
133
- var browser = /*#__PURE__*/Object.freeze({
134
- __proto__: null,
135
- default: BROWSER
136
- });
137
-
138
121
  const HYPERLINK_MIDDLEWARE_NAME = "app-hyperlink";
139
122
  const HyperLinkMiddlewareFactory = () => {
140
123
  let __ctrlPressed = false;
@@ -144,7 +127,7 @@ const HyperLinkMiddlewareFactory = () => {
144
127
  name: HYPERLINK_MIDDLEWARE_NAME,
145
128
  start: async (context, next) => {
146
129
  await next();
147
- BROWSER.window.addEventListener("click", onClick = (e) => {
130
+ window.addEventListener("click", onClick = (e) => {
148
131
  let elem = e.target;
149
132
  let ignore = false;
150
133
  while (elem) {
@@ -186,25 +169,27 @@ const HyperLinkMiddlewareFactory = () => {
186
169
  .catch(() => { })
187
170
  .finally(() => elem.classList.remove(result.LoadingElementClass));
188
171
  }, false);
189
- BROWSER.window.addEventListener("keydown", onKeyDownUp, false);
190
- BROWSER.window.addEventListener("keyup", onKeyDownUp, false);
172
+ window.addEventListener("keydown", onKeyDownUp, false);
173
+ window.addEventListener("keyup", onKeyDownUp, false);
191
174
  },
192
175
  stop: (_context, next) => {
193
- BROWSER.window.removeEventListener("click", onClick, false);
194
- BROWSER.window.removeEventListener("keydown", onKeyDownUp, false);
195
- BROWSER.window.removeEventListener("keyup", onKeyDownUp, false);
176
+ window.removeEventListener("click", onClick, false);
177
+ window.removeEventListener("keydown", onKeyDownUp, false);
178
+ window.removeEventListener("keyup", onKeyDownUp, false);
196
179
  return next();
197
180
  }
198
181
  };
199
182
  };
200
183
 
201
- const parseUrl = (url) => {
202
- const loc = BROWSER.location;
184
+ const parseUrl = (basePath, url) => {
185
+ const loc = window.location;
203
186
  let origin = loc.origin;
204
187
  let path;
205
188
  let query = null;
206
189
  let hash = null;
207
190
  let isExternal = false;
191
+ if (basePath === '/')
192
+ basePath = '';
208
193
  if (!url) {
209
194
  path = loc.pathname;
210
195
  if (loc.search)
@@ -258,20 +243,31 @@ const parseUrl = (url) => {
258
243
  }
259
244
  }
260
245
  if (!path)
261
- path = "/";
262
- else if (path.length > 1 && path.endsWith("/"))
246
+ path = '/';
247
+ else if (path.length > 1 && path.endsWith('/'))
263
248
  path = path.substring(0, path.length - 1);
249
+ path = path.toLowerCase();
250
+ if (basePath) {
251
+ if (path.toLowerCase().startsWith(basePath.toLowerCase())) {
252
+ path = path.substring(basePath.length);
253
+ if (!path)
254
+ path = '/';
255
+ }
256
+ else
257
+ basePath = '';
258
+ }
264
259
  if (!query)
265
260
  query = new URLSearchParams();
266
- if (hash === "#")
261
+ if (hash === '#')
267
262
  hash = null;
268
263
  else if (hash)
269
264
  hash = hash.substring(1);
270
265
  var result = {
271
- full: "",
272
- url: "",
273
- relative: "",
266
+ full: '',
267
+ url: '',
268
+ relative: '',
274
269
  origin,
270
+ basePath,
275
271
  path,
276
272
  query,
277
273
  hash,
@@ -309,7 +305,9 @@ const extendQuery = (url, query) => {
309
305
  rebuildUrl(url);
310
306
  };
311
307
  const rebuildUrl = (parsedUrl) => {
312
- let relativeUrl = parsedUrl.path;
308
+ let relativeUrl = parsedUrl.basePath + parsedUrl.path;
309
+ if (relativeUrl.length > 1 && relativeUrl.endsWith('/'))
310
+ relativeUrl = relativeUrl.substring(0, relativeUrl.length - 1);
313
311
  if (parsedUrl.query.size)
314
312
  relativeUrl += "?" + parsedUrl.query.toString();
315
313
  parsedUrl.url = parsedUrl.origin + relativeUrl;
@@ -318,11 +316,17 @@ const rebuildUrl = (parsedUrl) => {
318
316
  };
319
317
  const buildUrl = (basePath, path, query, hash) => {
320
318
  let url = basePath;
319
+ if (url == '/')
320
+ url = '';
321
321
  if (path) {
322
- if (path.startsWith("/"))
323
- path = path.substring(1);
322
+ if (!path.startsWith("/"))
323
+ path = '/' + path;
324
324
  url += path;
325
325
  }
326
+ if (!url)
327
+ url = '/';
328
+ else if (url.endsWith('/'))
329
+ url = url.substring(0, url.length - 1);
326
330
  if (query) {
327
331
  let params;
328
332
  if (query instanceof URLSearchParams)
@@ -446,7 +450,7 @@ class Application extends ui.UIElement {
446
450
  this.__isRuned = true;
447
451
  if (!contextData)
448
452
  contextData = {};
449
- element = element || BROWSER.body;
453
+ element = element || document.body;
450
454
  this.setElement(element);
451
455
  const context = {
452
456
  abort: this.__abort.signal,
@@ -497,7 +501,7 @@ class Application extends ui.UIElement {
497
501
  async nav(options) {
498
502
  const opt = (!options || typeof options === "string") ? { url: options } : options;
499
503
  let { url = null, query, replace = false, scope = null, data = {}, abort } = opt;
500
- const navUrl = urlHelper.parseUrl(url);
504
+ const navUrl = urlHelper.parseUrl(this.env.basePath, url);
501
505
  if (query)
502
506
  urlHelper.extendQuery(navUrl, query);
503
507
  let isFirst = !this.__lastNav && !this.__execNav;
@@ -538,6 +542,7 @@ class Application extends ui.UIElement {
538
542
  url: navUrl.url,
539
543
  origin: navUrl.origin,
540
544
  pathAndQuery: navUrl.relative,
545
+ basePath: navUrl.basePath,
541
546
  path: navUrl.path,
542
547
  query: navUrl.query,
543
548
  hash: navUrl.hash,
@@ -566,7 +571,7 @@ class Application extends ui.UIElement {
566
571
  */
567
572
  restart() {
568
573
  this.__abort.signal.throwIfAborted();
569
- BROWSER.reload();
574
+ window.location.reload();
570
575
  }
571
576
  async destroy(contextData) {
572
577
  if (this.__abort.signal.aborted)
@@ -637,7 +642,7 @@ class Application extends ui.UIElement {
637
642
  if (method === "GET")
638
643
  await this.nav({ url, query: new FormData(form), data: data, replace, abort: opt.abort });
639
644
  else {
640
- const navUrl = urlHelper.parseUrl(url);
645
+ const navUrl = urlHelper.parseUrl(this.env.basePath, url);
641
646
  if (query)
642
647
  urlHelper.extendQuery(navUrl, query);
643
648
  let parentNav;
@@ -670,6 +675,7 @@ class Application extends ui.UIElement {
670
675
  url: navUrl.url,
671
676
  origin: navUrl.origin,
672
677
  pathAndQuery: navUrl.relative,
678
+ basePath: navUrl.basePath,
673
679
  path: navUrl.path,
674
680
  query: navUrl.query,
675
681
  hash: navUrl.hash,
@@ -748,18 +754,38 @@ class ApplicationBuilder {
748
754
  return this;
749
755
  }
750
756
  build(env, ...args) {
751
- if (!env.basePath)
752
- env.basePath = "/";
757
+ if (!env.basePath || env.basePath == '/')
758
+ env.basePath = '';
753
759
  const app = new this.__appType(env, this.__model, ...args);
754
760
  app.initialize(this.__middlewares);
755
761
  return app;
756
762
  }
757
763
  }
758
764
 
765
+ HTMLElement.prototype.navUrl = function (url) {
766
+ if (this instanceof HTMLAnchorElement)
767
+ this.href = url;
768
+ else
769
+ this.dataset.navUrl = url;
770
+ this.classList.add(result.NavUrlClassName);
771
+ return this;
772
+ };
773
+ HTMLElement.prototype.nav = function (app, path, query, hash) {
774
+ const url = app.buildUrl(path, query, hash);
775
+ return this.navUrl(url);
776
+ };
777
+ HTMLElement.prototype.navReplace = function () {
778
+ this.setAttribute(result.NavUrlReplaceAttributeName, "");
779
+ return this;
780
+ };
781
+ HTMLElement.prototype.navScope = function (scope) {
782
+ this.setAttribute(result.NavUrlScopeAttributeName, scope);
783
+ return this;
784
+ };
785
+
759
786
  exports.APP_TYPENAME = APP_TYPENAME;
760
787
  exports.Application = Application;
761
788
  exports.ApplicationBuilder = ApplicationBuilder;
762
- exports.BROWSER = browser;
763
789
  exports.CONSTANTS = constants;
764
790
  exports.NAV_OVERIDE_ERROR = NAV_OVERIDE_ERROR;
765
791
  exports.UrlHelper = url;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../source/middlewares/invoker.ts","../../../source/constants.ts","../../../source/middlewares/state.ts","../../../source/browser.ts","../../../source/middlewares/hyperlink.ts","../../../source/helpers/url.ts","../../../source/app.ts","../../../source/builder.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["CONSTANTS","UIElement","StateMiddleware","HyperLinkMiddleware","Guid"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../source/middlewares/invoker.ts","../../../source/constants.ts","../../../source/middlewares/state.ts","../../../source/middlewares/hyperlink.ts","../../../source/helpers/url.ts","../../../source/app.ts","../../../source/builder.ts","../../../source/ext.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["CONSTANTS","UIElement","StateMiddleware","HyperLinkMiddleware","Guid"],"mappings":"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"}
package/dist/mjs/index.js CHANGED
@@ -116,23 +116,6 @@ const StateMiddlewareFactory = () => {
116
116
  };
117
117
  };
118
118
 
119
- const win = window;
120
- const doc = window.document;
121
- const body = doc.body;
122
- const loc = window.location;
123
- var BROWSER = {
124
- window: win,
125
- document: doc,
126
- body,
127
- location: loc,
128
- reload: () => loc.reload()
129
- };
130
-
131
- var browser = /*#__PURE__*/Object.freeze({
132
- __proto__: null,
133
- default: BROWSER
134
- });
135
-
136
119
  const HYPERLINK_MIDDLEWARE_NAME = "app-hyperlink";
137
120
  const HyperLinkMiddlewareFactory = () => {
138
121
  let __ctrlPressed = false;
@@ -142,7 +125,7 @@ const HyperLinkMiddlewareFactory = () => {
142
125
  name: HYPERLINK_MIDDLEWARE_NAME,
143
126
  start: async (context, next) => {
144
127
  await next();
145
- BROWSER.window.addEventListener("click", onClick = (e) => {
128
+ window.addEventListener("click", onClick = (e) => {
146
129
  let elem = e.target;
147
130
  let ignore = false;
148
131
  while (elem) {
@@ -184,25 +167,27 @@ const HyperLinkMiddlewareFactory = () => {
184
167
  .catch(() => { })
185
168
  .finally(() => elem.classList.remove(result.LoadingElementClass));
186
169
  }, false);
187
- BROWSER.window.addEventListener("keydown", onKeyDownUp, false);
188
- BROWSER.window.addEventListener("keyup", onKeyDownUp, false);
170
+ window.addEventListener("keydown", onKeyDownUp, false);
171
+ window.addEventListener("keyup", onKeyDownUp, false);
189
172
  },
190
173
  stop: (_context, next) => {
191
- BROWSER.window.removeEventListener("click", onClick, false);
192
- BROWSER.window.removeEventListener("keydown", onKeyDownUp, false);
193
- BROWSER.window.removeEventListener("keyup", onKeyDownUp, false);
174
+ window.removeEventListener("click", onClick, false);
175
+ window.removeEventListener("keydown", onKeyDownUp, false);
176
+ window.removeEventListener("keyup", onKeyDownUp, false);
194
177
  return next();
195
178
  }
196
179
  };
197
180
  };
198
181
 
199
- const parseUrl = (url) => {
200
- const loc = BROWSER.location;
182
+ const parseUrl = (basePath, url) => {
183
+ const loc = window.location;
201
184
  let origin = loc.origin;
202
185
  let path;
203
186
  let query = null;
204
187
  let hash = null;
205
188
  let isExternal = false;
189
+ if (basePath === '/')
190
+ basePath = '';
206
191
  if (!url) {
207
192
  path = loc.pathname;
208
193
  if (loc.search)
@@ -256,20 +241,31 @@ const parseUrl = (url) => {
256
241
  }
257
242
  }
258
243
  if (!path)
259
- path = "/";
260
- else if (path.length > 1 && path.endsWith("/"))
244
+ path = '/';
245
+ else if (path.length > 1 && path.endsWith('/'))
261
246
  path = path.substring(0, path.length - 1);
247
+ path = path.toLowerCase();
248
+ if (basePath) {
249
+ if (path.toLowerCase().startsWith(basePath.toLowerCase())) {
250
+ path = path.substring(basePath.length);
251
+ if (!path)
252
+ path = '/';
253
+ }
254
+ else
255
+ basePath = '';
256
+ }
262
257
  if (!query)
263
258
  query = new URLSearchParams();
264
- if (hash === "#")
259
+ if (hash === '#')
265
260
  hash = null;
266
261
  else if (hash)
267
262
  hash = hash.substring(1);
268
263
  var result = {
269
- full: "",
270
- url: "",
271
- relative: "",
264
+ full: '',
265
+ url: '',
266
+ relative: '',
272
267
  origin,
268
+ basePath,
273
269
  path,
274
270
  query,
275
271
  hash,
@@ -307,7 +303,9 @@ const extendQuery = (url, query) => {
307
303
  rebuildUrl(url);
308
304
  };
309
305
  const rebuildUrl = (parsedUrl) => {
310
- let relativeUrl = parsedUrl.path;
306
+ let relativeUrl = parsedUrl.basePath + parsedUrl.path;
307
+ if (relativeUrl.length > 1 && relativeUrl.endsWith('/'))
308
+ relativeUrl = relativeUrl.substring(0, relativeUrl.length - 1);
311
309
  if (parsedUrl.query.size)
312
310
  relativeUrl += "?" + parsedUrl.query.toString();
313
311
  parsedUrl.url = parsedUrl.origin + relativeUrl;
@@ -316,11 +314,17 @@ const rebuildUrl = (parsedUrl) => {
316
314
  };
317
315
  const buildUrl = (basePath, path, query, hash) => {
318
316
  let url = basePath;
317
+ if (url == '/')
318
+ url = '';
319
319
  if (path) {
320
- if (path.startsWith("/"))
321
- path = path.substring(1);
320
+ if (!path.startsWith("/"))
321
+ path = '/' + path;
322
322
  url += path;
323
323
  }
324
+ if (!url)
325
+ url = '/';
326
+ else if (url.endsWith('/'))
327
+ url = url.substring(0, url.length - 1);
324
328
  if (query) {
325
329
  let params;
326
330
  if (query instanceof URLSearchParams)
@@ -444,7 +448,7 @@ class Application extends UIElement {
444
448
  this.__isRuned = true;
445
449
  if (!contextData)
446
450
  contextData = {};
447
- element = element || BROWSER.body;
451
+ element = element || document.body;
448
452
  this.setElement(element);
449
453
  const context = {
450
454
  abort: this.__abort.signal,
@@ -495,7 +499,7 @@ class Application extends UIElement {
495
499
  async nav(options) {
496
500
  const opt = (!options || typeof options === "string") ? { url: options } : options;
497
501
  let { url = null, query, replace = false, scope = null, data = {}, abort } = opt;
498
- const navUrl = urlHelper.parseUrl(url);
502
+ const navUrl = urlHelper.parseUrl(this.env.basePath, url);
499
503
  if (query)
500
504
  urlHelper.extendQuery(navUrl, query);
501
505
  let isFirst = !this.__lastNav && !this.__execNav;
@@ -536,6 +540,7 @@ class Application extends UIElement {
536
540
  url: navUrl.url,
537
541
  origin: navUrl.origin,
538
542
  pathAndQuery: navUrl.relative,
543
+ basePath: navUrl.basePath,
539
544
  path: navUrl.path,
540
545
  query: navUrl.query,
541
546
  hash: navUrl.hash,
@@ -564,7 +569,7 @@ class Application extends UIElement {
564
569
  */
565
570
  restart() {
566
571
  this.__abort.signal.throwIfAborted();
567
- BROWSER.reload();
572
+ window.location.reload();
568
573
  }
569
574
  async destroy(contextData) {
570
575
  if (this.__abort.signal.aborted)
@@ -635,7 +640,7 @@ class Application extends UIElement {
635
640
  if (method === "GET")
636
641
  await this.nav({ url, query: new FormData(form), data: data, replace, abort: opt.abort });
637
642
  else {
638
- const navUrl = urlHelper.parseUrl(url);
643
+ const navUrl = urlHelper.parseUrl(this.env.basePath, url);
639
644
  if (query)
640
645
  urlHelper.extendQuery(navUrl, query);
641
646
  let parentNav;
@@ -668,6 +673,7 @@ class Application extends UIElement {
668
673
  url: navUrl.url,
669
674
  origin: navUrl.origin,
670
675
  pathAndQuery: navUrl.relative,
676
+ basePath: navUrl.basePath,
671
677
  path: navUrl.path,
672
678
  query: navUrl.query,
673
679
  hash: navUrl.hash,
@@ -746,13 +752,34 @@ class ApplicationBuilder {
746
752
  return this;
747
753
  }
748
754
  build(env, ...args) {
749
- if (!env.basePath)
750
- env.basePath = "/";
755
+ if (!env.basePath || env.basePath == '/')
756
+ env.basePath = '';
751
757
  const app = new this.__appType(env, this.__model, ...args);
752
758
  app.initialize(this.__middlewares);
753
759
  return app;
754
760
  }
755
761
  }
756
762
 
757
- export { APP_TYPENAME, Application, ApplicationBuilder, browser as BROWSER, constants as CONSTANTS, NAV_OVERIDE_ERROR, url as UrlHelper };
763
+ HTMLElement.prototype.navUrl = function (url) {
764
+ if (this instanceof HTMLAnchorElement)
765
+ this.href = url;
766
+ else
767
+ this.dataset.navUrl = url;
768
+ this.classList.add(result.NavUrlClassName);
769
+ return this;
770
+ };
771
+ HTMLElement.prototype.nav = function (app, path, query, hash) {
772
+ const url = app.buildUrl(path, query, hash);
773
+ return this.navUrl(url);
774
+ };
775
+ HTMLElement.prototype.navReplace = function () {
776
+ this.setAttribute(result.NavUrlReplaceAttributeName, "");
777
+ return this;
778
+ };
779
+ HTMLElement.prototype.navScope = function (scope) {
780
+ this.setAttribute(result.NavUrlScopeAttributeName, scope);
781
+ return this;
782
+ };
783
+
784
+ export { APP_TYPENAME, Application, ApplicationBuilder, constants as CONSTANTS, NAV_OVERIDE_ERROR, url as UrlHelper };
758
785
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../source/middlewares/invoker.ts","../../../source/constants.ts","../../../source/middlewares/state.ts","../../../source/browser.ts","../../../source/middlewares/hyperlink.ts","../../../source/helpers/url.ts","../../../source/app.ts","../../../source/builder.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["CONSTANTS","StateMiddleware","HyperLinkMiddleware"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../source/middlewares/invoker.ts","../../../source/constants.ts","../../../source/middlewares/state.ts","../../../source/middlewares/hyperlink.ts","../../../source/helpers/url.ts","../../../source/app.ts","../../../source/builder.ts","../../../source/ext.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["CONSTANTS","StateMiddleware","HyperLinkMiddleware"],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -65,8 +65,10 @@ interface NavigateContext<TApplication extends Application = Application, TData
65
65
  readonly url: string;
66
66
  /** Scheme, host and port. */
67
67
  readonly origin: string;
68
- /** Path and query, but without hash. */
68
+ /** Base path, path and query, but without hash. */
69
69
  readonly pathAndQuery: string;
70
+ /** Base path. */
71
+ readonly basePath: string;
70
72
  /** Path of navigation url. */
71
73
  readonly path: string;
72
74
  /** Query parameters of navigation url. */
@@ -195,25 +197,39 @@ declare class ApplicationBuilder<TModel extends ApplicationModel> {
195
197
  build(env: EnvironmentModel, ...args: any[]): Application<TModel>;
196
198
  }
197
199
 
200
+ declare global {
201
+ interface HTMLElement {
202
+ /** Build navigate by application. */
203
+ nav(app: Application, path?: string, query?: QueryParams | URLSearchParams | FormData, hash?: string): this;
204
+ /** Build navigate by url. */
205
+ navUrl(url: string): this;
206
+ /** Set navigation with replace. */
207
+ navReplace(): this;
208
+ /** Set navigation scope. */
209
+ navScope(scope: string): this;
210
+ }
211
+ }
212
+
198
213
  interface ParsedUrl {
199
214
  full: string;
200
215
  url: string;
201
216
  relative: string;
202
217
  origin: string;
218
+ basePath: string;
203
219
  path: string;
204
220
  query: URLSearchParams;
205
221
  hash: string | null;
206
222
  external: boolean;
207
223
  }
208
- declare const _default$1: {
209
- parseUrl: (url: string | null) => ParsedUrl;
224
+ declare const _default: {
225
+ parseUrl: (basePath: string, url: string | null) => ParsedUrl;
210
226
  extendQuery: (url: ParsedUrl, query: QueryParams | URLSearchParams | FormData) => void;
211
227
  buildUrl: (basePath: string, path?: string, query?: QueryParams | URLSearchParams | FormData, hash?: string) => string;
212
228
  };
213
229
 
214
230
  type url_ParsedUrl = ParsedUrl;
215
231
  declare namespace url {
216
- export { _default$1 as default };
232
+ export { _default as default };
217
233
  export type { url_ParsedUrl as ParsedUrl };
218
234
  }
219
235
 
@@ -239,19 +255,5 @@ declare namespace constants {
239
255
  };
240
256
  }
241
257
 
242
- declare const _default: {
243
- window: Window & typeof globalThis;
244
- document: Document;
245
- body: HTMLElement;
246
- location: Location;
247
- reload: () => void;
248
- };
249
-
250
- declare namespace browser {
251
- export {
252
- _default as default,
253
- };
254
- }
255
-
256
- export { APP_TYPENAME, Application, ApplicationBuilder, browser as BROWSER, constants as CONSTANTS, NAV_OVERIDE_ERROR, url as UrlHelper };
258
+ export { APP_TYPENAME, Application, ApplicationBuilder, constants as CONSTANTS, NAV_OVERIDE_ERROR, url as UrlHelper };
257
259
  export type { ApplicationModel, ContextData, EnvironmentModel, InvokeContext, Middleware, MiddlewareMethod, MiddlewareNext, NavigateAction, NavigateContext, NavigateOptions, NavigateSource, QueryParams, StartContext, StopContext, SubmitContext, SubmitMethod, SubmitOptions };
package/package.json CHANGED
@@ -24,11 +24,11 @@
24
24
  "module": "dist/mjs/index.js",
25
25
  "types": "dist/types.d.ts",
26
26
  "license": "Apache-2.0",
27
- "version": "1.0.34",
27
+ "version": "1.0.35",
28
28
  "dependencies": {
29
- "@brandup/ui": "^1.0.34",
30
- "@brandup/ui-dom": "^1.0.34",
31
- "@brandup/ui-helpers": "^1.0.34"
29
+ "@brandup/ui": "^1.0.35",
30
+ "@brandup/ui-dom": "^1.0.35",
31
+ "@brandup/ui-helpers": "^1.0.35"
32
32
  },
33
33
  "files": [
34
34
  "dist",