@lavalogic/scoria 0.0.7 → 0.0.9

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.
@@ -5,17 +5,17 @@
5
5
  import type { Snippet } from 'svelte';
6
6
  import HorizontalTabGroupButton from './HorizontalTabGroupButton.svelte';
7
7
 
8
- export interface HorizontalTabGroupProps<Args extends object | undefined = undefined> {
8
+ export interface HorizontalTabGroupProps {
9
9
  name?: string;
10
- tabComponent?: Snippet<[TabOption<Args>, boolean]>;
10
+ tabComponent?: Snippet<[TabOption<any>, boolean]>;
11
11
  noRadius?: boolean;
12
12
  grow?: boolean;
13
- options: Array<TabOption<Args>>;
14
- selected: TabOption<Args> | undefined;
13
+ options: Array<TabOption<any>>;
14
+ selected: TabOption<any> | undefined;
15
15
  }
16
16
  </script>
17
17
 
18
- <script lang="ts" generics="Args extends [] = []">
18
+ <script lang="ts">
19
19
  let {
20
20
  name,
21
21
  tabComponent,
@@ -23,7 +23,7 @@
23
23
  selected,
24
24
  noRadius = false,
25
25
  grow = false
26
- }: HorizontalTabGroupProps<Args> = $props();
26
+ }: HorizontalTabGroupProps = $props();
27
27
  </script>
28
28
 
29
29
  <div class="wrapper" class:no-radius={noRadius} class:grow>
@@ -1,34 +1,13 @@
1
1
  import type { TabOption } from '../Types/Internal/TabOption.js';
2
2
  import type { Snippet } from 'svelte';
