framework7-svelte 8.0.0-beta.1 → 8.0.0-beta.2

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.
@@ -11,6 +11,7 @@
11
11
  let className = undefined;
12
12
  export { className as class };
13
13
 
14
+ export let style = '';
14
15
  export let opened = undefined;
15
16
  export let animate = undefined;
16
17
  export let grid = undefined;
@@ -123,6 +124,6 @@
123
124
  });
124
125
  </script>
125
126
 
126
- <div class={classes} bind:this={el} {...restProps($$restProps)}>
127
+ <div class={classes} bind:this={el} {style} {...restProps($$restProps)}>
127
128
  <slot actions={f7Actions} />
128
129
  </div>
@@ -36,16 +36,26 @@
36
36
  }
37
37
 
38
38
  $: if (themeIcon) {
39
+ classes = {
40
+ icon: true,
41
+ };
39
42
  const parts = themeIcon.split(':');
40
43
  const prop = parts[0];
41
44
  const value = parts[1];
42
45
  if (prop === 'material' || prop === 'f7') {
43
46
  classes['material-icons'] = prop === 'material';
44
47
  classes['f7-icons'] = prop === 'f7';
45
- }
46
-
47
- if (prop === 'icon') {
48
- classes[value] = true;
48
+ if (prop === 'icon') {
49
+ classes[value] = true;
50
+ }
51
+ } else {
52
+ if (themeIcon.includes(':')) {
53
+ themeIcon = themeIcon
54
+ .split(' ')
55
+ .map((el) => el.replace('icon:', ''))
56
+ .join(' ');
57
+ }
58
+ classes[themeIcon] = true;
49
59
  }
50
60
  } else {
51
61
  classes = {
@@ -35,6 +35,7 @@ interface ListItemProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap[
35
35
  noChevron ?: boolean;
36
36
  chevronCenter ?: boolean;
37
37
  checkbox ?: boolean;
38
+ checkboxIcon ?: boolean;
38
39
  radio ?: boolean;
39
40
  radioIcon ?: string;
40
41
  checked ?: boolean;
@@ -65,6 +65,7 @@
65
65
 
66
66
  // Inputs
67
67
  export let checkbox = undefined;
68
+ export let checkboxIcon = undefined;
68
69
  export let radio = undefined;
69
70
  export let radioIcon = undefined;
70
71
  export let checked = undefined;
@@ -121,6 +122,8 @@
121
122
  {
122
123
  'item-checkbox': checkbox,
123
124
  'item-radio': radio,
125
+ 'item-checkbox-icon-start': checkbox && checkboxIcon === 'start',
126
+ 'item-checkbox-icon-end': checkbox && checkboxIcon === 'end',
124
127
  'item-radio-icon-start': radio && radioIcon === 'start',
125
128
  'item-radio-icon-end': radio && radioIcon === 'end',
126
129
  },
@@ -11,6 +11,7 @@
11
11
  let className = undefined;
12
12
  export { className as class };
13
13
 
14
+ export let style = '';
14
15
  export let opened = undefined;
15
16
  export let animate = undefined;
16
17
  export let containerEl = undefined;
@@ -99,6 +100,6 @@
99
100
  });
100
101
  </script>
101
102
 
102
- <div class={classes} bind:this={el} {...restProps($$restProps)}>
103
+ <div class={classes} bind:this={el} {style} {...restProps($$restProps)}>
103
104
  <slot loginScreen={f7LoginScreen} />
104
105
  </div>
@@ -11,6 +11,7 @@
11
11
  let className = undefined;
12
12
  export { className as class };
13
13
 
14
+ export let style = '';
14
15
  export let opened = undefined;
15
16
  export let animate = undefined;
16
17
  export let targetEl = undefined;
@@ -114,7 +115,7 @@
114
115
  });
115
116
  </script>
116
117
 
117
- <div class={classes} bind:this={el} {...restProps($$restProps)}>
118
+ <div class={classes} bind:this={el} {style} {...restProps($$restProps)}>
118
119
  <div class="popover-angle" />
119
120
  <div class="popover-inner">
120
121
  <slot popover={f7Popover} />
@@ -11,6 +11,7 @@
11
11
  let className = undefined;
12
12
  export { className as class };
13
13
 
14
+ export let style = '';
14
15
  export let tabletFullscreen = undefined;
15
16
  export let opened = undefined;
16
17
  export let animate = undefined;
@@ -135,6 +136,6 @@
135
136
  });
136
137
  </script>
137
138
 
