@nanoporetech-digital/components 8.0.0-alpha.3 → 8.0.0-alpha.5

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.
Files changed (169) hide show
  1. package/dist/cjs/{fade-CqKYrZYq.js → fade-B3XUTiE5.js} +1 -1
  2. package/dist/cjs/{fullscreen-D-fHJ_IJ.js → fullscreen-BQdjQr7K.js} +1 -1
  3. package/dist/cjs/index-IR1lkhwT.js +2 -2
  4. package/dist/cjs/{lazyload-DK1ITMfR.js → lazyload-B8HnSPAU.js} +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/{local-logged-in-C8Qr7Q7o.js → local-logged-in-CX0THX6r.js} +1 -1
  7. package/dist/cjs/{local-logged-out-fCQ614s8.js → local-logged-out-C-cPz-8v.js} +1 -1
  8. package/dist/cjs/nano-algolia.cjs.entry.js +1 -1
  9. package/dist/cjs/nano-avatar_5.cjs.entry.js +1 -1
  10. package/dist/cjs/nano-breadcrumb.cjs.entry.js +1 -1
  11. package/dist/cjs/nano-collapsible-comparison.cjs.entry.js +1 -1
  12. package/dist/cjs/nano-components.cjs.js +1 -1
  13. package/dist/cjs/{nano-data-table-C_KLyFMO.js → nano-data-table-BiTzaPlZ.js} +5 -5
  14. package/dist/cjs/nano-data-table.cjs.entry.js +1 -1
  15. package/dist/cjs/nano-datalist_3.cjs.entry.js +4 -4
  16. package/dist/cjs/nano-date-picker_2.cjs.entry.js +1 -1
  17. package/dist/cjs/nano-global-nav.cjs.entry.js +11 -11
  18. package/dist/cjs/nano-grid_2.cjs.entry.js +3 -3
  19. package/dist/cjs/nano-icon_3.cjs.entry.js +2 -2
  20. package/dist/cjs/{nano-resize-observe_2.cjs.entry.js → nano-resize-observe.cjs.entry.js} +0 -18
  21. package/dist/cjs/nano-slide.cjs.entry.js +1 -1
  22. package/dist/cjs/{nano-slides-BhpvytBB.js → nano-slides-BHsOLxRZ.js} +8 -8
  23. package/dist/cjs/nano-slides.cjs.entry.js +1 -1
  24. package/dist/cjs/nano-sortable.cjs.entry.js +1 -1
  25. package/dist/cjs/nano-spinner.cjs.entry.js +1 -12
  26. package/dist/cjs/nano-sticker.cjs.entry.js +2 -2
  27. package/dist/cjs/nano-tab-content.cjs.entry.js +2 -2
  28. package/dist/cjs/nano-tab.cjs.entry.js +2 -2
  29. package/dist/cjs/nano-table.cjs.entry.js +2 -2
  30. package/dist/cjs/{page-dots-DeSuT5bE.js → page-dots-DJrv0V9e.js} +1 -1
  31. package/dist/cjs/{table.worker-C5ofbi7M.js → table.worker-DjOtTDwg.js} +1 -1
  32. package/dist/collection/collection-manifest.json +0 -1
  33. package/dist/collection/components/algolia/algolia.js +1 -1
  34. package/dist/collection/components/breadcrumb/breadcrumb.css +2 -125
  35. package/dist/collection/components/breadcrumb/breadcrumb.js +3 -2
  36. package/dist/collection/components/collapsible-comparison/collapsible-comparison.js +4 -3
  37. package/dist/collection/components/data-table/table.css +2 -7
  38. package/dist/collection/components/data-table/table.js +3 -3
  39. package/dist/collection/components/global-nav/assets/local-logged-in.json +1 -1
  40. package/dist/collection/components/global-nav/assets/local-logged-out.json +1 -1
  41. package/dist/collection/components/global-nav/global-nav.js +12 -11
  42. package/dist/collection/components/img/img.js +3 -3
  43. package/dist/collection/components/input/input.css +1 -1
  44. package/dist/collection/components/option/option.js +6 -3
  45. package/dist/collection/components/select/select.css +1 -1
  46. package/dist/collection/components/slides/slide.js +9 -1
  47. package/dist/collection/components/slides/slides.css +16 -10
  48. package/dist/collection/components/slides/slides.js +3 -3
  49. package/dist/collection/components/sortable/sortable.js +1 -1
  50. package/dist/collection/components/spinner/spinner.css +45 -138
  51. package/dist/collection/components/spinner/spinner.js +3 -43
  52. package/dist/collection/components/sticker/sticker.js +2 -2
  53. package/dist/collection/components/table/table.js +2 -2
  54. package/dist/collection/components/tabs/tab-content.js +2 -2
  55. package/dist/collection/components/tabs/tab.js +2 -2
  56. package/dist/collection/components/tag/tag.js +2 -2
  57. package/dist/collection/components/tooltip/tooltip.js +2 -2
  58. package/dist/components/algolia.js +1 -1
  59. package/dist/components/img.js +5 -11
  60. package/dist/components/input.js +1 -1
  61. package/dist/components/local-logged-in.js +1 -1
  62. package/dist/components/local-logged-out.js +1 -1
  63. package/dist/components/nano-breadcrumb.js +4 -3
  64. package/dist/components/nano-collapsible-comparison.js +4 -3
  65. package/dist/components/nano-data-table.js +14 -20
  66. package/dist/components/nano-global-nav.js +12 -11
  67. package/dist/components/nano-hero.js +6 -12
  68. package/dist/components/nano-slide.js +1 -1
  69. package/dist/components/nano-sortable.js +1 -1
  70. package/dist/components/nano-tab-content.js +2 -2
  71. package/dist/components/nano-tab.js +2 -2
  72. package/dist/components/nano-table.js +2 -2
  73. package/dist/components/option.js +2 -2
  74. package/dist/components/select.js +1 -1
  75. package/dist/components/slides.js +4 -4
  76. package/dist/components/spinner.js +4 -18
  77. package/dist/components/sticker.js +2 -2
  78. package/dist/components/tag.js +2 -2
  79. package/dist/components/tooltip.js +2 -2
  80. package/dist/esm/{fade-CnaZvOTY.js → fade-C74M8NQp.js} +1 -1
  81. package/dist/esm/{fullscreen-BIFliVxG.js → fullscreen-CmJdWdrB.js} +1 -1
  82. package/dist/esm/index-DXvE-U_j.js +2 -2
  83. package/dist/esm/{lazyload-D_Ju_KaC.js → lazyload-BPqjfQB3.js} +1 -1
  84. package/dist/esm/loader.js +1 -1
  85. package/dist/esm/{local-logged-in-DNQyU0ot.js → local-logged-in-Bycp-mPl.js} +1 -1
  86. package/dist/esm/{local-logged-out-CD2oXHpq.js → local-logged-out-BhOAka-2.js} +1 -1
  87. package/dist/esm/nano-algolia.entry.js +1 -1
  88. package/dist/esm/nano-avatar_5.entry.js +1 -1
  89. package/dist/esm/nano-breadcrumb.entry.js +1 -1
  90. package/dist/esm/nano-collapsible-comparison.entry.js +1 -1
  91. package/dist/esm/nano-components.js +1 -1
  92. package/dist/esm/{nano-data-table-CJbVKIuu.js → nano-data-table-BPQhfLyq.js} +5 -5
  93. package/dist/esm/nano-data-table.entry.js +1 -1
  94. package/dist/esm/nano-datalist_3.entry.js +4 -4
  95. package/dist/esm/nano-date-picker_2.entry.js +1 -1
  96. package/dist/esm/nano-global-nav.entry.js +11 -11
  97. package/dist/esm/nano-grid_2.entry.js +3 -3
  98. package/dist/esm/nano-icon_3.entry.js +2 -2
  99. package/dist/esm/{nano-resize-observe_2.entry.js → nano-resize-observe.entry.js} +1 -18
  100. package/dist/esm/nano-slide.entry.js +1 -1
  101. package/dist/esm/{nano-slides-B9KjZVqC.js → nano-slides-Bv0u7kg0.js} +8 -8
  102. package/dist/esm/nano-slides.entry.js +1 -1
  103. package/dist/esm/nano-sortable.entry.js +1 -1
  104. package/dist/esm/nano-spinner.entry.js +2 -13
  105. package/dist/esm/nano-sticker.entry.js +2 -2
  106. package/dist/esm/nano-tab-content.entry.js +2 -2
  107. package/dist/esm/nano-tab.entry.js +2 -2
  108. package/dist/esm/nano-table.entry.js +2 -2
  109. package/dist/esm/{page-dots-BmS6HUrx.js → page-dots-e1Gyk8V7.js} +1 -1
  110. package/dist/esm/{table.worker-CsTdjWrS.js → table.worker-DlLhvqK5.js} +1 -1
  111. package/dist/nano-assets/hash.txt +1 -1
  112. package/dist/nano-assets/local-logged-in.json +1 -1
  113. package/dist/nano-assets/local-logged-out.json +1 -1
  114. package/dist/nano-components/assets/local-logged-in.json +1 -1
  115. package/dist/nano-components/assets/local-logged-out.json +1 -1
  116. package/dist/nano-components/{fade-CnaZvOTY.js → fade-C74M8NQp.js} +1 -1
  117. package/dist/nano-components/{fullscreen-BIFliVxG.js → fullscreen-CmJdWdrB.js} +1 -1
  118. package/dist/nano-components/{lazyload-D_Ju_KaC.js → lazyload-BPqjfQB3.js} +1 -1
  119. package/dist/nano-components/{local-logged-in-DNQyU0ot.js → local-logged-in-Bycp-mPl.js} +1 -1
  120. package/dist/nano-components/{local-logged-out-CD2oXHpq.js → local-logged-out-BhOAka-2.js} +1 -1
  121. package/dist/nano-components/nano-algolia.entry.js +1 -1
  122. package/dist/nano-components/nano-avatar_5.entry.js +1 -1
  123. package/dist/nano-components/nano-breadcrumb.entry.js +1 -1
  124. package/dist/nano-components/nano-collapsible-comparison.entry.js +1 -1
  125. package/dist/nano-components/nano-components.css +126 -0
  126. package/dist/nano-components/nano-components.esm.js +1 -1
  127. package/dist/nano-components/{nano-data-table-CJbVKIuu.js → nano-data-table-BPQhfLyq.js} +1 -1
  128. package/dist/nano-components/nano-data-table.entry.js +1 -1
  129. package/dist/nano-components/nano-datalist_3.entry.js +1 -1
  130. package/dist/nano-components/nano-date-picker_2.entry.js +1 -1
  131. package/dist/nano-components/nano-global-nav.entry.js +1 -1
  132. package/dist/nano-components/nano-grid_2.entry.js +1 -1
  133. package/dist/nano-components/nano-icon_3.entry.js +1 -1
  134. package/dist/nano-components/nano-resize-observe.entry.js +4 -0
  135. package/dist/nano-components/nano-slide.entry.js +1 -1
  136. package/dist/nano-components/{nano-slides-B9KjZVqC.js → nano-slides-Bv0u7kg0.js} +3 -3
  137. package/dist/nano-components/nano-slides.entry.js +1 -1
  138. package/dist/nano-components/nano-sortable.entry.js +1 -1
  139. package/dist/nano-components/nano-spinner.entry.js +1 -1
  140. package/dist/nano-components/nano-sticker.entry.js +1 -1
  141. package/dist/nano-components/nano-tab-content.entry.js +1 -1
  142. package/dist/nano-components/nano-tab.entry.js +1 -1
  143. package/dist/nano-components/nano-table.entry.js +1 -1
  144. package/dist/nano-components/{page-dots-BmS6HUrx.js → page-dots-e1Gyk8V7.js} +1 -1
  145. package/dist/nano-components/{table.worker-CsTdjWrS.js → table.worker-DlLhvqK5.js} +1 -1
  146. package/dist/style/components.css +1 -1
  147. package/dist/style/components.css.map +1 -1
  148. package/dist/style/core.css +1 -1
  149. package/dist/style/core.css.map +1 -1
  150. package/dist/style/nano.css +1 -1
  151. package/dist/style/nano.css.map +1 -1
  152. package/dist/types/components/collapsible-comparison/collapsible-comparison.d.ts +1 -1
  153. package/dist/types/components/date-picker/date-picker-interface.d.ts +19 -0
  154. package/dist/types/components/option/option.d.ts +4 -1
  155. package/dist/types/components/slides/slide.d.ts +8 -0
  156. package/dist/types/components/spinner/spinner.d.ts +3 -7
  157. package/dist/types/components.d.ts +23 -44
  158. package/docs-json.json +43 -133
  159. package/docs-vscode.json +2 -27
  160. package/hydrate/index.js +57 -160
  161. package/hydrate/index.mjs +57 -160
  162. package/package.json +2 -2
  163. package/dist/collection/components/skeleton/skeleton.css +0 -83
  164. package/dist/collection/components/skeleton/skeleton.js +0 -57
  165. package/dist/components/nano-skeleton.d.ts +0 -11
  166. package/dist/components/nano-skeleton.js +0 -9
  167. package/dist/components/skeleton.js +0 -41
  168. package/dist/nano-components/nano-resize-observe_2.entry.js +0 -4
  169. package/dist/types/components/skeleton/skeleton.d.ts +0 -12