3
- export interface HorizontalTabGroupProps<Args extends object | undefined = undefined> {
3
+ export interface HorizontalTabGroupProps {
4
4
  name?: string;
5
- tabComponent?: Snippet<[TabOption<Args>, boolean]>;
5
+ tabComponent?: Snippet<[TabOption<any>, boolean]>;
6
6
  noRadius?: boolean;
7
7
  grow?: boolean;
8
- options: Array<TabOption<Args>>;
9
- selected: TabOption<Args> | undefined;
8
+ options: Array<TabOption<any>>;
9
+ selected: TabOption<any> | undefined;
10
10
  }
11
- declare function $$render<Args extends [] = []>(): {
12
- props: HorizontalTabGroupProps<Args>;
13
- exports: {};
14
- bindings: "";
15
- slots: {};
16
- events: {};
17
- };
18
- declare class __sveltets_Render<Args extends [] = []> {
19
- props(): ReturnType<typeof $$render<Args>>['props'];
20
- events(): ReturnType<typeof $$render<Args>>['events'];
21
- slots(): ReturnType<typeof $$render<Args>>['slots'];
22
- bindings(): "";
23
- exports(): {};
24
- }
25
- interface $$IsomorphicComponent {
26
- new <Args extends [] = []>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<Args>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<Args>['props']>, ReturnType<__sveltets_Render<Args>['events']>, ReturnType<__sveltets_Render<Args>['slots']>> & {
27
- $$bindings?: ReturnType<__sveltets_Render<Args>['bindings']>;
28
- } & ReturnType<__sveltets_Render<Args>['exports']>;
29
- <Args extends [] = []>(internal: unknown, props: ReturnType<__sveltets_Render<Args>['props']> & {}): ReturnType<__sveltets_Render<Args>['exports']>;
30
- z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
31
- }
32
- declare const HorizontalTabGroup: $$IsomorphicComponent;
33
- type HorizontalTabGroup<Args extends [] = []> = InstanceType<typeof HorizontalTabGroup<Args>>;
11
+ declare const HorizontalTabGroup: import("svelte").Component<HorizontalTabGroupProps, {}, "">;
12
+ type HorizontalTabGroup = ReturnType<typeof HorizontalTabGroup>;
34
13
  export default HorizontalTabGroup;
@@ -1,13 +1,13 @@
1
1
  <svelte:options runes />
2
2
 
3
3
  <script lang="ts" module>
4
- export interface VerticalTabGroupButtonProps<Args extends []> {
4
+ export interface VerticalTabGroupButtonProps<Args extends object | undefined> {
5
5
  option: TabOption<Args>;
6
6
  selected: boolean;
7
7
  }
8
8
  </script>
9
9
 
10
- <script lang="ts" generics="Args extends []">
10
+ <script lang="ts" generics="Args extends object|undefined">
11
11
  import { Colour } from '../scss/colours.js';
12
12
 
13
13
  import { Size } from '../Types/Internal/Size.js';
@@ -1,16 +1,16 @@
1
- export interface VerticalTabGroupButtonProps<Args extends []> {
1
+ export interface VerticalTabGroupButtonProps<Args extends object | undefined> {
2
2
  option: TabOption<Args>;
3
3
  selected: boolean;
4
4
  }
5
5
  import type { TabOption } from '../Types/Internal/TabOption.js';
6
- declare function $$render<Args extends []>(): {
6
+ declare function $$render<Args extends object | undefined>(): {
7
7
  props: VerticalTabGroupButtonProps<Args>;
8
8
  exports: {};
9
9
  bindings: "";
10
10
  slots: {};
11
11
  events: {};
12
12
  };
13
- declare class __sveltets_Render<Args extends []> {
13
+ declare class __sveltets_Render<Args extends object | undefined> {
14
14
  props(): ReturnType<typeof $$render<Args>>['props'];
15
15
  events(): ReturnType<typeof $$render<Args>>['events'];
16
16
  slots(): ReturnType<typeof $$render<Args>>['slots'];
@@ -18,12 +18,12 @@ declare class __sveltets_Render<Args extends []> {
18
18
  exports(): {};
19
19
  }
20
20
  interface $$IsomorphicComponent {
21
- new <Args extends []>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<Args>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<Args>['props']>, ReturnType<__sveltets_Render<Args>['events']>, ReturnType<__sveltets_Render<Args>['slots']>> & {
21
+ new <Args extends object | undefined>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<Args>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<Args>['props']>, ReturnType<__sveltets_Render<Args>['events']>, ReturnType<__sveltets_Render<Args>['slots']>> & {
22
22
  $$bindings?: ReturnType<__sveltets_Render<Args>['bindings']>;
23
23
  } & ReturnType<__sveltets_Render<Args>['exports']>;
24
- <Args extends []>(internal: unknown, props: ReturnType<__sveltets_Render<Args>['props']> & {}): ReturnType<__sveltets_Render<Args>['exports']>;
24
+ <Args extends object | undefined>(internal: unknown, props: ReturnType<__sveltets_Render<Args>['props']> & {}): ReturnType<__sveltets_Render<Args>['exports']>;
25
25
  z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
26
26
  }
27
27
  declare const HorizontalTabGroupButton: $$IsomorphicComponent;
28
- type HorizontalTabGroupButton<Args extends []> = InstanceType<typeof HorizontalTabGroupButton<Args>>;
28
+ type HorizontalTabGroupButton<Args extends object | undefined> = InstanceType<typeof HorizontalTabGroupButton<Args>>;
29
29
  export default HorizontalTabGroupButton;
@@ -16,6 +16,9 @@ export interface RemoteTableDataRepositoryOptions<httpResponseSchema extends obj
16
16
  tableName: string;
17
17
  service: FloService;
18
18
  defaultFilters: Map<string, string>;
19
+ getUserId: () => string | undefined;
20
+ httpGetter: (service: FloService, uri: string) => Promise<IResponse<httpResponseSchema[]>>;
21
+ httpGetterPaginated: (service: FloService, uri: string) => Promise<IPaginatedResponse<httpResponseSchema[]>>;
19
22
  schema?: TSchema;
20
23
  pageSize?: number;
21
24
  fetchImmediately?: boolean;
@@ -24,10 +27,10 @@ export interface RemoteTableDataRepositoryOptions<httpResponseSchema extends obj
24
27
  }
25
28
  export declare class RemoteTableDataRepository<T extends object = object, R extends object = T> extends TableDataRepository<R> implements IRemoteDataRepository<R> {
26
29
  options: RemoteTableDataRepositoryOptions<T, R>;
30
+ static readonly memoise: <T extends object, K extends keyof T, ResponseType>(getter: (item: T) => Promise<ResponseType>, key: K) => (item: T) => Promise<ResponseType>;
27
31
  private httpGetter;
28
32
  private httpGetterPaginated;
29
- static readonly memoise: <T extends object, K extends keyof T, ResponseType>(getter: (item: T) => Promise<ResponseType>, key: K) => (item: T) => Promise<ResponseType>;
30
- constructor(options: RemoteTableDataRepositoryOptions<T, R>, getUserId: () => string | undefined, httpGetter: (service: FloService, uri: string) => Promise<IResponse<T[]>>, httpGetterPaginated: (service: FloService, uri: string) => Promise<IPaginatedResponse<T[]>>);
33
+ constructor(options: RemoteTableDataRepositoryOptions<T, R>);
31
34
  private _latestFetchId;
32
35
  private _data;
33
36
  get data(): R[];
@@ -11,8 +11,6 @@ function isProxyFilter(filter) {
11
11
  }
12
12
  export class RemoteTableDataRepository extends TableDataRepository {
13
13
  options;
14
- httpGetter;
15
- httpGetterPaginated;
16
14
  static memoise = (getter, key) => {
17
15
  const cache = new Map();
18
16
  return async (item) => {
@@ -29,13 +27,15 @@ export class RemoteTableDataRepository extends TableDataRepository {
29
27
  return response;
30
28
  };
31
29
  };
32
- constructor(options, getUserId, httpGetter, httpGetterPaginated) {
33
- super(options.tableName, getUserId);
30
+ httpGetter;
31
+ httpGetterPaginated;
32
+ constructor(options) {
33
+ super(options.tableName, options.getUserId);
34
34
  this.options = options;
35
- this.httpGetter = httpGetter;
36
- this.httpGetterPaginated = httpGetterPaginated;
35
+ this.httpGetter = options.httpGetter;
36
+ this.httpGetterPaginated = options.httpGetterPaginated;
37
37
  if (browser) {
38
- const userId = getUserId();
38
+ const userId = this.getUserId();
39
39
  const savedPageSize = localStorage.getItem(`${userId}-${options.tableName}-page-size`);
40
40
  if (savedPageSize) {
41
41
  const saved = JSON.parse(savedPageSize);
@@ -11,7 +11,7 @@ export interface ReadonlyPaginationState extends PaginationState {
11
11
  }
12
12
  export declare abstract class TableDataRepository<T extends object> implements IDataRepository<T> {
13
13
  private tableName;
14
- private getUserId;
14
+ protected getUserId: () => string | undefined;
15
15
  abstract paginationType: 'Remote' | 'Local';
16
16
  abstract filterType: FilterType;
17
17
  abstract totalRows: number;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lavalogic/scoria",
3
3
  "description": "Svelte components used for the FloWMS Web Frontend",
4
- "version": "0.0.7",
4
+ "version": "0.0.9",
5
5
  "publishConfig": {
6
6
  "access": "restricted"
7
7
  },