138
- <div class={classes} bind:this={el} {...restProps($$restProps)}>
139
+ <div class={classes} bind:this={el} {style} {...restProps($$restProps)}>
139
140
  <slot popup={f7Popup} />
140
141
  </div>
@@ -11,6 +11,7 @@
11
11
  let className = undefined;
12
12
  export { className as class };
13
13
 
14
+ export let style = '';
14
15
  export let opened = undefined;
15
16
  export let animate = undefined;
16
17
  export let top = undefined;
@@ -160,7 +161,7 @@
160
161
  });
161
162
  </script>
162
163
 
163
- <div class={classes} bind:this={el} {...restProps($$restProps)}>
164
+ <div class={classes} bind:this={el} {style} {...restProps($$restProps)}>
164
165
  <slot sheet={f7Sheet} name="fixed" />
165
166
  <div class="sheet-modal-inner" bind:this={innerEl}>
166
167
  <slot sheet={f7Sheet} />
@@ -81,8 +81,6 @@ import Stepper from './components/stepper.js';
81
81
  import Subnavbar from './components/subnavbar.js';
82
82
  import SwipeoutActions from './components/swipeout-actions.js';
83
83
  import SwipeoutButton from './components/swipeout-button.js';
84
- import SwiperSlide from './components/swiper-slide.js';
85
- import Swiper from './components/swiper.js';
86
84
  import Tab from './components/tab.js';
87
85
  import Tabs from './components/tabs.js';
88
86
  import TextEditor from './components/text-editor.js';
