@builder.io/sdk-qwik 0.16.7 → 0.16.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.
Files changed (59) hide show
  1. package/lib/browser/blocks/slot/component-info.qwik.cjs +2 -1
  2. package/lib/browser/blocks/slot/component-info.qwik.mjs +2 -1
  3. package/lib/browser/blocks/slot/slot.qwik.cjs +7 -1
  4. package/lib/browser/blocks/slot/slot.qwik.mjs +7 -1
  5. package/lib/browser/components/block/block.helpers.qwik.cjs +2 -10
  6. package/lib/browser/components/block/block.helpers.qwik.mjs +2 -10
  7. package/lib/browser/components/block/block.qwik.cjs +51 -17
  8. package/lib/browser/components/block/block.qwik.mjs +53 -19
  9. package/lib/browser/components/block/components/block-styles.qwik.cjs +2 -17
  10. package/lib/browser/components/block/components/block-styles.qwik.mjs +2 -17
  11. package/lib/browser/constants/sdk-version.qwik.cjs +1 -1
  12. package/lib/browser/constants/sdk-version.qwik.mjs +1 -1
  13. package/lib/browser/functions/evaluate/evaluate.qwik.cjs +2 -1
  14. package/lib/browser/functions/evaluate/evaluate.qwik.mjs +2 -1
  15. package/lib/browser/functions/get-processed-block.qwik.cjs +52 -10
  16. package/lib/browser/functions/get-processed-block.qwik.mjs +52 -10
  17. package/lib/browser/helpers/omit.qwik.cjs +9 -0
  18. package/lib/browser/helpers/omit.qwik.mjs +9 -0
  19. package/lib/edge/blocks/slot/component-info.qwik.cjs +2 -1
  20. package/lib/edge/blocks/slot/component-info.qwik.mjs +2 -1
  21. package/lib/edge/blocks/slot/slot.qwik.cjs +7 -1
  22. package/lib/edge/blocks/slot/slot.qwik.mjs +7 -1
  23. package/lib/edge/components/block/block.helpers.qwik.cjs +2 -10
  24. package/lib/edge/components/block/block.helpers.qwik.mjs +2 -10
  25. package/lib/edge/components/block/block.qwik.cjs +51 -17
  26. package/lib/edge/components/block/block.qwik.mjs +53 -19
  27. package/lib/edge/components/block/components/block-styles.qwik.cjs +2 -17
  28. package/lib/edge/components/block/components/block-styles.qwik.mjs +2 -17
  29. package/lib/edge/constants/sdk-version.qwik.cjs +1 -1
  30. package/lib/edge/constants/sdk-version.qwik.mjs +1 -1
  31. package/lib/edge/functions/evaluate/evaluate.qwik.cjs +2 -1
  32. package/lib/edge/functions/evaluate/evaluate.qwik.mjs +2 -1
  33. package/lib/edge/functions/get-processed-block.qwik.cjs +52 -10
  34. package/lib/edge/functions/get-processed-block.qwik.mjs +52 -10
  35. package/lib/edge/helpers/omit.qwik.cjs +9 -0
  36. package/lib/edge/helpers/omit.qwik.mjs +9 -0
  37. package/lib/node/blocks/slot/component-info.qwik.cjs +2 -1
  38. package/lib/node/blocks/slot/component-info.qwik.mjs +2 -1
  39. package/lib/node/blocks/slot/slot.qwik.cjs +7 -1
  40. package/lib/node/blocks/slot/slot.qwik.mjs +7 -1
  41. package/lib/node/components/block/block.helpers.qwik.cjs +2 -10
  42. package/lib/node/components/block/block.helpers.qwik.mjs +2 -10
  43. package/lib/node/components/block/block.qwik.cjs +51 -17
  44. package/lib/node/components/block/block.qwik.mjs +53 -19
  45. package/lib/node/components/block/components/block-styles.qwik.cjs +2 -17
  46. package/lib/node/components/block/components/block-styles.qwik.mjs +2 -17
  47. package/lib/node/constants/sdk-version.qwik.cjs +1 -1
  48. package/lib/node/constants/sdk-version.qwik.mjs +1 -1
  49. package/lib/node/functions/evaluate/evaluate.qwik.cjs +2 -1
  50. package/lib/node/functions/evaluate/evaluate.qwik.mjs +2 -1
  51. package/lib/node/functions/get-processed-block.qwik.cjs +52 -10
  52. package/lib/node/functions/get-processed-block.qwik.mjs +52 -10
  53. package/lib/node/helpers/omit.qwik.cjs +9 -0
  54. package/lib/node/helpers/omit.qwik.mjs +9 -0
  55. package/package.json +1 -1
  56. package/types/src/blocks/slot/slot.d.ts +2 -2
  57. package/types/src/components/block/block.helpers.d.ts +1 -2
  58. package/types/src/constants/sdk-version.d.ts +1 -1
  59. package/types/src/functions/get-processed-block.d.ts +1 -0
@@ -1,20 +1,61 @@
1
+ import { TARGET } from "../constants/target.qwik.mjs";
2
+ import { omit } from "../helpers/omit.qwik.mjs";
1
3
  import { evaluate } from "./evaluate/evaluate.qwik.mjs";
