@rdlabo/ionic-theme-ios26 1.0.6 → 1.1.0

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 (43) hide show
  1. package/README.md +35 -1
  2. package/dist/css/components/ion-alert.css +1 -1
  3. package/dist/css/components/ion-popover.css +1 -1
  4. package/dist/css/ionic-theme-ios26.css +1 -1
  5. package/dist/index.d.ts +4 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +4 -2
  8. package/dist/popover/animations/ios.enter.d.ts +4 -0
  9. package/dist/popover/animations/ios.enter.d.ts.map +1 -0
  10. package/dist/popover/animations/ios.enter.js +111 -0
  11. package/dist/popover/animations/ios.leave.d.ts +3 -0
  12. package/dist/popover/animations/ios.leave.d.ts.map +1 -0
  13. package/dist/popover/animations/ios.leave.js +60 -0
  14. package/dist/popover/popover-interface.d.ts +38 -0
  15. package/dist/popover/popover-interface.d.ts.map +1 -0
  16. package/dist/popover/popover-interface.js +1 -0
  17. package/dist/popover/utils.d.ts +48 -0
  18. package/dist/popover/utils.d.ts.map +1 -0
  19. package/dist/popover/utils.js +479 -0
  20. package/dist/sheets-of-glass/animations.d.ts +8 -0
  21. package/dist/sheets-of-glass/animations.d.ts.map +1 -0
  22. package/dist/sheets-of-glass/animations.js +97 -0
  23. package/dist/sheets-of-glass/index.d.ts +3 -0
  24. package/dist/sheets-of-glass/index.d.ts.map +1 -0
  25. package/dist/sheets-of-glass/index.js +160 -0
  26. package/dist/sheets-of-glass/interfaces.d.ts +16 -0
  27. package/dist/sheets-of-glass/interfaces.d.ts.map +1 -0
  28. package/dist/sheets-of-glass/interfaces.js +1 -0
  29. package/dist/utils.d.ts +5 -1
  30. package/dist/utils.d.ts.map +1 -1
  31. package/dist/utils.js +26 -11
  32. package/package.json +1 -1
  33. package/src/index.ts +5 -3
  34. package/src/popover/animations/ios.enter.ts +176 -0
  35. package/src/popover/animations/ios.leave.ts +76 -0
  36. package/src/popover/popover-interface.ts +44 -0
  37. package/src/popover/utils.ts +912 -0
  38. package/src/{gestures → sheets-of-glass}/animations.ts +1 -1
  39. package/src/{gestures → sheets-of-glass}/index.ts +1 -1
  40. package/src/styles/components/ion-alert.scss +1 -0
  41. package/src/styles/components/ion-popover.scss +6 -0
  42. package/src/{gestures/utils.ts → utils.ts} +18 -1
  43. /package/src/{gestures → sheets-of-glass}/interfaces.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import { Animation, AnimationKeyFrames } from '@ionic/core/dist/types/utils/animation/animation-interface';
2
2
  import { AnimationPosition, EffectScales } from './interfaces';
3
3
  import { createAnimation, GestureDetail } from '@ionic/core';
4
- import { getStep } from './utils';
4
+ import { getStep } from '../utils';
5
5
 
6
6
  export const getScaleAnimation = (effectElement: Element): Animation => {
7
7
  return createAnimation().addElement(effectElement.shadowRoot!.querySelector<HTMLElement>('[part="native"]')!).easing('ease-out');
@@ -2,7 +2,7 @@ import { AnimationPosition, EffectScales, registeredEffect } from './interfaces'
2
2
  import { createAnimation, createGesture, GestureDetail } from '@ionic/core';
3
3
  import type { Animation } from '@ionic/core/dist/types/utils/animation/animation-interface';
4
4
  import { Gesture } from '@ionic/core/dist/types/utils/gesture';
5
- import { changeSelectedElement, cloneElement, getStep } from './utils';
5
+ import { changeSelectedElement, cloneElement, getStep } from '../utils';
6
6
  import { createMoveAnimation, createPreMoveAnimation, getMoveAnimationKeyframe, getScaleAnimation } from './animations';
7
7
 
8
8
  const GESTURE_NAME = 'ios26-enable-gesture';
@@ -1,6 +1,7 @@
1
1
  @use '../utils/api';
2
2
 
3
3
  ion-alert.ios:not(.ios26-disabled) {
4
+ --min-width: 280px;
4
5
  --backdrop-opacity: 0.2;
5
6
 
6
7
  // --max-width: clamp(270px, 16.875rem, 324px);
@@ -18,6 +18,12 @@ ion-popover.ios:not(.ios26-disabled) {
18
18
  background: transparent;
19
19
  ion-item {
20
20
  --background: transparent;
21
+ &:last-of-type {
22
+ --border-width: 0px;
23
+ --show-full-highlight: 0;
24
+ --inner-border-width: 0px;
25
+ --show-inset-highlight: 0;
26
+ }
21
27
  }
22
28
  }
23
29
  }
@@ -1,4 +1,21 @@
1
- import { AnimationPosition } from './interfaces';
1
+ import { AnimationPosition } from './sheets-of-glass/interfaces';
2
+
3
+ declare const __zone_symbol__requestAnimationFrame: any;
4
+ declare const requestAnimationFrame: any;
5
+
6
+ export const getElementRoot = (el: HTMLElement, fallback: HTMLElement = el) => {
7
+ return el.shadowRoot || fallback;
8
+ };
9
+
10
+ export const raf = (h: FrameRequestCallback) => {
11
+ if (typeof __zone_symbol__requestAnimationFrame === 'function') {
12
+ return __zone_symbol__requestAnimationFrame(h);
13
+ }
14
+ if (typeof requestAnimationFrame === 'function') {
15
+ return requestAnimationFrame(h);
16
+ }
17
+ return setTimeout(h);
18
+ };
2
19
 
3
20
  export const cloneElement = (tagName: string): HTMLElement => {
4
21
  const getCachedEl = document.querySelector(`${tagName}.ion-cloned-element`);
File without changes