@@ -1,7 +1,10 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import type { OptionInterface } from './option-interface';
3
3
  /**
4
- * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
4
+ * Selectable items for use within [select](/components/select) and [datalist](/components/datalist).
5
+ *
6
+ * @version 2.0.0
7
+ * @status stable
5
8
  *
6
9
  * @slot - main label. Defaults to `label` or `value` prop
7
10
  * @slot checked-icon - icon to indicated checked / selected state. Defaults to fontawesome light/check
@@ -1,4 +1,12 @@
1
1
  import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
2
+ /**
3
+ * An item to display within [slides](/components/slides).
4
+ *
5
+ * @version 1.0.0
6
+ * @status stable
7
+ *
8
+ * @slot - main content of the slide
9
+ */
2
10
  export declare class Slide implements ComponentInterface {
3
11
  /**
4
12
  * Fired when the slide has loaded.
@@ -4,16 +4,12 @@ import { ComponentInterface } from '../../stencil-public-runtime';
4
4
  *
5
5
  * @version 1.0.0
6
6
  * @status stable
7
+ * @type CSS Only
7
8
  *
8
- * @slot - Used for loading messages
9
+ * @slot - Used for loading messages that should scale with current spinner / font size.
10
+ * @slot label - Used for loading messages that should not scale with spinner / font size.
9
11
  */
10
12
  export declare class Spinner implements ComponentInterface {
11
- el: HTMLNanoSpinnerElement;
12
- hasText: boolean;
13
- /** The type of spinner animation */
14
- type: 'dna' | 'circle';
15
13
  /** Displays absolutely with an overlay */
16
14
  overlay: boolean;
17
- componentWillLoad(): void;
18
- render(): any;
19
15
  }
@@ -2360,7 +2360,9 @@ export namespace Components {
2360
2360
  "target": '_self' | '_blank' | '_parent' | '_top';
2361
2361
  }
2362
2362
  /**
2363
- * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
2363
+ * Selectable items for use within [select](/components/select) and [datalist](/components/datalist).
2364
+ * @version 2.0.0
2365
+ * @status stable
2364
2366
  */
2365
2367
  interface NanoOption {
2366
2368
  /**
@@ -2701,17 +2703,10 @@ export namespace Components {
2701
2703
  "valueTagTemplate": (option: OptionInterface, index: number) => string;
2702
2704
  }
2703
2705
  /**
2704
- * Skeletons are used to show where content will eventually be drawn.
2706
+ * An item to display within [slides](/components/slides).
2705
2707
  * @version 1.0.0
2706
2708
  * @status stable
2707
2709
  */
2708
- interface NanoSkeleton {
2709
- /**
2710
- * When `true`, the skeleton will animate.
2711
- * @default true
2712
- */
2713
- "animated": boolean;
2714
- }
2715
2710
  interface NanoSlide {
2716
2711
  /**
2717
2712
  * Used to to inform the parent slides components of readiness. This will automatically be set to true when the slide has loaded but can be set and updated manually.
@@ -2949,6 +2944,7 @@ export namespace Components {
2949
2944
  * Spinners are used to show the progress of an indeterminate operation.
2950
2945
  * @version 1.0.0
2951
2946
  * @status stable
2947
+ * @type CSS Only
2952
2948
  */
2953
2949
  interface NanoSpinner {
2954
2950
  /**
@@ -2956,11 +2952,6 @@ export namespace Components {
2956
2952
  * @default false
2957
2953
  */
2958
2954
  "overlay": boolean;
2959
- /**
2960
- * The type of spinner animation
2961
- * @default 'circle'
2962
- */
2963
- "type": 'dna' | 'circle';
2964
2955
  }
2965
2956
  /**
2966
2957
  * Split panes display two adjacent panels, allowing the user to reposition them.
@@ -4361,7 +4352,9 @@ declare global {
4361
4352
  "nanoSelect": HTMLNanoOptionElement;
4362
4353
  }
4363
4354
  /**
4364
- * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
4355
+ * Selectable items for use within [select](/components/select) and [datalist](/components/datalist).
4356
+ * @version 2.0.0
4357
+ * @status stable
4365
4358
  */
4366
4359
  interface HTMLNanoOptionElement extends Components.NanoOption, HTMLStencilElement {
4367
4360
  addEventListener<K extends keyof HTMLNanoOptionElementEventMap>(type: K, listener: (this: HTMLNanoOptionElement, ev: NanoOptionCustomEvent<HTMLNanoOptionElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -4490,20 +4483,14 @@ declare global {
4490
4483
  prototype: HTMLNanoSelectElement;
4491
4484
  new (): HTMLNanoSelectElement;
4492
4485
  };
4486
+ interface HTMLNanoSlideElementEventMap {
4487
+ "nanoSlideReady": void;
4488
+ }
4493
4489
  /**
4494
- * Skeletons are used to show where content will eventually be drawn.
4490
+ * An item to display within [slides](/components/slides).
4495
4491
  * @version 1.0.0
4496
4492
  * @status stable
4497
4493
  */
4498
- interface HTMLNanoSkeletonElement extends Components.NanoSkeleton, HTMLStencilElement {
4499
- }
4500
- var HTMLNanoSkeletonElement: {
4501
- prototype: HTMLNanoSkeletonElement;
4502
- new (): HTMLNanoSkeletonElement;
4503
- };
4504
- interface HTMLNanoSlideElementEventMap {
4505
- "nanoSlideReady": void;
4506
- }
4507
4494
  interface HTMLNanoSlideElement extends Components.NanoSlide, HTMLStencilElement {
4508
4495
  addEventListener<K extends keyof HTMLNanoSlideElementEventMap>(type: K, listener: (this: HTMLNanoSlideElement, ev: NanoSlideCustomEvent<HTMLNanoSlideElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
4509
4496
  addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
@@ -4582,6 +4569,7 @@ declare global {
4582
4569
  * Spinners are used to show the progress of an indeterminate operation.
4583
4570
  * @version 1.0.0
4584
4571
  * @status stable
4572
+ * @type CSS Only
4585
4573
  */
4586
4574
  interface HTMLNanoSpinnerElement extends Components.NanoSpinner, HTMLStencilElement {
4587
4575
  }
@@ -4806,7 +4794,6 @@ declare global {
4806
4794
  "nano-rating": HTMLNanoRatingElement;
4807
4795
  "nano-resize-observe": HTMLNanoResizeObserveElement;
4808
4796
  "nano-select": HTMLNanoSelectElement;
4809
- "nano-skeleton": HTMLNanoSkeletonElement;
4810
4797
  "nano-slide": HTMLNanoSlideElement;
4811
4798
  "nano-slides": HTMLNanoSlidesElement;
4812
4799
  "nano-sortable": HTMLNanoSortableElement;
@@ -7227,7 +7214,9 @@ declare namespace LocalJSX {
7227
7214
  "target"?: '_self' | '_blank' | '_parent' | '_top';
7228
7215
  }
7229
7216
  /**
7230
- * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
7217
+ * Selectable items for use within [select](/components/select) and [datalist](/components/datalist).
7218
+ * @version 2.0.0
7219
+ * @status stable
7231
7220
  */
7232
7221
  interface NanoOption {
7233
7222
  /**
@@ -7610,17 +7599,10 @@ declare namespace LocalJSX {
7610
7599
  "valueTagTemplate"?: (option: OptionInterface, index: number) => string;
7611
7600
  }
7612
7601
  /**
7613
- * Skeletons are used to show where content will eventually be drawn.
7602
+ * An item to display within [slides](/components/slides).
7614
7603
  * @version 1.0.0
7615
7604
  * @status stable
7616
7605
  */
7617
- interface NanoSkeleton {
7618
- /**
7619
- * When `true`, the skeleton will animate.
7620
- * @default true
7621
- */
7622
- "animated"?: boolean;
7623
- }
7624
7606
  interface NanoSlide {
7625
7607
  /**
7626
7608
  * Fired when the slide has loaded.
@@ -7849,6 +7831,7 @@ declare namespace LocalJSX {
7849
7831
  * Spinners are used to show the progress of an indeterminate operation.
7850
7832
  * @version 1.0.0
7851
7833
  * @status stable
7834
+ * @type CSS Only
7852
7835
  */
7853
7836
  interface NanoSpinner {
7854
7837
  /**
@@ -7856,11 +7839,6 @@ declare namespace LocalJSX {
7856
7839
  * @default false
7857
7840
  */
7858
7841
  "overlay"?: boolean;
7859
- /**
7860
- * The type of spinner animation
7861
- * @default 'circle'
7862
- */
7863
- "type"?: 'dna' | 'circle';
7864
7842
  }
7865
7843
  /**
7866
7844
  * Split panes display two adjacent panels, allowing the user to reposition them.
@@ -8257,7 +8235,6 @@ declare namespace LocalJSX {
8257
8235
  "nano-rating": NanoRating;
8258
8236
  "nano-resize-observe": NanoResizeObserve;
8259
8237
  "nano-select": NanoSelect;
8260
- "nano-skeleton": NanoSkeleton;
8261
8238
  "nano-slide": NanoSlide;
8262
8239
  "nano-slides": NanoSlides;
8263
8240
  "nano-sortable": NanoSortable;
@@ -8556,7 +8533,9 @@ declare module "@stencil/core" {
8556
8533
  */
8557
8534
  "nano-nav-item": LocalJSX.NanoNavItem & JSXBase.HTMLAttributes<HTMLNanoNavItemElement>;
8558
8535
  /**
8559
- * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
8536
+ * Selectable items for use within [select](/components/select) and [datalist](/components/datalist).
8537
+ * @version 2.0.0
8538
+ * @status stable
8560
8539
  */
8561
8540
  "nano-option": LocalJSX.NanoOption & JSXBase.HTMLAttributes<HTMLNanoOptionElement>;
8562
8541
  /**
@@ -8587,11 +8566,10 @@ declare module "@stencil/core" {
8587
8566
  */
8588
8567
  "nano-select": LocalJSX.NanoSelect & JSXBase.HTMLAttributes<HTMLNanoSelectElement>;
8589
8568
  /**
8590
- * Skeletons are used to show where content will eventually be drawn.
8569
+ * An item to display within [slides](/components/slides).
8591
8570
  * @version 1.0.0
8592
8571
  * @status stable
8593
8572
  */
8594
- "nano-skeleton": LocalJSX.NanoSkeleton & JSXBase.HTMLAttributes<HTMLNanoSkeletonElement>;
8595
8573
  "nano-slide": LocalJSX.NanoSlide & JSXBase.HTMLAttributes<HTMLNanoSlideElement>;
8596
8574
  /**
8597
8575
  * A toolbox for creating carousel or slide-show widgets, allowing users to navigate through a collection of items one at a time.
@@ -8609,6 +8587,7 @@ declare module "@stencil/core" {
8609
8587
  * Spinners are used to show the progress of an indeterminate operation.
8610
8588
  * @version 1.0.0
8611
8589
  * @status stable
8590
+ * @type CSS Only
8612
8591
  */
8613
8592
  "nano-spinner": LocalJSX.NanoSpinner & JSXBase.HTMLAttributes<HTMLNanoSpinnerElement>;
8614
8593
  /**
package/docs-json.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-06-25T22:41:44",
2
+ "timestamp": "2025-06-27T14:28:01",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.35.1-dev.1750682262.1ce9541",
@@ -6551,7 +6551,6 @@
6551
6551
  "nano-masked-overflow",
6552
6552
  "nano-resize-observe",
6553
6553
  "nano-progress-bar",
6554
- "nano-skeleton",
6555
6554
  "nano-spinner",
6556
6555
  "nano-icon",
6557
6556
  "nano-tooltip"
@@ -6561,7 +6560,6 @@
6561
6560
  "nano-masked-overflow",
6562
6561
  "nano-resize-observe",
6563
6562
  "nano-progress-bar",
6564
- "nano-skeleton",
6565
6563
  "nano-spinner",
6566
6564
  "nano-icon",
6567
6565
  "nano-tooltip"
@@ -14238,7 +14236,6 @@
14238
14236
  "nano-img"
14239
14237
  ],
14240
14238
  "nano-img": [
14241
- "nano-skeleton",
14242
14239
  "nano-resize-observe"
14243
14240
  ]
14244
14241
  }
@@ -15450,12 +15447,10 @@
15450
15447
  "nano-hero"
15451
15448
  ],
15452
15449
  "dependencies": [
15453
- "nano-skeleton",
15454
15450
  "nano-resize-observe"
15455
15451
  ],
15456
15452
  "dependencyGraph": {
15457
15453
  "nano-img": [
15458
- "nano-skeleton",
15459
15454
  "nano-resize-observe"
15460
15455
  ],
15461
15456
  "nano-hero": [
@@ -19355,8 +19350,16 @@
19355
19350
  "encapsulation": "shadow",
19356
19351
  "tag": "nano-option",
19357
19352
  "readme": "# nano-option\n\n\n",
19358
- "docs": "Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)",
19353
+ "docs": "Selectable items for use within [select](/components/select) and [datalist](/components/datalist).",
19359
19354
  "docsTags": [
19355
+ {
19356
+ "name": "version",
19357
+ "text": "2.0.0"
19358
+ },
19359
+ {
19360
+ "name": "status",
19361
+ "text": "stable"
19362
+ },
19360
19363
  {
19361
19364
  "name": "slot",
19362
19365
  "text": "- main label. Defaults to `label` or `value` prop"
@@ -22231,11 +22234,11 @@
22231
22234
  }
22232
22235
  },
22233
22236
  {
22234
- "filePath": "src/components/skeleton/skeleton.tsx",
22237
+ "filePath": "src/components/slides/slide.tsx",
22235
22238
  "encapsulation": "shadow",
22236
- "tag": "nano-skeleton",
22237
- "readme": "# nano-skeleton\n\n\n",
22238
- "docs": "Skeletons are used to show where content will eventually be drawn.",
22239
+ "tag": "nano-slide",
22240
+ "readme": "# ion-slides\n\nThe Slides component is a multi-section container. Each section can be swiped\nor dragged between. It contains any number of [Slide](../slide) components.\n\n\nAdopted from Swiper.js:\nThe most modern mobile touch slider and framework with hardware accelerated transitions.\n\nhttp://www.idangero.us/swiper/\n\nCopyright 2016, Vladimir Kharlampidi\nThe iDangero.us\nhttp://www.idangero.us/\n\nLicensed under MIT\n\n## Custom Animations\n\nBy default, Ionic slides use the built-in `slide` animation effect. Custom animations can be provided via the `options` property. Examples of other animations can be found below.\n\n\n### Coverflow\n\n```typescript\nconst slideOpts = {\n slidesPerView: 3,\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n modifier: 1,\n slideShadows: true,\n },\n on: {\n beforeInit() {\n const swiper = this;\n\n swiper.classNames.push(`${swiper.params.containerModifierClass}coverflow`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n setTranslate() {\n const swiper = this;\n const {\n width: swiperWidth, height: swiperHeight, slides, $wrapperEl, slidesSizesGrid, $\n } = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform$$1 = swiper.translate;\n const center = isHorizontal ? -transform$$1 + (swiperWidth / 2) : -transform$$1 + (swiperHeight / 2);\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth;\n // Each slide offset from center\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - (slideSize / 2)) / slideSize) * params.modifier;\n\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier;\n // var rotateZ = 0\n let translateZ = -translate * Math.abs(offsetMultiplier);\n\n let translateY = isHorizontal ? 0 : params.stretch * (offsetMultiplier);\n let translateX = isHorizontal ? params.stretch * (offsetMultiplier) : 0;\n\n // Fix for ultra small values\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`;\n\n $slideEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'left' : 'top'}\"></div>`);\n $slideEl.append($shadowBeforeEl);\n }\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'right' : 'bottom'}\"></div>`);\n $slideEl.append($shadowAfterEl);\n }\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = (-offsetMultiplier) > 0 ? -offsetMultiplier : 0;\n }\n }\n\n // Set correct perspective for IE10\n if (swiper.support.pointerEvents || swiper.support.prefixedPointerEvents) {\n const ws = $wrapperEl[0].style;\n ws.perspectiveOrigin = `${center}px 50%`;\n }\n },\n setTransition(duration) {\n const swiper = this;\n swiper.slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n }\n }\n}\n```\n\n### Cube\n\n```typescript\nconst slideOpts = {\n grabCursor: true,\n cubeEffect: {\n shadow: true,\n slideShadows: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n on: {\n beforeInit: function() {\n const swiper = this;\n swiper.classNames.push(`${swiper.params.containerModifierClass}cube`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n };\n\n this.params = Object.assign(this.params, overwriteParams);\n this.originalParams = Object.assign(this.originalParams, overwriteParams);\n },\n setTranslate: function() {\n const swiper = this;\n const {\n $el, $wrapperEl, slides, width: swiperWidth, height: swiperHeight, rtlTranslate: rtl, size: swiperSize,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = swiper.$('<div class=\"swiper-cube-shadow\"></div>');\n $wrapperEl.append($cubeShadowEl);\n }\n $cubeShadowEl.css({ height: `${swiperWidth}px` });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = swiper.$('<div class=\"swiper-cube-shadow\"></div>');\n $el.append($cubeShadowEl);\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + (round * 4 * swiperSize);\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = (3 * swiperSize) + (swiperSize * 4 * round);\n }\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform$$1 = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${isHorizontal ? slideAngle : 0}deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n if (progress <= 1 && progress > -1) {\n wrapperRotate = (slideIndex * 90) + (progress * 90);\n if (rtl) wrapperRotate = (-slideIndex * 90) - (progress * 90);\n }\n $slideEl.transform(transform$$1);\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'left' : 'top'}\"></div>`);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'right' : 'bottom'}\"></div>`);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-moz-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-ms-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(`translate3d(0px, ${(swiperWidth / 2) + params.shadowOffset}px, ${-swiperWidth / 2}px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`);\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - (Math.floor(Math.abs(wrapperRotate) / 90) * 90);\n const multiplier = 1.5 - (\n (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2)\n + (Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2)\n );\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset$$1 = params.shadowOffset;\n $cubeShadowEl.transform(`scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${(swiperHeight / 2) + offset$$1}px, ${-swiperHeight / 2 / scale2}px) rotateX(-90deg)`);\n }\n }\n\n const zFactor = (swiper.browser.isSafari || swiper.browser.isUiWebView) ? (-swiperSize / 2) : 0;\n $wrapperEl\n .transform(`translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${swiper.isHorizontal() ? -wrapperRotate : 0}deg)`);\n },\n setTransition: function(duration) {\n const swiper = this;\n const { $el, slides } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n },\n }\n}\n```\n\n### Fade\n\n```typescript\nconst slideOpts = {\n on: {\n beforeInit() {\n const swiper = this;\n swiper.classNames.push(`${swiper.params.containerModifierClass}fade`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n swiper.params = Object.assign(swiper.params, overwriteParams);\n swiper.params = Object.assign(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n const { slides } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset$$1 = $slideEl[0].swiperSlideOffset;\n let tx = -offset$$1;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n $slideEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, $wrapperEl } = swiper;\n slides.transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n slides.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n }\n}\n```\n\n### Flip\n\n```typescript\nconst slideOpts = {\n on: {\n beforeInit() {\n const swiper = this;\n swiper.classNames.push(`${swiper.params.containerModifierClass}flip`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n swiper.params = Object.assign(swiper.params, overwriteParams);\n swiper.originalParams = Object.assign(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n const { $, slides, rtlTranslate: rtl } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n const offset$$1 = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = -offset$$1;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (swiper.params.flipEffect.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = swiper.$(`<div class=\"swiper-slide-shadow-${swiper.isHorizontal() ? 'left' : 'top'}\"></div>`);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = swiper.$(`<div class=\"swiper-slide-shadow-${swiper.isHorizontal() ? 'right' : 'bottom'}\"></div>`);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n $slideEl\n .transform(`translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, activeIndex, $wrapperEl } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n // eslint-disable-next-line\n slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n }\n }\n};\n```\n",
22241
+ "docs": "An item to display within [slides](/components/slides).",
22239
22242
  "docsTags": [
22240
22243
  {
22241
22244
  "name": "version",
@@ -22244,83 +22247,12 @@
22244
22247
  {
22245
22248
  "name": "status",
22246
22249
  "text": "stable"
22247
- }
22248
- ],
22249
- "usage": {},
22250
- "props": [
22251
- {
22252
- "name": "animated",
22253
- "type": "boolean",
22254
- "complexType": {
22255
- "original": "boolean",
22256
- "resolved": "boolean",
22257
- "references": {}
22258
- },
22259
- "mutable": false,
22260
- "attr": "animated",
22261
- "reflectToAttr": false,
22262
- "docs": "When `true`, the skeleton will animate.",
22263
- "docsTags": [
22264
- {
22265
- "name": "default",
22266
- "text": "true"
22267
- }
22268
- ],
22269
- "default": "true",
22270
- "values": [
22271
- {
22272
- "type": "boolean"
22273
- }
22274
- ],
22275
- "optional": false,
22276
- "required": false,
22277
- "getter": false,
22278
- "setter": false
22279
- }
22280
- ],
22281
- "methods": [],
22282
- "events": [],
22283
- "listeners": [],
22284
- "styles": [
22285
- {
22286
- "name": "--base-color-rgb",
22287
- "annotation": "prop",
22288
- "docs": "default var(--nano-skeleton-rgb, 228 230 232);"
22289
- },
22290
- {
22291
- "name": "--color",
22292
- "annotation": "prop",
22293
- "docs": "default var(--nano-skeleton-color, rgba(var(--base-color-rgb), 1));"
22294
22250
  },
22295
22251
  {
22296
- "name": "--tint",
22297
- "annotation": "prop",
22298
- "docs": "default var(--nano-skeleton-tint, rgba(var(--base-color-rgb), .3));"
22252
+ "name": "slot",
22253
+ "text": "- main content of the slide"
22299
22254
  }
22300
22255
  ],
22301
- "slots": [],
22302
- "parts": [],
22303
- "dependents": [
22304
- "nano-data-table",
22305
- "nano-img"
22306
- ],
22307
- "dependencies": [],
22308
- "dependencyGraph": {
22309
- "nano-data-table": [
22310
- "nano-skeleton"
22311
- ],
22312
- "nano-img": [
22313
- "nano-skeleton"
22314
- ]
22315
- }
22316
- },
22317
- {
22318
- "filePath": "src/components/slides/slide.tsx",
22319
- "encapsulation": "shadow",
22320
- "tag": "nano-slide",
22321
- "readme": "# ion-slides\n\nThe Slides component is a multi-section container. Each section can be swiped\nor dragged between. It contains any number of [Slide](../slide) components.\n\n\nAdopted from Swiper.js:\nThe most modern mobile touch slider and framework with hardware accelerated transitions.\n\nhttp://www.idangero.us/swiper/\n\nCopyright 2016, Vladimir Kharlampidi\nThe iDangero.us\nhttp://www.idangero.us/\n\nLicensed under MIT\n\n## Custom Animations\n\nBy default, Ionic slides use the built-in `slide` animation effect. Custom animations can be provided via the `options` property. Examples of other animations can be found below.\n\n\n### Coverflow\n\n```typescript\nconst slideOpts = {\n slidesPerView: 3,\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n modifier: 1,\n slideShadows: true,\n },\n on: {\n beforeInit() {\n const swiper = this;\n\n swiper.classNames.push(`${swiper.params.containerModifierClass}coverflow`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n setTranslate() {\n const swiper = this;\n const {\n width: swiperWidth, height: swiperHeight, slides, $wrapperEl, slidesSizesGrid, $\n } = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform$$1 = swiper.translate;\n const center = isHorizontal ? -transform$$1 + (swiperWidth / 2) : -transform$$1 + (swiperHeight / 2);\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth;\n // Each slide offset from center\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - (slideSize / 2)) / slideSize) * params.modifier;\n\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier;\n // var rotateZ = 0\n let translateZ = -translate * Math.abs(offsetMultiplier);\n\n let translateY = isHorizontal ? 0 : params.stretch * (offsetMultiplier);\n let translateX = isHorizontal ? params.stretch * (offsetMultiplier) : 0;\n\n // Fix for ultra small values\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`;\n\n $slideEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'left' : 'top'}\"></div>`);\n $slideEl.append($shadowBeforeEl);\n }\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'right' : 'bottom'}\"></div>`);\n $slideEl.append($shadowAfterEl);\n }\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = (-offsetMultiplier) > 0 ? -offsetMultiplier : 0;\n }\n }\n\n // Set correct perspective for IE10\n if (swiper.support.pointerEvents || swiper.support.prefixedPointerEvents) {\n const ws = $wrapperEl[0].style;\n ws.perspectiveOrigin = `${center}px 50%`;\n }\n },\n setTransition(duration) {\n const swiper = this;\n swiper.slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n }\n }\n}\n```\n\n### Cube\n\n```typescript\nconst slideOpts = {\n grabCursor: true,\n cubeEffect: {\n shadow: true,\n slideShadows: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n on: {\n beforeInit: function() {\n const swiper = this;\n swiper.classNames.push(`${swiper.params.containerModifierClass}cube`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n };\n\n this.params = Object.assign(this.params, overwriteParams);\n this.originalParams = Object.assign(this.originalParams, overwriteParams);\n },\n setTranslate: function() {\n const swiper = this;\n const {\n $el, $wrapperEl, slides, width: swiperWidth, height: swiperHeight, rtlTranslate: rtl, size: swiperSize,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = swiper.$('<div class=\"swiper-cube-shadow\"></div>');\n $wrapperEl.append($cubeShadowEl);\n }\n $cubeShadowEl.css({ height: `${swiperWidth}px` });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = swiper.$('<div class=\"swiper-cube-shadow\"></div>');\n $el.append($cubeShadowEl);\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + (round * 4 * swiperSize);\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = (3 * swiperSize) + (swiperSize * 4 * round);\n }\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform$$1 = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${isHorizontal ? slideAngle : 0}deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n if (progress <= 1 && progress > -1) {\n wrapperRotate = (slideIndex * 90) + (progress * 90);\n if (rtl) wrapperRotate = (-slideIndex * 90) - (progress * 90);\n }\n $slideEl.transform(transform$$1);\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'left' : 'top'}\"></div>`);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = swiper.$(`<div class=\"swiper-slide-shadow-${isHorizontal ? 'right' : 'bottom'}\"></div>`);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-moz-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-ms-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(`translate3d(0px, ${(swiperWidth / 2) + params.shadowOffset}px, ${-swiperWidth / 2}px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`);\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - (Math.floor(Math.abs(wrapperRotate) / 90) * 90);\n const multiplier = 1.5 - (\n (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2)\n + (Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2)\n );\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset$$1 = params.shadowOffset;\n $cubeShadowEl.transform(`scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${(swiperHeight / 2) + offset$$1}px, ${-swiperHeight / 2 / scale2}px) rotateX(-90deg)`);\n }\n }\n\n const zFactor = (swiper.browser.isSafari || swiper.browser.isUiWebView) ? (-swiperSize / 2) : 0;\n $wrapperEl\n .transform(`translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${swiper.isHorizontal() ? -wrapperRotate : 0}deg)`);\n },\n setTransition: function(duration) {\n const swiper = this;\n const { $el, slides } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n },\n }\n}\n```\n\n### Fade\n\n```typescript\nconst slideOpts = {\n on: {\n beforeInit() {\n const swiper = this;\n swiper.classNames.push(`${swiper.params.containerModifierClass}fade`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n swiper.params = Object.assign(swiper.params, overwriteParams);\n swiper.params = Object.assign(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n const { slides } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset$$1 = $slideEl[0].swiperSlideOffset;\n let tx = -offset$$1;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n $slideEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, $wrapperEl } = swiper;\n slides.transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n slides.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n }\n}\n```\n\n### Flip\n\n```typescript\nconst slideOpts = {\n on: {\n beforeInit() {\n const swiper = this;\n swiper.classNames.push(`${swiper.params.containerModifierClass}flip`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n swiper.params = Object.assign(swiper.params, overwriteParams);\n swiper.originalParams = Object.assign(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n const { $, slides, rtlTranslate: rtl } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n const offset$$1 = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = -offset$$1;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (swiper.params.flipEffect.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = swiper.$(`<div class=\"swiper-slide-shadow-${swiper.isHorizontal() ? 'left' : 'top'}\"></div>`);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = swiper.$(`<div class=\"swiper-slide-shadow-${swiper.isHorizontal() ? 'right' : 'bottom'}\"></div>`);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n $slideEl\n .transform(`translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, activeIndex, $wrapperEl } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n // eslint-disable-next-line\n slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n }\n }\n};\n```\n",
22322
- "docs": "The Slides component is a multi-section container. Each section can be swiped\nor dragged between. It contains any number of [Slide](../slide) components.\n\n\nAdopted from Swiper.js:\nThe most modern mobile touch slider and framework with hardware accelerated transitions.\n\nhttp://www.idangero.us/swiper/\n\nCopyright 2016, Vladimir Kharlampidi\nThe iDangero.us\nhttp://www.idangero.us/\n\nLicensed under MIT",
22323
- "docsTags": [],
22324
22256
  "usage": {},
22325
22257
  "props": [
22326
22258
  {
@@ -22372,7 +22304,12 @@
22372
22304
  ],
22373
22305
  "listeners": [],
22374
22306
  "styles": [],
22375
- "slots": [],
22307
+ "slots": [
22308
+ {
22309
+ "name": "",
22310
+ "docs": "main content of the slide"
22311
+ }
22312
+ ],
22376
22313
  "parts": [],
22377
22314
  "dependents": [],
22378
22315
  "dependencies": [],
@@ -24181,7 +24118,7 @@
24181
24118
  },
24182
24119
  {
24183
24120
  "filePath": "src/components/spinner/spinner.tsx",
24184
- "encapsulation": "shadow",
24121
+ "encapsulation": "none",
24185
24122
  "tag": "nano-spinner",
24186
24123
  "readme": "# nano-spinner\n\n\n",
24187
24124
  "docs": "Spinners are used to show the progress of an indeterminate operation.",
@@ -24194,9 +24131,17 @@
24194
24131
  "name": "status",
24195
24132
  "text": "stable"
24196
24133
  },
24134
+ {
24135
+ "name": "type",
24136
+ "text": "CSS Only"
24137
+ },
24138
+ {
24139
+ "name": "slot",
24140
+ "text": "- Used for loading messages that should scale with current spinner / font size."
24141
+ },
24197
24142
  {
24198
24143
  "name": "slot",
24199
- "text": "- Used for loading messages"
24144
+ "text": "label - Used for loading messages that should not scale with spinner / font size."
24200
24145
  }
24201
24146
  ],
24202
24147
  "usage": {},
@@ -24229,76 +24174,41 @@
24229
24174
  "required": false,
24230
24175
  "getter": false,
24231
24176
  "setter": false
24232
- },
24233
- {
24234
- "name": "type",
24235
- "type": "\"circle\" | \"dna\"",
24236
- "complexType": {
24237
- "original": "'dna' | 'circle'",
24238
- "resolved": "\"circle\" | \"dna\"",
24239
- "references": {}
24240
- },
24241
- "mutable": false,
24242
- "attr": "type",
24243
- "reflectToAttr": false,
24244
- "docs": "The type of spinner animation",
24245
- "docsTags": [
24246
- {
24247
- "name": "default",
24248
- "text": "'circle'"
24249
- }
24250
- ],
24251
- "default": "'circle'",
24252
- "values": [
24253
- {
24254
- "value": "circle",
24255
- "type": "string"
24256
- },
24257
- {
24258
- "value": "dna",
24259
- "type": "string"
24260
- }
24261
- ],
24262
- "optional": false,
24263
- "required": false,
24264
- "getter": false,
24265
- "setter": false
24266
24177
  }
24267
24178
  ],
24268
24179
  "methods": [],
24269
24180
  "events": [],
24270
24181
  "listeners": [],
24271
24182
  "styles": [
24272
- {
24273
- "name": "--base-color-rgb",
24274
- "annotation": "prop",
24275
- "docs": "default var(--nano-indicator-rgb, 84 140 175)"
24276
- },
24277
24183
  {
24278
24184
  "name": "--indicator-color",
24279
24185
  "annotation": "prop",
24280
- "docs": "default var(--nano-indicator-color, rgb(var(--base-color-rgb) / 10%));"
24186
+ "docs": "Color of the spinner indicator. Defaults to var(--nano-color-primary-1000)."
24281
24187
  },
24282
24188
  {
24283
24189
  "name": "--overlay-color",
24284
24190
  "annotation": "prop",
24285
- "docs": "var(--nano-layer-overlay-light, rgb(255 255 255 / 70%));"
24191
+ "docs": "Color of the overlay when the spinner has the `overlay` attribute. Defaults to rgb(var(--nano-color-base-rgb-0) / 88%)."
24286
24192
  },
24287
24193
  {
24288
- "name": "--spinner-scale",
24194
+ "name": "--track-color",
24289
24195
  "annotation": "prop",
24290
- "docs": "optional scaling of the spinner. default contextual font-size"
24196
+ "docs": "Color of the spinner track. Defaults to var(--nano-color-neutral-300)."
24291
24197
  },
24292
24198
  {
24293
- "name": "--track-color",
24199
+ "name": "--track-size",
24294
24200
  "annotation": "prop",
24295
- "docs": "default var(--nano-track-color, rgb(var(--base-color-rgb) / 20%));"
24201
+ "docs": "Size of the spinner track. Defaults to .1em."
24296
24202
  }
24297
24203
  ],
24298
24204
  "slots": [
24299
24205
  {
24300
24206
  "name": "",
24301
- "docs": "Used for loading messages"
24207
+ "docs": "Used for loading messages that should scale with current spinner / font size."
24208
+ },
24209
+ {
24210
+ "name": "label",
24211
+ "docs": "Used for loading messages that should not scale with spinner / font size."
24302
24212
  }
24303
24213
  ],
24304
24214
  "parts": [],
package/docs-vscode.json CHANGED
@@ -2890,7 +2890,7 @@
2890
2890
  "name": "nano-option",
2891
2891
  "description": {
2892
2892
  "kind": "markdown",
2893
- "value": "Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)"
2893
+ "value": "Selectable items for use within [select](/components/select) and [datalist](/components/datalist)."
2894
2894
  },
2895
2895
  "attributes": [
2896
2896
  {
@@ -3218,24 +3218,11 @@
3218
3218
  }
3219
3219
  ]
3220
3220
  },
3221
- {
3222
- "name": "nano-skeleton",
3223
- "description": {
3224
- "kind": "markdown",
3225
- "value": "Skeletons are used to show where content will eventually be drawn."
3226
- },
3227
- "attributes": [
3228
- {
3229
- "name": "animated",
3230
- "description": "When `true`, the skeleton will animate."
3231
- }
3232
- ]
3233
- },
3234
3221
  {
3235
3222
  "name": "nano-slide",
3236
3223
  "description": {
3237
3224
  "kind": "markdown",
3238
- "value": "The Slides component is a multi-section container. Each section can be swiped\nor dragged between. It contains any number of [Slide](../slide) components.\n\n\nAdopted from Swiper.js:\nThe most modern mobile touch slider and framework with hardware accelerated transitions.\n\nhttp://www.idangero.us/swiper/\n\nCopyright 2016, Vladimir Kharlampidi\nThe iDangero.us\nhttp://www.idangero.us/\n\nLicensed under MIT"
3225
+ "value": "An item to display within [slides](/components/slides)."
3239
3226
  },
3240
3227
  "attributes": [
3241
3228
  {
@@ -3395,18 +3382,6 @@
3395
3382
  {
3396
3383
  "name": "overlay",
3397
3384
  "description": "Displays absolutely with an overlay"
3398
- },
3399
- {
3400
- "name": "type",
3401
- "description": "The type of spinner animation",
3402
- "values": [
3403
- {
3404
- "name": "circle"
3405
- },
3406
- {
3407
- "name": "dna"
3408
- }
3409
- ]
3410
3385
  }
3411
3386
  ]
3412
3387
  },