@@ -124,6 +122,6 @@ interface app {
124
122
 
125
123
  declare const app: app;
126
124
 
127
- export { AccordionContent, AccordionItem, AccordionToggle, Accordion, ActionsButton, ActionsGroup, ActionsLabel, Actions, App, AreaChart, Badge, BlockFooter, BlockHeader, BlockTitle, Block, BreadcrumbsCollapsed, BreadcrumbsItem, BreadcrumbsSeparator, Breadcrumbs, Button, CardContent, CardFooter, CardHeader, Card, Checkbox, Chip, FabBackdrop, FabButton, FabButtons, Fab, Gauge, Icon, Input, Link, ListButton, ListGroup, ListIndex, ListInput, ListItem, List, LoginScreenTitle, LoginScreen, Message, MessagebarAttachment, MessagebarAttachments, MessagebarSheetImage, MessagebarSheetItem, MessagebarSheet, Messagebar, MessagesTitle, Messages, NavLeft, NavRight, NavTitleLarge, NavTitle, Navbar, PageContent, Page, Panel, PhotoBrowser, PieChart, Popover, Popup, Preloader, Progressbar, Radio, Range, RoutableModals, RouterContextProvider, Searchbar, Segmented, Sheet, SkeletonAvatar, SkeletonBlock, SkeletonImage, SkeletonText, Stepper, Subnavbar, SwipeoutActions, SwipeoutButton, SwiperSlide, Swiper, Tab, Tabs, TextEditor, Toggle, Toolbar, TreeviewItem, Treeview, UseIcon, View, Views }
125
+ export { AccordionContent, AccordionItem, AccordionToggle, Accordion, ActionsButton, ActionsGroup, ActionsLabel, Actions, App, AreaChart, Badge, BlockFooter, BlockHeader, BlockTitle, Block, BreadcrumbsCollapsed, BreadcrumbsItem, BreadcrumbsSeparator, Breadcrumbs, Button, CardContent, CardFooter, CardHeader, Card, Checkbox, Chip, FabBackdrop, FabButton, FabButtons, Fab, Gauge, Icon, Input, Link, ListButton, ListGroup, ListIndex, ListInput, ListItem, List, LoginScreenTitle, LoginScreen, Message, MessagebarAttachment, MessagebarAttachments, MessagebarSheetImage, MessagebarSheetItem, MessagebarSheet, Messagebar, MessagesTitle, Messages, NavLeft, NavRight, NavTitleLarge, NavTitle, Navbar, PageContent, Page, Panel, PhotoBrowser, PieChart, Popover, Popup, Preloader, Progressbar, Radio, Range, RoutableModals, RouterContextProvider, Searchbar, Segmented, Sheet, SkeletonAvatar, SkeletonBlock, SkeletonImage, SkeletonText, Stepper, Subnavbar, SwipeoutActions, SwipeoutButton, Tab, Tabs, TextEditor, Toggle, Toolbar, TreeviewItem, Treeview, UseIcon, View, Views }
128
126
  export { f7, f7ready, theme, useStore, app };
129
127
  export default Framework7Svelte;
@@ -1,13 +1,13 @@
1
1
  /**
2
- * Framework7 Svelte 8.0.0-beta.1
2
+ * Framework7 Svelte 8.0.0-beta.2
3
3
  * Build full featured iOS & Android apps using Framework7 & Svelte
4
4
  * https://framework7.io/svelte/
5
5
  *
6
- * Copyright 2014-2022 Vladimir Kharlampidi
6
+ * Copyright 2014-2023 Vladimir Kharlampidi
7
7
  *
8
8
  * Released under the MIT License
9
9
  *
10
- * Released on: December 16, 2022
10
+ * Released on: February 7, 2023
11
11
  */
12
12
  import Framework7Svelte from './shared/plugin.js';
13
13
  import { f7, f7ready, theme, app } from './shared/f7.js';
@@ -93,8 +93,6 @@ import Stepper from './components/stepper.svelte';
93
93
  import Subnavbar from './components/subnavbar.svelte';
94
94
  import SwipeoutActions from './components/swipeout-actions.svelte';
95
95
  import SwipeoutButton from './components/swipeout-button.svelte';
96
- import SwiperSlide from './components/swiper-slide.svelte';
97
- import Swiper from './components/swiper.svelte';
98
96
  import Tab from './components/tab.svelte';
99
97
  import Tabs from './components/tabs.svelte';
100
98
  import TextEditor from './components/text-editor.svelte';
@@ -106,6 +104,6 @@ import UseIcon from './components/use-icon.svelte';
106
104
  import View from './components/view.svelte';
107
105
  import Views from './components/views.svelte';
108
106
 
109
- export { AccordionContent, AccordionItem, AccordionToggle, Accordion, ActionsButton, ActionsGroup, ActionsLabel, Actions, App, AreaChart, Badge, BlockFooter, BlockHeader, BlockTitle, Block, BreadcrumbsCollapsed, BreadcrumbsItem, BreadcrumbsSeparator, Breadcrumbs, Button, CardContent, CardFooter, CardHeader, Card, Checkbox, Chip, FabBackdrop, FabButton, FabButtons, Fab, Gauge, Icon, Input, Link, ListButton, ListGroup, ListIndex, ListInput, ListItem, List, LoginScreenTitle, LoginScreen, Message, MessagebarAttachment, MessagebarAttachments, MessagebarSheetImage, MessagebarSheetItem, MessagebarSheet, Messagebar, MessagesTitle, Messages, NavLeft, NavRight, NavTitleLarge, NavTitle, Navbar, PageContent, Page, Panel, PhotoBrowser, PieChart, Popover, Popup, Preloader, Progressbar, Radio, Range, RoutableModals, RouterContextProvider, Searchbar, Segmented, Sheet, SkeletonAvatar, SkeletonBlock, SkeletonImage, SkeletonText, Stepper, Subnavbar, SwipeoutActions, SwipeoutButton, SwiperSlide, Swiper, Tab, Tabs, TextEditor, Toggle, Toolbar, TreeviewItem, Treeview, UseIcon, View, Views }
107
+ export { AccordionContent, AccordionItem, AccordionToggle, Accordion, ActionsButton, ActionsGroup, ActionsLabel, Actions, App, AreaChart, Badge, BlockFooter, BlockHeader, BlockTitle, Block, BreadcrumbsCollapsed, BreadcrumbsItem, BreadcrumbsSeparator, Breadcrumbs, Button, CardContent, CardFooter, CardHeader, Card, Checkbox, Chip, FabBackdrop, FabButton, FabButtons, Fab, Gauge, Icon, Input, Link, ListButton, ListGroup, ListIndex, ListInput, ListItem, List, LoginScreenTitle, LoginScreen, Message, MessagebarAttachment, MessagebarAttachments, MessagebarSheetImage, MessagebarSheetItem, MessagebarSheet, Messagebar, MessagesTitle, Messages, NavLeft, NavRight, NavTitleLarge, NavTitle, Navbar, PageContent, Page, Panel, PhotoBrowser, PieChart, Popover, Popup, Preloader, Progressbar, Radio, Range, RoutableModals, RouterContextProvider, Searchbar, Segmented, Sheet, SkeletonAvatar, SkeletonBlock, SkeletonImage, SkeletonText, Stepper, Subnavbar, SwipeoutActions, SwipeoutButton, Tab, Tabs, TextEditor, Toggle, Toolbar, TreeviewItem, Treeview, UseIcon, View, Views }
110
108
  export { f7, f7ready, theme, useStore, app };
111
109
  export default Framework7Svelte;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "framework7-svelte",
3
- "version": "8.0.0-beta.1",
3
+ "version": "8.0.0-beta.2",
4
4
  "description": "Build full featured iOS & Android apps using Framework7 & Svelte",
5
5
  "type": "module",
6
6
  "svelte": "./framework7-svelte.js",
@@ -1,17 +0,0 @@
1
- <script>
2
- export let lazy = undefined;
3
- export let zoom = undefined;
4
- </script>
5
-
6
- <swiper-slide {lazy} {...$$restProps}>
7
- {#if zoom}
8
- <div
9
- class="swiper-zoom-container"
10
- data-swiper-zoom={typeof zoom === 'number' ? zoom : undefined}
11
- >
12
- <slot />
13
- </div>
14
- {:else}
15
- <slot />
16
- {/if}
17
- </swiper-slide>
@@ -1,17 +0,0 @@
1
- <script>
2
- export let lazy = undefined;
3
- export let zoom = undefined;
4
- </script>
5
-
6
- <swiper-slide {lazy} {...$$restProps}>
7
- {#if zoom}
8
- <div
9
- class="swiper-zoom-container"
10
- data-swiper-zoom={typeof zoom === 'number' ? zoom : undefined}
11
- >
12
- <slot />
13
- </div>
14
- {:else}
15
- <slot />
16
- {/if}
17
- </swiper-slide>
@@ -1,52 +0,0 @@
1
- <script>
2
- import { onMount } from 'svelte';
3
-
4
- let swiperEl = null;
5
- let containerClasses = '';
6
- let className = undefined;
7
- export { className as class };
8
-
9
- const getData = (restProps) => {
10
- const props = {};
11
- const attrs = {};
12
- const events = {};
13
- Object.keys(restProps).forEach((prop) => {
14
- if (prop === 'class' || prop === 'id' || prop.includes('data-')) {
15
- attrs[prop] = restProps[prop];
16
- } else if (prop.indexOf('on') === 0) {
17
- const eventName = prop.substring(2);
18
- eventName[0] = eventName[0].toLowerCase();
19
- events[eventName] = restProps[prop];
20
- } else {
21
- props[prop] = restProps[prop];
22
- }
23
- });
24
- props.on = {
25
- ...(props.on || {}),
26
- ...events,
27
- // eslint-disable-next-line
28
- _containerClasses(_swiper, classes) {
29
- containerClasses = classes;
30
- },
31
- };
32
- return { props, attrs };
33
- };
34
-
35
- $: data = getData($$restProps);
36
-
37
- onMount(() => {
38
- Object.assign(swiperEl, data.props);
39
- swiperEl.initialize();
40
- });
41
- </script>
42
-
43
- <swiper-container
44
- class={[containerClasses, className || ''].filter((c) => !!c).join(' ')}
45
- bind:this={swiperEl}
46
- {...data.attrs}
47
- init="false"
48
- >
49
- <slot name="container-start" slot="container-start" />
50
- <slot />
51
- <slot name="container-end" slot="container-end" />
52
- </swiper-container>
@@ -1,52 +0,0 @@
1
- <script>
2
- import { onMount } from 'svelte';
3
-
4
- let swiperEl = null;
5
- let containerClasses = '';
6
- let className = undefined;
7
- export { className as class };
8
-
9
- const getData = (restProps) => {
10
- const props = {};
11
- const attrs = {};
12
- const events = {};
13
- Object.keys(restProps).forEach((prop) => {
14
- if (prop === 'class' || prop === 'id' || prop.includes('data-')) {
15
- attrs[prop] = restProps[prop];
16
- } else if (prop.indexOf('on') === 0) {
17
- const eventName = prop.substring(2);
18
- eventName[0] = eventName[0].toLowerCase();
19
- events[eventName] = restProps[prop];
20
- } else {
21
- props[prop] = restProps[prop];
22
- }
23
- });
24
- props.on = {
25
- ...(props.on || {}),
26
- ...events,
27
- // eslint-disable-next-line
28
- _containerClasses(_swiper, classes) {
29
- containerClasses = classes;
30
- },
31
- };
32
- return { props, attrs };
33
- };
34
-
35
- $: data = getData($$restProps);
36
-
37
- onMount(() => {
38
- Object.assign(swiperEl, data.props);
39
- swiperEl.initialize();
40
- });
41
- </script>
42
-
43
- <swiper-container
44
- class={[containerClasses, className || ''].filter((c) => !!c).join(' ')}
45
- bind:this={swiperEl}
46
- {...data.attrs}
47
- init="false"
48
- >
49
- <slot name="container-start" slot="container-start" />
50
- <slot />
51
- <slot name="container-end" slot="container-end" />
52
- </swiper-container>