webflow-api 3.1.0 → 3.1.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.
- package/.mock/definition/__package__.yml +363 -79
- package/.mock/definition/accessGroups.yml +1 -0
- package/.mock/definition/assets.yml +86 -47
- package/.mock/definition/collections/fields.yml +63 -46
- package/.mock/definition/collections/items.yml +58 -30
- package/.mock/definition/collections.yml +42 -7
- package/.mock/definition/components.yml +43 -50
- package/.mock/definition/ecommerce.yml +1 -0
- package/.mock/definition/forms.yml +114 -2
- package/.mock/definition/inventory.yml +2 -0
- package/.mock/definition/orders.yml +6 -68
- package/.mock/definition/pages/scripts.yml +10 -44
- package/.mock/definition/pages.yml +36 -41
- package/.mock/definition/products.yml +9 -0
- package/.mock/definition/scripts.yml +18 -49
- package/.mock/definition/sites/activityLogs.yml +10 -7
- package/.mock/definition/sites/plans.yml +7 -1
- package/.mock/definition/sites/redirects.yml +24 -1
- package/.mock/definition/sites/robotsTxt.yml +202 -0
- package/.mock/definition/sites/scripts.yml +22 -30
- package/.mock/definition/sites.yml +27 -30
- package/.mock/definition/token.yml +2 -0
- package/.mock/definition/users.yml +4 -0
- package/.mock/definition/webhooks.yml +7 -8
- package/.mock/fern.config.json +1 -1
- package/api/resources/accessGroups/client/Client.js +1 -1
- package/api/resources/assets/client/Client.d.ts +10 -7
- package/api/resources/assets/client/Client.js +18 -15
- package/api/resources/collections/client/Client.d.ts +21 -1
- package/api/resources/collections/client/Client.js +27 -5
- package/api/resources/collections/client/requests/CollectionsCreateRequest.d.ts +23 -1
- package/api/resources/collections/resources/fields/client/Client.d.ts +34 -4
- package/api/resources/collections/resources/fields/client/Client.js +40 -8
- package/api/resources/collections/resources/fields/client/requests/index.d.ts +0 -1
- package/api/resources/collections/resources/fields/index.d.ts +0 -1
- package/api/resources/collections/resources/fields/index.js +0 -1
- package/api/resources/collections/resources/index.d.ts +1 -2
- package/api/resources/collections/resources/index.js +2 -3
- package/api/resources/collections/resources/items/client/Client.d.ts +19 -12
- package/api/resources/collections/resources/items/client/Client.js +39 -28
- package/api/resources/collections/resources/items/client/requests/ItemsListItemsLiveRequest.d.ts +2 -2
- package/api/resources/collections/resources/items/client/requests/ItemsListItemsRequest.d.ts +2 -2
- package/api/resources/collections/resources/items/types/ItemsDeleteItemsLiveRequestItemsItem.d.ts +1 -1
- package/api/resources/components/client/Client.d.ts +5 -6
- package/api/resources/components/client/Client.js +10 -11
- package/api/resources/ecommerce/client/Client.js +1 -1
- package/api/resources/forms/client/Client.d.ts +51 -0
- package/api/resources/forms/client/Client.js +226 -5
- package/api/resources/forms/client/requests/FormsListSubmissionsBySiteRequest.d.ts +23 -0
- package/api/resources/forms/client/requests/index.d.ts +1 -0
- package/api/resources/inventory/client/Client.js +2 -2
- package/api/resources/orders/client/Client.js +6 -6
- package/api/resources/pages/client/Client.d.ts +8 -3
- package/api/resources/pages/client/Client.js +13 -8
- package/api/resources/pages/resources/scripts/client/Client.d.ts +6 -20
- package/api/resources/pages/resources/scripts/client/Client.js +9 -23
- package/api/resources/products/client/Client.js +6 -6
- package/api/resources/scripts/client/Client.d.ts +12 -20
- package/api/resources/scripts/client/Client.js +15 -23
- package/api/resources/sites/client/Client.d.ts +12 -3
- package/api/resources/sites/client/Client.js +25 -14
- package/api/resources/sites/resources/activityLogs/client/Client.d.ts +5 -1
- package/api/resources/sites/resources/activityLogs/client/Client.js +6 -2
- package/api/resources/sites/resources/index.d.ts +1 -0
- package/api/resources/sites/resources/index.js +2 -1
- package/api/resources/sites/resources/plans/client/Client.d.ts +2 -0
- package/api/resources/sites/resources/plans/client/Client.js +3 -1
- package/api/resources/sites/resources/redirects/client/Client.d.ts +10 -0
- package/api/resources/sites/resources/redirects/client/Client.js +14 -4
- package/api/resources/sites/resources/robotsTxt/client/Client.d.ts +124 -0
- package/api/resources/sites/resources/robotsTxt/client/Client.js +486 -0
- package/api/resources/sites/resources/robotsTxt/client/index.d.ts +1 -0
- package/api/resources/sites/resources/robotsTxt/client/index.js +2 -0
- package/api/resources/sites/resources/robotsTxt/index.d.ts +1 -0
- package/api/resources/{collections/resources/fields/types → sites/resources/robotsTxt}/index.js +1 -1
- package/api/resources/sites/resources/scripts/client/Client.d.ts +15 -13
- package/api/resources/sites/resources/scripts/client/Client.js +19 -17
- package/api/resources/token/client/Client.js +2 -2
- package/api/resources/users/client/Client.js +5 -5
- package/api/resources/users/client/requests/UsersInviteRequest.d.ts +1 -4
- package/api/resources/users/client/requests/UsersUpdateRequest.d.ts +1 -4
- package/api/resources/webhooks/client/Client.js +4 -4
- package/api/types/Asset.d.ts +4 -0
- package/api/types/AssetVariant.d.ts +3 -0
- package/api/types/Assets.d.ts +1 -0
- package/api/types/ComponentNode.d.ts +2 -2
- package/api/types/Conflict.d.ts +4 -0
- package/api/types/Dom.d.ts +2 -0
- package/api/types/FieldCreate.d.ts +8 -0
- package/api/types/FieldCreate.js +5 -0
- package/api/types/FieldType.d.ts +3 -1
- package/api/types/FieldType.js +2 -0
- package/api/types/ImageNode.d.ts +1 -0
- package/api/types/ImageNodeImage.d.ts +3 -0
- package/api/types/Metadata.d.ts +11 -0
- package/api/types/Metadata.js +5 -0
- package/api/types/MetadataOptionsItem.d.ts +12 -0
- package/api/types/MetadataOptionsItem.js +5 -0
- package/api/types/OAuthScope.d.ts +8 -0
- package/api/types/OAuthScope.js +2 -0
- package/api/types/OptionField.d.ts +19 -0
- package/api/types/OptionField.js +5 -0
- package/api/types/ReferenceField.d.ts +20 -0
- package/api/types/ReferenceField.js +5 -0
- package/api/types/ReferenceFieldMetadata.d.ts +10 -0
- package/api/types/ReferenceFieldMetadata.js +5 -0
- package/api/types/ReferenceFieldType.d.ts +11 -0
- package/api/types/ReferenceFieldType.js +10 -0
- package/api/types/Robots.d.ts +13 -0
- package/api/types/Robots.js +5 -0
- package/api/types/RobotsRulesItem.d.ts +11 -0
- package/api/types/RobotsRulesItem.js +5 -0
- package/api/types/SkuFieldData.d.ts +2 -0
- package/api/types/SkuFieldDataEcSkuBillingMethod.d.ts +3 -0
- package/api/types/SkuFieldDataEcSkuSubscriptionPlan.d.ts +3 -0
- package/api/{resources/collections/resources/fields/client/requests/FieldCreate.d.ts → types/StaticField.d.ts} +7 -12
- package/api/types/StaticField.js +5 -0
- package/api/{resources/collections/resources/fields/types/FieldCreateType.d.ts → types/StaticFieldType.d.ts} +2 -3
- package/{dist/api/resources/collections/resources/fields/types/FieldCreateType.js → api/types/StaticFieldType.js} +2 -3
- package/api/types/Text.d.ts +3 -0
- package/api/types/TextNode.d.ts +1 -0
- package/api/types/TextNodeText.d.ts +3 -0
- package/api/types/TriggerType.d.ts +1 -15
- package/api/types/WebhookList.d.ts +1 -1
- package/api/types/index.d.ts +12 -0
- package/api/types/index.js +12 -0
- package/dist/api/resources/accessGroups/client/Client.js +1 -1
- package/dist/api/resources/assets/client/Client.d.ts +10 -7
- package/dist/api/resources/assets/client/Client.js +18 -15
- package/dist/api/resources/collections/client/Client.d.ts +21 -1
- package/dist/api/resources/collections/client/Client.js +27 -5
- package/dist/api/resources/collections/client/requests/CollectionsCreateRequest.d.ts +23 -1
- package/dist/api/resources/collections/resources/fields/client/Client.d.ts +34 -4
- package/dist/api/resources/collections/resources/fields/client/Client.js +40 -8
- package/dist/api/resources/collections/resources/fields/client/requests/index.d.ts +0 -1
- package/dist/api/resources/collections/resources/fields/index.d.ts +0 -1
- package/dist/api/resources/collections/resources/fields/index.js +0 -1
- package/dist/api/resources/collections/resources/index.d.ts +1 -2
- package/dist/api/resources/collections/resources/index.js +2 -3
- package/dist/api/resources/collections/resources/items/client/Client.d.ts +19 -12
- package/dist/api/resources/collections/resources/items/client/Client.js +39 -28
- package/dist/api/resources/collections/resources/items/client/requests/ItemsListItemsLiveRequest.d.ts +2 -2
- package/dist/api/resources/collections/resources/items/client/requests/ItemsListItemsRequest.d.ts +2 -2
- package/dist/api/resources/collections/resources/items/types/ItemsDeleteItemsLiveRequestItemsItem.d.ts +1 -1
- package/dist/api/resources/components/client/Client.d.ts +5 -6
- package/dist/api/resources/components/client/Client.js +10 -11
- package/dist/api/resources/ecommerce/client/Client.js +1 -1
- package/dist/api/resources/forms/client/Client.d.ts +51 -0
- package/dist/api/resources/forms/client/Client.js +226 -5
- package/dist/api/resources/forms/client/requests/FormsListSubmissionsBySiteRequest.d.ts +23 -0
- package/dist/api/resources/forms/client/requests/FormsListSubmissionsBySiteRequest.js +5 -0
- package/dist/api/resources/forms/client/requests/index.d.ts +1 -0
- package/dist/api/resources/inventory/client/Client.js +2 -2
- package/dist/api/resources/orders/client/Client.js +6 -6
- package/dist/api/resources/pages/client/Client.d.ts +8 -3
- package/dist/api/resources/pages/client/Client.js +13 -8
- package/dist/api/resources/pages/resources/scripts/client/Client.d.ts +6 -20
- package/dist/api/resources/pages/resources/scripts/client/Client.js +9 -23
- package/dist/api/resources/products/client/Client.js +6 -6
- package/dist/api/resources/scripts/client/Client.d.ts +12 -20
- package/dist/api/resources/scripts/client/Client.js +15 -23
- package/dist/api/resources/sites/client/Client.d.ts +12 -3
- package/dist/api/resources/sites/client/Client.js +25 -14
- package/dist/api/resources/sites/resources/activityLogs/client/Client.d.ts +5 -1
- package/dist/api/resources/sites/resources/activityLogs/client/Client.js +6 -2
- package/dist/api/resources/sites/resources/index.d.ts +1 -0
- package/dist/api/resources/sites/resources/index.js +2 -1
- package/dist/api/resources/sites/resources/plans/client/Client.d.ts +2 -0
- package/dist/api/resources/sites/resources/plans/client/Client.js +3 -1
- package/dist/api/resources/sites/resources/redirects/client/Client.d.ts +10 -0
- package/dist/api/resources/sites/resources/redirects/client/Client.js +14 -4
- package/dist/api/resources/sites/resources/robotsTxt/client/Client.d.ts +124 -0
- package/dist/api/resources/sites/resources/robotsTxt/client/Client.js +486 -0
- package/dist/api/resources/sites/resources/robotsTxt/client/index.d.ts +1 -0
- package/dist/api/resources/sites/resources/robotsTxt/client/index.js +2 -0
- package/dist/api/resources/sites/resources/robotsTxt/index.d.ts +1 -0
- package/dist/{serialization/resources/collections/resources/fields/types → api/resources/sites/resources/robotsTxt}/index.js +1 -1
- package/dist/api/resources/sites/resources/scripts/client/Client.d.ts +15 -13
- package/dist/api/resources/sites/resources/scripts/client/Client.js +19 -17
- package/dist/api/resources/token/client/Client.js +2 -2
- package/dist/api/resources/users/client/Client.js +5 -5
- package/dist/api/resources/users/client/requests/UsersInviteRequest.d.ts +1 -4
- package/dist/api/resources/users/client/requests/UsersUpdateRequest.d.ts +1 -4
- package/dist/api/resources/webhooks/client/Client.js +4 -4
- package/dist/api/types/Asset.d.ts +4 -0
- package/dist/api/types/AssetVariant.d.ts +3 -0
- package/dist/api/types/Assets.d.ts +1 -0
- package/dist/api/types/ComponentNode.d.ts +2 -2
- package/dist/api/types/Conflict.d.ts +4 -0
- package/dist/api/types/Conflict.js +5 -0
- package/dist/api/types/Dom.d.ts +2 -0
- package/dist/api/types/FieldCreate.d.ts +8 -0
- package/dist/api/types/FieldCreate.js +5 -0
- package/dist/api/types/FieldType.d.ts +3 -1
- package/dist/api/types/FieldType.js +2 -0
- package/dist/api/types/ImageNode.d.ts +1 -0
- package/dist/api/types/ImageNodeImage.d.ts +3 -0
- package/dist/api/types/Metadata.d.ts +11 -0
- package/dist/api/types/Metadata.js +5 -0
- package/dist/api/types/MetadataOptionsItem.d.ts +12 -0
- package/dist/api/types/MetadataOptionsItem.js +5 -0
- package/dist/api/types/OAuthScope.d.ts +8 -0
- package/dist/api/types/OAuthScope.js +2 -0
- package/dist/api/types/OptionField.d.ts +19 -0
- package/dist/api/types/OptionField.js +5 -0
- package/dist/api/types/ReferenceField.d.ts +20 -0
- package/dist/api/types/ReferenceField.js +5 -0
- package/dist/api/types/ReferenceFieldMetadata.d.ts +10 -0
- package/dist/api/types/ReferenceFieldMetadata.js +5 -0
- package/dist/api/types/ReferenceFieldType.d.ts +11 -0
- package/dist/api/types/ReferenceFieldType.js +10 -0
- package/dist/api/types/Robots.d.ts +13 -0
- package/dist/api/types/Robots.js +5 -0
- package/dist/api/types/RobotsRulesItem.d.ts +11 -0
- package/dist/api/types/RobotsRulesItem.js +5 -0
- package/dist/api/types/SkuFieldData.d.ts +2 -0
- package/dist/api/types/SkuFieldDataEcSkuBillingMethod.d.ts +3 -0
- package/dist/api/types/SkuFieldDataEcSkuSubscriptionPlan.d.ts +3 -0
- package/dist/api/{resources/collections/resources/fields/client/requests/FieldCreate.d.ts → types/StaticField.d.ts} +7 -12
- package/dist/api/types/StaticField.js +5 -0
- package/dist/api/{resources/collections/resources/fields/types/FieldCreateType.d.ts → types/StaticFieldType.d.ts} +2 -3
- package/{api/resources/collections/resources/fields/types/FieldCreateType.js → dist/api/types/StaticFieldType.js} +2 -3
- package/dist/api/types/Text.d.ts +3 -0
- package/dist/api/types/TextNode.d.ts +1 -0
- package/dist/api/types/TextNodeText.d.ts +3 -0
- package/dist/api/types/TriggerType.d.ts +1 -15
- package/dist/api/types/WebhookList.d.ts +1 -1
- package/dist/api/types/index.d.ts +12 -0
- package/dist/api/types/index.js +12 -0
- package/dist/serialization/resources/collections/client/requests/CollectionsCreateRequest.d.ts +2 -0
- package/dist/serialization/resources/collections/client/requests/CollectionsCreateRequest.js +2 -0
- package/dist/serialization/resources/collections/resources/fields/client/requests/index.d.ts +0 -1
- package/dist/serialization/resources/collections/resources/fields/client/requests/index.js +1 -3
- package/dist/serialization/resources/collections/resources/fields/index.d.ts +0 -1
- package/dist/serialization/resources/collections/resources/fields/index.js +0 -1
- package/dist/serialization/resources/collections/resources/index.d.ts +1 -2
- package/dist/serialization/resources/collections/resources/index.js +2 -3
- package/dist/serialization/resources/collections/resources/items/types/ItemsDeleteItemsLiveRequestItemsItem.d.ts +1 -1
- package/dist/serialization/resources/collections/resources/items/types/ItemsDeleteItemsLiveRequestItemsItem.js +1 -1
- package/dist/serialization/types/Assets.d.ts +2 -0
- package/dist/serialization/types/Assets.js +2 -0
- package/dist/serialization/types/Conflict.d.ts +10 -0
- package/dist/serialization/types/Conflict.js +31 -0
- package/dist/serialization/types/Dom.d.ts +1 -0
- package/dist/serialization/types/Dom.js +1 -0
- package/dist/serialization/types/FieldCreate.d.ts +13 -0
- package/dist/serialization/types/FieldCreate.js +34 -0
- package/dist/serialization/types/FieldType.d.ts +1 -1
- package/dist/serialization/types/FieldType.js +2 -0
- package/dist/serialization/types/Metadata.d.ts +13 -0
- package/dist/serialization/types/Metadata.js +34 -0
- package/dist/serialization/types/MetadataOptionsItem.d.ts +13 -0
- package/dist/serialization/types/MetadataOptionsItem.js +34 -0
- package/dist/serialization/types/OptionField.d.ts +19 -0
- package/dist/serialization/types/OptionField.js +40 -0
- package/dist/serialization/types/ReferenceField.d.ts +20 -0
- package/dist/serialization/types/ReferenceField.js +41 -0
- package/dist/serialization/types/ReferenceFieldMetadata.d.ts +12 -0
- package/dist/serialization/types/ReferenceFieldMetadata.js +33 -0
- package/dist/serialization/types/ReferenceFieldType.d.ts +10 -0
- package/dist/serialization/types/ReferenceFieldType.js +31 -0
- package/dist/serialization/types/Robots.d.ts +14 -0
- package/dist/serialization/types/Robots.js +35 -0
- package/dist/serialization/types/RobotsRulesItem.d.ts +14 -0
- package/dist/serialization/types/RobotsRulesItem.js +35 -0
- package/dist/serialization/types/StaticField.d.ts +18 -0
- package/dist/serialization/{resources/collections/resources/fields/client/requests/FieldCreate.js → types/StaticField.js} +7 -5
- package/dist/serialization/types/StaticFieldType.d.ts +10 -0
- package/dist/serialization/{resources/collections/resources/fields/types/FieldCreateType.js → types/StaticFieldType.js} +3 -4
- package/dist/serialization/types/WebhookList.d.ts +2 -2
- package/dist/serialization/types/WebhookList.js +2 -2
- package/dist/serialization/types/index.d.ts +12 -0
- package/dist/serialization/types/index.js +12 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/wrapper/AssetsClient.d.ts +12 -0
- package/dist/wrapper/AssetsClient.js +16 -0
- package/dist/wrapper/AssetsUtilitiesClient.d.ts +49 -0
- package/dist/wrapper/AssetsUtilitiesClient.js +121 -0
- package/dist/wrapper/WebflowClient.d.ts +6 -0
- package/dist/wrapper/WebflowClient.js +10 -0
- package/dist/wrapper/WebhooksClient.d.ts +39 -0
- package/dist/wrapper/WebhooksClient.js +66 -0
- package/package.json +15 -12
- package/reference.md +585 -91
- package/serialization/resources/collections/client/requests/CollectionsCreateRequest.d.ts +2 -0
- package/serialization/resources/collections/client/requests/CollectionsCreateRequest.js +2 -0
- package/serialization/resources/collections/resources/fields/client/requests/index.d.ts +0 -1
- package/serialization/resources/collections/resources/fields/client/requests/index.js +1 -3
- package/serialization/resources/collections/resources/fields/index.d.ts +0 -1
- package/serialization/resources/collections/resources/fields/index.js +0 -1
- package/serialization/resources/collections/resources/index.d.ts +1 -2
- package/serialization/resources/collections/resources/index.js +2 -3
- package/serialization/resources/collections/resources/items/types/ItemsDeleteItemsLiveRequestItemsItem.d.ts +1 -1
- package/serialization/resources/collections/resources/items/types/ItemsDeleteItemsLiveRequestItemsItem.js +1 -1
- package/serialization/types/Assets.d.ts +2 -0
- package/serialization/types/Assets.js +2 -0
- package/serialization/types/Conflict.d.ts +10 -0
- package/serialization/types/Conflict.js +31 -0
- package/serialization/types/Dom.d.ts +1 -0
- package/serialization/types/Dom.js +1 -0
- package/serialization/types/FieldCreate.d.ts +13 -0
- package/serialization/types/FieldCreate.js +34 -0
- package/serialization/types/FieldType.d.ts +1 -1
- package/serialization/types/FieldType.js +2 -0
- package/serialization/types/Metadata.d.ts +13 -0
- package/serialization/types/Metadata.js +34 -0
- package/serialization/types/MetadataOptionsItem.d.ts +13 -0
- package/serialization/types/MetadataOptionsItem.js +34 -0
- package/serialization/types/OptionField.d.ts +19 -0
- package/serialization/types/OptionField.js +40 -0
- package/serialization/types/ReferenceField.d.ts +20 -0
- package/serialization/types/ReferenceField.js +41 -0
- package/serialization/types/ReferenceFieldMetadata.d.ts +12 -0
- package/serialization/types/ReferenceFieldMetadata.js +33 -0
- package/serialization/types/ReferenceFieldType.d.ts +10 -0
- package/serialization/types/ReferenceFieldType.js +31 -0
- package/serialization/types/Robots.d.ts +14 -0
- package/serialization/types/Robots.js +35 -0
- package/serialization/types/RobotsRulesItem.d.ts +14 -0
- package/serialization/types/RobotsRulesItem.js +35 -0
- package/serialization/types/StaticField.d.ts +18 -0
- package/serialization/{resources/collections/resources/fields/client/requests/FieldCreate.js → types/StaticField.js} +7 -5
- package/serialization/types/StaticFieldType.d.ts +10 -0
- package/serialization/{resources/collections/resources/fields/types/FieldCreateType.js → types/StaticFieldType.js} +3 -4
- package/serialization/types/WebhookList.d.ts +2 -2
- package/serialization/types/WebhookList.js +2 -2
- package/serialization/types/index.d.ts +12 -0
- package/serialization/types/index.js +12 -0
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/wrapper/AssetsClient.d.ts +12 -0
- package/wrapper/AssetsClient.js +16 -0
- package/wrapper/AssetsUtilitiesClient.d.ts +49 -0
- package/wrapper/AssetsUtilitiesClient.js +121 -0
- package/wrapper/WebflowClient.d.ts +6 -0
- package/wrapper/WebflowClient.js +10 -0
- package/wrapper/WebhooksClient.d.ts +39 -0
- package/wrapper/WebhooksClient.js +66 -0
- package/api/resources/collections/resources/fields/types/index.d.ts +0 -1
- package/dist/api/resources/collections/resources/fields/types/index.d.ts +0 -1
- package/dist/api/resources/collections/resources/fields/types/index.js +0 -17
- package/dist/serialization/resources/collections/resources/fields/client/requests/FieldCreate.d.ts +0 -16
- package/dist/serialization/resources/collections/resources/fields/types/FieldCreateType.d.ts +0 -10
- package/dist/serialization/resources/collections/resources/fields/types/index.d.ts +0 -1
- package/serialization/resources/collections/resources/fields/client/requests/FieldCreate.d.ts +0 -16
- package/serialization/resources/collections/resources/fields/types/FieldCreateType.d.ts +0 -10
- package/serialization/resources/collections/resources/fields/types/index.d.ts +0 -1
- package/serialization/resources/collections/resources/fields/types/index.js +0 -17
- /package/api/resources/{collections/resources/fields/client/requests/FieldCreate.js → forms/client/requests/FormsListSubmissionsBySiteRequest.js} +0 -0
- /package/{dist/api/resources/collections/resources/fields/client/requests/FieldCreate.js → api/types/Conflict.js} +0 -0
|
@@ -41,11 +41,21 @@ const Client_1 = require("../Client");
|
|
|
41
41
|
const core = __importStar(require("../core"));
|
|
42
42
|
const errors = __importStar(require("../errors"));
|
|
43
43
|
const version_1 = require("../version");
|
|
44
|
+
const WebhooksClient_1 = require("./WebhooksClient");
|
|
45
|
+
const AssetsClient_1 = require("./AssetsClient");
|
|
44
46
|
class WebflowClient extends Client_1.WebflowClient {
|
|
45
47
|
constructor(_options) {
|
|
46
48
|
super(_options);
|
|
47
49
|
this._options = _options;
|
|
48
50
|
}
|
|
51
|
+
get webhooks() {
|
|
52
|
+
var _a;
|
|
53
|
+
return ((_a = this._webhooks) !== null && _a !== void 0 ? _a : (this._webhooks = new WebhooksClient_1.Client(this._options)));
|
|
54
|
+
}
|
|
55
|
+
get assets() {
|
|
56
|
+
var _a;
|
|
57
|
+
return ((_a = this._assets) !== null && _a !== void 0 ? _a : (this._assets = new AssetsClient_1.Client(this._options)));
|
|
58
|
+
}
|
|
49
59
|
/**
|
|
50
60
|
* @param clientId The OAuth client ID
|
|
51
61
|
* @param state The state
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Webhooks } from "../api/resources/webhooks/client/Client";
|
|
2
|
+
declare module "../api/resources/webhooks/client/Client" {
|
|
3
|
+
namespace Webhooks {
|
|
4
|
+
interface RequestSignatureDetails {
|
|
5
|
+
/** The headers of the incoming webhook request as a record-like object */
|
|
6
|
+
headers: Record<string, string>;
|
|
7
|
+
/** The body of the incoming webhook request as a string */
|
|
8
|
+
body: string;
|
|
9
|
+
/** The secret key generated when creating the webhook or the OAuth client secret */
|
|
10
|
+
secret: string;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export declare class Client extends Webhooks {
|
|
15
|
+
protected readonly _options: Webhooks.Options;
|
|
16
|
+
constructor(_options: Webhooks.Options);
|
|
17
|
+
/**
|
|
18
|
+
* Verify that the signature on the webhook message is from Webflow
|
|
19
|
+
* @link https://developers.webflow.com/data/docs/working-with-webhooks#validating-request-signatures
|
|
20
|
+
*
|
|
21
|
+
* @param {Webhooks.RequestSignatureDetails.headers} requestSignatureDetails - details of the incoming webhook request
|
|
22
|
+
* @example
|
|
23
|
+
* function incomingWebhookRouteHandler(req, res) {
|
|
24
|
+
* const headers = req.headers;
|
|
25
|
+
* const body = JSON.stringify(req.body);
|
|
26
|
+
* const secret = getWebhookSecret(WEBHOOK_ID);
|
|
27
|
+
* const isAuthenticated = await client.webhooks.verifySignature({ headers, body, secret });
|
|
28
|
+
*
|
|
29
|
+
* if (isAuthenticated) {
|
|
30
|
+
* // Process the webhook
|
|
31
|
+
* } else {
|
|
32
|
+
* // Alert the user that the webhook is not authenticated
|
|
33
|
+
* }
|
|
34
|
+
* res.sendStatus(200);
|
|
35
|
+
* }
|
|
36
|
+
*
|
|
37
|
+
*/
|
|
38
|
+
verifySignature({ headers, body, secret }: Webhooks.RequestSignatureDetails): Promise<boolean>;
|
|
39
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.Client = void 0;
|
|
16
|
+
const Client_1 = require("../api/resources/webhooks/client/Client");
|
|
17
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
18
|
+
class Client extends Client_1.Webhooks {
|
|
19
|
+
constructor(_options) {
|
|
20
|
+
super(_options);
|
|
21
|
+
this._options = _options;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Verify that the signature on the webhook message is from Webflow
|
|
25
|
+
* @link https://developers.webflow.com/data/docs/working-with-webhooks#validating-request-signatures
|
|
26
|
+
*
|
|
27
|
+
* @param {Webhooks.RequestSignatureDetails.headers} requestSignatureDetails - details of the incoming webhook request
|
|
28
|
+
* @example
|
|
29
|
+
* function incomingWebhookRouteHandler(req, res) {
|
|
30
|
+
* const headers = req.headers;
|
|
31
|
+
* const body = JSON.stringify(req.body);
|
|
32
|
+
* const secret = getWebhookSecret(WEBHOOK_ID);
|
|
33
|
+
* const isAuthenticated = await client.webhooks.verifySignature({ headers, body, secret });
|
|
34
|
+
*
|
|
35
|
+
* if (isAuthenticated) {
|
|
36
|
+
* // Process the webhook
|
|
37
|
+
* } else {
|
|
38
|
+
* // Alert the user that the webhook is not authenticated
|
|
39
|
+
* }
|
|
40
|
+
* res.sendStatus(200);
|
|
41
|
+
* }
|
|
42
|
+
*
|
|
43
|
+
*/
|
|
44
|
+
verifySignature({ headers, body, secret }) {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
// Creates a HMAC signature following directions from https://developers.webflow.com/data/docs/working-with-webhooks#steps-to-validate-the-request-signature
|
|
47
|
+
const createHmac = (signingSecret, message) => __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
const encoder = new TextEncoder();
|
|
49
|
+
// Encode the signingSecret key
|
|
50
|
+
// @ts-expect-error TS2339: Property 'subtle' does not exist on type 'typeof import("crypto")'.
|
|
51
|
+
const key = yield crypto_1.default.subtle.importKey("raw", encoder.encode(signingSecret), { name: "HMAC", hash: "SHA-256" }, false, ["sign"]);
|
|
52
|
+
// Encode the message and compute HMAC signature
|
|
53
|
+
// @ts-expect-error TS2339: Property 'subtle' does not exist on type 'typeof import("crypto")'.
|
|
54
|
+
const signature = yield crypto_1.default.subtle.sign("HMAC", key, encoder.encode(message));
|
|
55
|
+
// Convert signature to hex string
|
|
56
|
+
return Array.from(new Uint8Array(signature))
|
|
57
|
+
.map((b) => b.toString(16).padStart(2, "0"))
|
|
58
|
+
.join("");
|
|
59
|
+
});
|
|
60
|
+
const message = `${headers["x-webflow-timestamp"]}:${body}`;
|
|
61
|
+
const generatedSignature = yield createHmac(secret, message);
|
|
62
|
+
return headers["x-webflow-signature"] === generatedSignature;
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.Client = Client;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "webflow-api",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"repository": "https://github.com/webflow/js-webflow-api",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -12,32 +12,35 @@
|
|
|
12
12
|
"test": "jest"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"
|
|
15
|
+
"crypto-browserify": "^3.12.1",
|
|
16
16
|
"form-data": "^4.0.0",
|
|
17
17
|
"formdata-node": "^6.0.3",
|
|
18
|
+
"js-base64": "3.7.2",
|
|
18
19
|
"node-fetch": "2.7.0",
|
|
19
20
|
"qs": "6.11.2",
|
|
20
21
|
"readable-stream": "^4.5.2",
|
|
21
|
-
"
|
|
22
|
+
"url-join": "4.0.1"
|
|
22
23
|
},
|
|
23
24
|
"devDependencies": {
|
|
24
|
-
"@types/
|
|
25
|
-
"@types/
|
|
25
|
+
"@types/jest": "29.5.5",
|
|
26
|
+
"@types/node": "17.0.33",
|
|
26
27
|
"@types/node-fetch": "2.6.9",
|
|
28
|
+
"@types/qs": "6.9.8",
|
|
27
29
|
"@types/readable-stream": "^4.0.15",
|
|
28
|
-
"
|
|
29
|
-
"ts-loader": "^9.3.1",
|
|
30
|
+
"@types/url-join": "4.0.1",
|
|
30
31
|
"jest": "29.7.0",
|
|
31
|
-
"@types/jest": "29.5.5",
|
|
32
|
-
"ts-jest": "29.1.1",
|
|
33
32
|
"jest-environment-jsdom": "29.7.0",
|
|
34
|
-
"
|
|
33
|
+
"jest-fetch-mock": "^3.0.3",
|
|
35
34
|
"prettier": "2.7.1",
|
|
36
|
-
"
|
|
35
|
+
"ts-jest": "29.1.1",
|
|
36
|
+
"ts-loader": "^9.3.1",
|
|
37
|
+
"typescript": "4.6.4",
|
|
38
|
+
"webpack": "^5.94.0"
|
|
37
39
|
},
|
|
38
40
|
"browser": {
|
|
39
41
|
"fs": false,
|
|
40
42
|
"os": false,
|
|
41
|
-
"path": false
|
|
43
|
+
"path": false,
|
|
44
|
+
"crypto": false
|
|
42
45
|
}
|
|
43
46
|
}
|