2
4
  import { fastClone } from "./fast-clone.qwik.mjs";
3
5
  import { set } from "./set.qwik.mjs";
4
6
  import { transformBlock } from "./transform-block.qwik.mjs";
7
+ function deepCloneWithConditions(obj) {
8
+ if (obj === null || typeof obj !== "object")
9
+ return obj;
10
+ if (Array.isArray(obj))
11
+ return obj.map((item) => deepCloneWithConditions(item));
12
+ if (obj["@type"] === "@builder.io/sdk:Element")
13
+ return obj;
14
+ const clonedObj = {};
15
+ for (const key in obj)
16
+ if (key !== "meta" && Object.prototype.hasOwnProperty.call(obj, key))
17
+ clonedObj[key] = deepCloneWithConditions(obj[key]);
18
+ return clonedObj;
19
+ }
20
+ const IS_SDK_WITHOUT_CACHED_PROCESSED_BLOCK = [
21
+ "svelte",
22
+ "vue",
23
+ "angular",
24
+ "qwik",
25
+ "solid"
26
+ ].includes(TARGET);
27
+ const getCopy = (block) => {
28
+ if (IS_SDK_WITHOUT_CACHED_PROCESSED_BLOCK) {
29
+ const copy = fastClone(block);
30
+ const copied = {
31
+ ...copy,
32
+ properties: {
33
+ ...copy.properties
34
+ },
35
+ actions: {
36
+ ...copy.actions
37
+ }
38
+ };
39
+ return copied;
40
+ } else {
41
+ const copy = deepCloneWithConditions(omit(block, "children", "meta"));
42
+ return {
43
+ ...copy,
44
+ properties: {
45
+ ...copy.properties
46
+ },
47
+ actions: {
48
+ ...copy.actions
49
+ },
50
+ children: block.children,
51
+ meta: block.meta
52
+ };
53
+ }
54
+ };
5
55
  const evaluateBindings = ({ block, context, localState, rootState, rootSetState }) => {
6
56
  if (!block.bindings)
7
57
  return block;
8
- const copy = fastClone(block);
9
- const copied = {
10
- ...copy,
11
- properties: {
12
- ...copy.properties
13
- },
14
- actions: {
15
- ...copy.actions
16
- }
17
- };
58
+ const copied = getCopy(block);
18
59
  for (const binding in block.bindings) {
19
60
  const expression = block.bindings[binding];
20
61
  const value = evaluate({
@@ -43,5 +84,6 @@ function getProcessedBlock({ block, context, shouldEvaluateBindings, localState,
43
84
  return transformedBlock;
44
85
  }
45
86
  export {
87
+ deepCloneWithConditions,
46
88
  getProcessedBlock
47
89
  };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ function omit(obj, ...values) {
4
+ const newObject = Object.assign({}, obj);
5
+ for (const key of values)
6
+ delete newObject[key];
7
+ return newObject;
8
+ }
9
+ exports.omit = omit;
@@ -0,0 +1,9 @@
1
+ function omit(obj, ...values) {
2
+ const newObject = Object.assign({}, obj);
3
+ for (const key of values)
4
+ delete newObject[key];
5
+ return newObject;
6
+ }
7
+ export {
8
+ omit
9
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder.io/sdk-qwik",
3
- "version": "0.16.7",
3
+ "version": "0.16.9",
4
4
  "homepage": "https://github.com/BuilderIO/builder/tree/main/packages/sdks/output/qwik",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,5 +1,5 @@
1
- import { BuilderDataProps } from "../../types/builder-props";
2
- export type DropzoneProps = BuilderDataProps & {
1
+ import { BuilderComponentsProp, BuilderDataProps } from "../../types/builder-props";
2
+ export type DropzoneProps = BuilderDataProps & BuilderComponentsProp & {
3
3
  name: string;
4
4
  attributes: any;
5
5
  };
@@ -1,9 +1,8 @@
1
1
  import type { BuilderContextInterface, RegisteredComponent, RegisteredComponents } from '../../context/types';
2
2
  import type { BuilderBlock } from '../../types/builder-block';
3
3
  import type { RepeatData } from './types';
4
- export declare const getComponent: ({ block, context, registeredComponents }: {
4
+ export declare const getComponent: ({ block, registeredComponents }: {
5
5
  block: BuilderBlock;
6
- context: BuilderContextInterface;
7
6
  registeredComponents: RegisteredComponents;
8
7
  }) => RegisteredComponent | null | undefined;
9
8
  export declare const getRepeatItemData: ({ block, context }: {
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "0.16.7";
1
+ export declare const SDK_VERSION = "0.16.9";
@@ -1,5 +1,6 @@
1
1
  import type { BuilderContextInterface } from '../context/types';
2
2
  import type { BuilderBlock } from '../types/builder-block';
3
+ export declare function deepCloneWithConditions<T = any>(obj: T): T;
3
4
  export declare function getProcessedBlock({ block, context, shouldEvaluateBindings, localState, rootState, rootSetState }: {
4
5
  block: BuilderBlock;
5
6
  /**