breeze-client 2.1.7-mjs → 2.2.0-cjs
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/README.md +8 -4
- package/adapter-ajax-angularjs/{index.d.ts → breeze-client-adapter-ajax-angularjs.d.ts} +0 -1
- package/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.metadata.json +1 -0
- package/adapter-ajax-angularjs/package.json +13 -0
- package/adapter-ajax-fetch/{index.d.ts → breeze-client-adapter-ajax-fetch.d.ts} +0 -1
- package/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.metadata.json +1 -0
- package/adapter-ajax-fetch/package.json +13 -0
- package/adapter-ajax-httpclient/{index.d.ts → breeze-client-adapter-ajax-httpclient.d.ts} +0 -1
- package/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.metadata.json +1 -0
- package/adapter-ajax-httpclient/package.json +13 -0
- package/adapter-ajax-jquery/{index.d.ts → breeze-client-adapter-ajax-jquery.d.ts} +0 -1
- package/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.metadata.json +1 -0
- package/adapter-ajax-jquery/package.json +13 -0
- package/adapter-ajax-post/{index.d.ts → breeze-client-adapter-ajax-post.d.ts} +0 -1
- package/adapter-ajax-post/breeze-client-adapter-ajax-post.metadata.json +1 -0
- package/adapter-ajax-post/package.json +13 -0
- package/adapter-data-service-odata/{index.d.ts → breeze-client-adapter-data-service-odata.d.ts} +0 -1
- package/adapter-data-service-odata/breeze-client-adapter-data-service-odata.metadata.json +1 -0
- package/adapter-data-service-odata/package.json +13 -0
- package/adapter-data-service-webapi/{index.d.ts → breeze-client-adapter-data-service-webapi.d.ts} +0 -1
- package/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.metadata.json +1 -0
- package/adapter-data-service-webapi/package.json +13 -0
- package/adapter-model-library-backing-store/{index.d.ts → breeze-client-adapter-model-library-backing-store.d.ts} +0 -1
- package/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.metadata.json +1 -0
- package/adapter-model-library-backing-store/package.json +13 -0
- package/adapter-model-library-ko/{index.d.ts → breeze-client-adapter-model-library-ko.d.ts} +0 -1
- package/adapter-model-library-ko/breeze-client-adapter-model-library-ko.metadata.json +1 -0
- package/adapter-model-library-ko/package.json +13 -0
- package/adapter-uri-builder-json/{index.d.ts → breeze-client-adapter-uri-builder-json.d.ts} +0 -1
- package/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.metadata.json +1 -0
- package/adapter-uri-builder-json/package.json +13 -0
- package/adapter-uri-builder-odata/{index.d.ts → breeze-client-adapter-uri-builder-odata.d.ts} +0 -1
- package/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.metadata.json +1 -0
- package/adapter-uri-builder-odata/package.json +13 -0
- package/breeze-client.d.ts +8 -0
- package/breeze-client.metadata.json +1 -0
- package/bundles/breeze-client-adapter-ajax-angularjs.umd.js +190 -0
- package/bundles/breeze-client-adapter-ajax-angularjs.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-fetch.umd.js +190 -0
- package/bundles/breeze-client-adapter-ajax-fetch.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-httpclient.umd.js +195 -0
- package/bundles/breeze-client-adapter-ajax-httpclient.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-jquery.umd.js +115 -0
- package/bundles/breeze-client-adapter-ajax-jquery.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-post.umd.js +92 -0
- package/bundles/breeze-client-adapter-ajax-post.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-ajax-post.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-ajax-post.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-data-service-odata.umd.js +747 -0
- package/bundles/breeze-client-adapter-data-service-odata.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-data-service-odata.umd.min.js +16 -0
- package/bundles/breeze-client-adapter-data-service-odata.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-data-service-webapi.umd.js +333 -0
- package/bundles/breeze-client-adapter-data-service-webapi.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js +16 -0
- package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-model-library-backing-store.umd.js +280 -0
- package/bundles/breeze-client-adapter-model-library-backing-store.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-model-library-ko.umd.js +252 -0
- package/bundles/breeze-client-adapter-model-library-ko.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-model-library-ko.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-model-library-ko.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-uri-builder-json.umd.js +96 -0
- package/bundles/breeze-client-adapter-uri-builder-json.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js.map +1 -0
- package/bundles/breeze-client-adapter-uri-builder-odata.umd.js +262 -0
- package/bundles/breeze-client-adapter-uri-builder-odata.umd.js.map +1 -0
- package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js +2 -0
- package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js.map +1 -0
- package/bundles/breeze-client-mixin-get-entity-graph.umd.js +258 -0
- package/bundles/breeze-client-mixin-get-entity-graph.umd.js.map +1 -0
- package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js +2 -0
- package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js.map +1 -0
- package/bundles/breeze-client-mixin-save-queuing.umd.js +579 -0
- package/bundles/breeze-client-mixin-save-queuing.umd.js.map +1 -0
- package/bundles/breeze-client-mixin-save-queuing.umd.min.js +16 -0
- package/bundles/breeze-client-mixin-save-queuing.umd.min.js.map +1 -0
- package/bundles/breeze-client.umd.js +14234 -0
- package/bundles/breeze-client.umd.js.map +1 -0
- package/bundles/breeze-client.umd.min.js +16 -0
- package/bundles/breeze-client.umd.min.js.map +1 -0
- package/esm2015/adapter-ajax-angularjs/adapter-ajax-angularjs.js +130 -0
- package/esm2015/adapter-ajax-angularjs/adapter-core.js +49 -0
- package/esm2015/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +5 -0
- package/esm2015/adapter-ajax-fetch/adapter-ajax-fetch.js +130 -0
- package/esm2015/adapter-ajax-fetch/adapter-core.js +49 -0
- package/esm2015/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +5 -0
- package/esm2015/adapter-ajax-httpclient/adapter-ajax-httpclient.js +137 -0
- package/esm2015/adapter-ajax-httpclient/adapter-core.js +49 -0
- package/esm2015/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +5 -0
- package/esm2015/adapter-ajax-jquery/adapter-ajax-jquery.js +103 -0
- package/esm2015/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +5 -0
- package/esm2015/adapter-ajax-post/adapter-ajax-post.js +77 -0
- package/esm2015/adapter-ajax-post/breeze-client-adapter-ajax-post.js +5 -0
- package/esm2015/adapter-data-service-odata/adapter-core.js +49 -0
- package/esm2015/adapter-data-service-odata/adapter-data-service-odata.js +463 -0
- package/esm2015/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +5 -0
- package/esm2015/adapter-data-service-webapi/adapter-data-service-webapi.js +100 -0
- package/esm2015/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +5 -0
- package/esm2015/adapter-model-library-backing-store/adapter-model-library-backing-store.js +268 -0
- package/esm2015/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +5 -0
- package/esm2015/adapter-model-library-ko/adapter-model-library-ko.js +240 -0
- package/esm2015/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +5 -0
- package/esm2015/adapter-uri-builder-json/adapter-core.js +49 -0
- package/esm2015/adapter-uri-builder-json/adapter-uri-builder-json.js +36 -0
- package/esm2015/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +5 -0
- package/esm2015/adapter-uri-builder-odata/adapter-core.js +49 -0
- package/esm2015/adapter-uri-builder-odata/adapter-uri-builder-odata.js +192 -0
- package/esm2015/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +5 -0
- package/esm2015/breeze-client.js +9 -0
- package/esm2015/index.js +2 -0
- package/esm2015/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +5 -0
- package/esm2015/mixin-get-entity-graph/mixin-get-entity-graph.js +269 -0
- package/esm2015/mixin-save-queuing/breeze-client-mixin-save-queuing.js +5 -0
- package/esm2015/mixin-save-queuing/mixin-save-queuing.js +400 -0
- package/esm2015/src/abstract-data-service-adapter.js +327 -0
- package/esm2015/src/array.js +4 -0
- package/esm2015/src/assert-param.js +312 -0
- package/esm2015/src/breeze.js +85 -0
- package/esm2015/src/complex-array.js +119 -0
- package/esm2015/src/config.js +223 -0
- package/esm2015/src/core.js +714 -0
- package/esm2015/src/csdl-metadata-parser.js +385 -0
- package/esm2015/src/data-service.js +203 -0
- package/esm2015/src/data-type.js +506 -0
- package/esm2015/src/default-property-interceptor.js +460 -0
- package/{esm2022/src/entity-action.mjs → esm2015/src/entity-action.js} +25 -25
- package/esm2015/src/entity-aspect.js +804 -0
- package/esm2015/src/entity-group.js +187 -0
- package/esm2015/src/entity-key.js +116 -0
- package/esm2015/src/entity-manager.js +2094 -0
- package/esm2015/src/entity-metadata.js +2109 -0
- package/esm2015/src/entity-query.js +1015 -0
- package/esm2015/src/entity-state.js +107 -0
- package/esm2015/src/enum.js +141 -0
- package/esm2015/src/event.js +256 -0
- package/esm2015/src/interface-registry.js +41 -0
- package/esm2015/src/key-generator.js +108 -0
- package/esm2015/src/local-query-comparison-options.js +65 -0
- package/esm2015/src/mapping-context.js +411 -0
- package/esm2015/src/naming-convention.js +88 -0
- package/esm2015/src/observable-array.js +185 -0
- package/esm2015/src/predicate.js +1242 -0
- package/esm2015/src/primitive-array.js +87 -0
- package/esm2015/src/query-options.js +152 -0
- package/esm2015/src/relation-array.js +175 -0
- package/esm2015/src/save-options.js +41 -0
- package/esm2015/src/unattached-children-map.js +58 -0
- package/esm2015/src/validate.js +991 -0
- package/esm2015/src/validation-options.js +64 -0
- package/esm5/adapter-ajax-angularjs/adapter-ajax-angularjs.js +132 -0
- package/esm5/adapter-ajax-angularjs/adapter-core.js +49 -0
- package/esm5/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +5 -0
- package/esm5/adapter-ajax-fetch/adapter-ajax-fetch.js +132 -0
- package/esm5/adapter-ajax-fetch/adapter-core.js +49 -0
- package/esm5/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +5 -0
- package/esm5/adapter-ajax-httpclient/adapter-ajax-httpclient.js +139 -0
- package/esm5/adapter-ajax-httpclient/adapter-core.js +49 -0
- package/esm5/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +5 -0
- package/esm5/adapter-ajax-jquery/adapter-ajax-jquery.js +105 -0
- package/esm5/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +5 -0
- package/esm5/adapter-ajax-post/adapter-ajax-post.js +81 -0
- package/esm5/adapter-ajax-post/breeze-client-adapter-ajax-post.js +5 -0
- package/esm5/adapter-data-service-odata/adapter-core.js +49 -0
- package/{esm2022/adapter-data-service-odata/adapter-data-service-odata.mjs → esm5/adapter-data-service-odata/adapter-data-service-odata.js} +147 -138
- package/esm5/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +5 -0
- package/esm5/adapter-data-service-webapi/adapter-data-service-webapi.js +105 -0
- package/esm5/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +5 -0
- package/esm5/adapter-model-library-backing-store/adapter-model-library-backing-store.js +270 -0
- package/esm5/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +5 -0
- package/esm5/adapter-model-library-ko/adapter-model-library-ko.js +242 -0
- package/esm5/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +5 -0
- package/esm5/adapter-uri-builder-json/adapter-core.js +49 -0
- package/esm5/adapter-uri-builder-json/adapter-uri-builder-json.js +38 -0
- package/esm5/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +5 -0
- package/esm5/adapter-uri-builder-odata/adapter-core.js +49 -0
- package/esm5/adapter-uri-builder-odata/adapter-uri-builder-odata.js +197 -0
- package/esm5/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +5 -0
- package/esm5/breeze-client.js +9 -0
- package/esm5/index.js +2 -0
- package/esm5/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +5 -0
- package/esm5/mixin-get-entity-graph/mixin-get-entity-graph.js +269 -0
- package/esm5/mixin-save-queuing/breeze-client-mixin-save-queuing.js +5 -0
- package/esm5/mixin-save-queuing/mixin-save-queuing.js +412 -0
- package/esm5/src/abstract-data-service-adapter.js +333 -0
- package/esm5/src/array.js +4 -0
- package/esm5/src/assert-param.js +317 -0
- package/esm5/src/breeze.js +85 -0
- package/esm5/src/complex-array.js +119 -0
- package/esm5/src/config.js +228 -0
- package/esm5/src/core.js +722 -0
- package/esm5/src/csdl-metadata-parser.js +385 -0
- package/esm5/src/data-service.js +207 -0
- package/esm5/src/data-type.js +513 -0
- package/esm5/src/default-property-interceptor.js +460 -0
- package/esm5/src/entity-action.js +52 -0
- package/esm5/src/entity-aspect.js +810 -0
- package/esm5/src/entity-group.js +189 -0
- package/esm5/src/entity-key.js +118 -0
- package/esm5/src/entity-manager.js +2112 -0
- package/esm5/src/entity-metadata.js +2144 -0
- package/esm5/src/entity-query.js +1042 -0
- package/esm5/src/entity-state.js +114 -0
- package/esm5/src/enum.js +144 -0
- package/esm5/src/event.js +259 -0
- package/esm5/src/interface-registry.js +43 -0
- package/esm5/src/key-generator.js +111 -0
- package/esm5/src/local-query-comparison-options.js +67 -0
- package/esm5/src/mapping-context.js +413 -0
- package/{esm2022/src/naming-convention.mjs → esm5/src/naming-convention.js} +29 -35
- package/esm5/src/observable-array.js +201 -0
- package/esm5/src/predicate.js +1307 -0
- package/esm5/src/primitive-array.js +87 -0
- package/esm5/src/query-options.js +167 -0
- package/esm5/src/relation-array.js +175 -0
- package/esm5/src/save-options.js +43 -0
- package/esm5/src/unattached-children-map.js +60 -0
- package/{esm2022/src/validate.mjs → esm5/src/validate.js} +110 -116
- package/esm5/src/validation-options.js +66 -0
- package/{fesm2022/breeze-client-adapter-ajax-angularjs.mjs → fesm2015/breeze-client-adapter-ajax-angularjs.js} +1 -6
- package/fesm2015/breeze-client-adapter-ajax-angularjs.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-ajax-fetch.mjs → fesm2015/breeze-client-adapter-ajax-fetch.js} +4 -9
- package/fesm2015/breeze-client-adapter-ajax-fetch.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-ajax-httpclient.mjs → fesm2015/breeze-client-adapter-ajax-httpclient.js} +4 -6
- package/fesm2015/breeze-client-adapter-ajax-httpclient.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-ajax-jquery.mjs → fesm2015/breeze-client-adapter-ajax-jquery.js} +2 -6
- package/fesm2015/breeze-client-adapter-ajax-jquery.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-ajax-post.mjs → fesm2015/breeze-client-adapter-ajax-post.js} +1 -1
- package/fesm2015/breeze-client-adapter-ajax-post.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-data-service-odata.mjs → fesm2015/breeze-client-adapter-data-service-odata.js} +69 -68
- package/fesm2015/breeze-client-adapter-data-service-odata.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-data-service-webapi.mjs → fesm2015/breeze-client-adapter-data-service-webapi.js} +30 -30
- package/fesm2015/breeze-client-adapter-data-service-webapi.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-model-library-backing-store.mjs → fesm2015/breeze-client-adapter-model-library-backing-store.js} +13 -14
- package/fesm2015/breeze-client-adapter-model-library-backing-store.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-model-library-ko.mjs → fesm2015/breeze-client-adapter-model-library-ko.js} +13 -14
- package/fesm2015/breeze-client-adapter-model-library-ko.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-uri-builder-json.mjs → fesm2015/breeze-client-adapter-uri-builder-json.js} +8 -9
- package/fesm2015/breeze-client-adapter-uri-builder-json.js.map +1 -0
- package/{fesm2022/breeze-client-adapter-uri-builder-odata.mjs → fesm2015/breeze-client-adapter-uri-builder-odata.js} +86 -86
- package/fesm2015/breeze-client-adapter-uri-builder-odata.js.map +1 -0
- package/{fesm2022/breeze-client-mixin-get-entity-graph.mjs → fesm2015/breeze-client-mixin-get-entity-graph.js} +1 -1
- package/fesm2015/breeze-client-mixin-get-entity-graph.js.map +1 -0
- package/{fesm2022/breeze-client-mixin-save-queuing.mjs → fesm2015/breeze-client-mixin-save-queuing.js} +2 -23
- package/fesm2015/breeze-client-mixin-save-queuing.js.map +1 -0
- package/{fesm2022/breeze-client.mjs → fesm2015/breeze-client.js} +1543 -2039
- package/fesm2015/breeze-client.js.map +1 -0
- package/fesm5/breeze-client-adapter-ajax-angularjs.js +186 -0
- package/fesm5/breeze-client-adapter-ajax-angularjs.js.map +1 -0
- package/fesm5/breeze-client-adapter-ajax-fetch.js +186 -0
- package/fesm5/breeze-client-adapter-ajax-fetch.js.map +1 -0
- package/fesm5/breeze-client-adapter-ajax-httpclient.js +193 -0
- package/fesm5/breeze-client-adapter-ajax-httpclient.js.map +1 -0
- package/fesm5/breeze-client-adapter-ajax-jquery.js +111 -0
- package/fesm5/breeze-client-adapter-ajax-jquery.js.map +1 -0
- package/fesm5/breeze-client-adapter-ajax-post.js +86 -0
- package/fesm5/breeze-client-adapter-ajax-post.js.map +1 -0
- package/fesm5/breeze-client-adapter-data-service-odata.js +523 -0
- package/fesm5/breeze-client-adapter-data-service-odata.js.map +1 -0
- package/fesm5/breeze-client-adapter-data-service-webapi.js +111 -0
- package/fesm5/breeze-client-adapter-data-service-webapi.js.map +1 -0
- package/fesm5/breeze-client-adapter-model-library-backing-store.js +276 -0
- package/fesm5/breeze-client-adapter-model-library-backing-store.js.map +1 -0
- package/fesm5/breeze-client-adapter-model-library-ko.js +248 -0
- package/fesm5/breeze-client-adapter-model-library-ko.js.map +1 -0
- package/fesm5/breeze-client-adapter-uri-builder-json.js +92 -0
- package/fesm5/breeze-client-adapter-uri-builder-json.js.map +1 -0
- package/fesm5/breeze-client-adapter-uri-builder-odata.js +250 -0
- package/fesm5/breeze-client-adapter-uri-builder-odata.js.map +1 -0
- package/fesm5/breeze-client-mixin-get-entity-graph.js +254 -0
- package/fesm5/breeze-client-mixin-get-entity-graph.js.map +1 -0
- package/fesm5/breeze-client-mixin-save-queuing.js +356 -0
- package/fesm5/breeze-client-mixin-save-queuing.js.map +1 -0
- package/fesm5/breeze-client.js +13956 -0
- package/fesm5/breeze-client.js.map +1 -0
- package/mixin-get-entity-graph/{index.d.ts → breeze-client-mixin-get-entity-graph.d.ts} +0 -1
- package/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.metadata.json +1 -0
- package/mixin-get-entity-graph/package.json +13 -0
- package/mixin-save-queuing/{index.d.ts → breeze-client-mixin-save-queuing.d.ts} +0 -1
- package/mixin-save-queuing/breeze-client-mixin-save-queuing.metadata.json +1 -0
- package/mixin-save-queuing/package.json +13 -0
- package/package.json +11 -93
- package/src/config.d.ts +1 -1
- package/src/core.d.ts +1 -1
- package/src/entity-aspect.d.ts +1 -1
- package/src/entity-metadata.d.ts +6 -8
- package/src/entity-query.d.ts +1 -1
- package/esm2022/adapter-ajax-angularjs/adapter-ajax-angularjs.mjs +0 -135
- package/esm2022/adapter-ajax-angularjs/adapter-core.mjs +0 -49
- package/esm2022/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.mjs +0 -5
- package/esm2022/adapter-ajax-fetch/adapter-ajax-fetch.mjs +0 -135
- package/esm2022/adapter-ajax-fetch/adapter-core.mjs +0 -49
- package/esm2022/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.mjs +0 -5
- package/esm2022/adapter-ajax-httpclient/adapter-ajax-httpclient.mjs +0 -139
- package/esm2022/adapter-ajax-httpclient/adapter-core.mjs +0 -49
- package/esm2022/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.mjs +0 -5
- package/esm2022/adapter-ajax-jquery/adapter-ajax-jquery.mjs +0 -107
- package/esm2022/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.mjs +0 -5
- package/esm2022/adapter-ajax-post/adapter-ajax-post.mjs +0 -77
- package/esm2022/adapter-ajax-post/breeze-client-adapter-ajax-post.mjs +0 -5
- package/esm2022/adapter-data-service-odata/adapter-core.mjs +0 -49
- package/esm2022/adapter-data-service-odata/breeze-client-adapter-data-service-odata.mjs +0 -5
- package/esm2022/adapter-data-service-webapi/adapter-data-service-webapi.mjs +0 -100
- package/esm2022/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.mjs +0 -5
- package/esm2022/adapter-model-library-backing-store/adapter-model-library-backing-store.mjs +0 -269
- package/esm2022/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.mjs +0 -5
- package/esm2022/adapter-model-library-ko/adapter-model-library-ko.mjs +0 -241
- package/esm2022/adapter-model-library-ko/breeze-client-adapter-model-library-ko.mjs +0 -5
- package/esm2022/adapter-uri-builder-json/adapter-core.mjs +0 -49
- package/esm2022/adapter-uri-builder-json/adapter-uri-builder-json.mjs +0 -37
- package/esm2022/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.mjs +0 -5
- package/esm2022/adapter-uri-builder-odata/adapter-core.mjs +0 -49
- package/esm2022/adapter-uri-builder-odata/adapter-uri-builder-odata.mjs +0 -191
- package/esm2022/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.mjs +0 -5
- package/esm2022/breeze-client.mjs +0 -5
- package/esm2022/index.mjs +0 -2
- package/esm2022/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.mjs +0 -5
- package/esm2022/mixin-get-entity-graph/mixin-get-entity-graph.mjs +0 -269
- package/esm2022/mixin-save-queuing/breeze-client-mixin-save-queuing.mjs +0 -5
- package/esm2022/mixin-save-queuing/mixin-save-queuing.mjs +0 -421
- package/esm2022/src/abstract-data-service-adapter.mjs +0 -325
- package/esm2022/src/array.mjs +0 -4
- package/esm2022/src/assert-param.mjs +0 -330
- package/esm2022/src/breeze.mjs +0 -85
- package/esm2022/src/complex-array.mjs +0 -117
- package/esm2022/src/config.mjs +0 -232
- package/esm2022/src/core.mjs +0 -712
- package/esm2022/src/csdl-metadata-parser.mjs +0 -385
- package/esm2022/src/data-service.mjs +0 -239
- package/esm2022/src/data-type.mjs +0 -507
- package/esm2022/src/default-property-interceptor.mjs +0 -460
- package/esm2022/src/entity-aspect.mjs +0 -897
- package/esm2022/src/entity-group.mjs +0 -192
- package/esm2022/src/entity-key.mjs +0 -127
- package/esm2022/src/entity-manager.mjs +0 -2183
- package/esm2022/src/entity-metadata.mjs +0 -2242
- package/esm2022/src/entity-query.mjs +0 -1024
- package/esm2022/src/entity-state.mjs +0 -107
- package/esm2022/src/enum.mjs +0 -143
- package/esm2022/src/event.mjs +0 -264
- package/esm2022/src/interface-registry.mjs +0 -39
- package/esm2022/src/key-generator.mjs +0 -110
- package/esm2022/src/local-query-comparison-options.mjs +0 -75
- package/esm2022/src/mapping-context.mjs +0 -422
- package/esm2022/src/observable-array.mjs +0 -183
- package/esm2022/src/predicate.mjs +0 -1259
- package/esm2022/src/primitive-array.mjs +0 -85
- package/esm2022/src/query-options.mjs +0 -160
- package/esm2022/src/relation-array.mjs +0 -173
- package/esm2022/src/save-options.mjs +0 -51
- package/esm2022/src/unattached-children-map.mjs +0 -56
- package/esm2022/src/validation-options.mjs +0 -78
- package/fesm2022/breeze-client-adapter-ajax-angularjs.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-ajax-fetch.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-ajax-httpclient.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-ajax-jquery.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-ajax-post.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-data-service-odata.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-data-service-webapi.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-model-library-backing-store.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-model-library-ko.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-uri-builder-json.mjs.map +0 -1
- package/fesm2022/breeze-client-adapter-uri-builder-odata.mjs.map +0 -1
- package/fesm2022/breeze-client-mixin-get-entity-graph.mjs.map +0 -1
- package/fesm2022/breeze-client-mixin-save-queuing.mjs.map +0 -1
- package/fesm2022/breeze-client.mjs.map +0 -1
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
import { config, core } from 'breeze-client';
|
|
2
|
-
import { appendQueryStringParameter, encodeParams } from './adapter-core';
|
|
3
|
-
/** Breeze AJAX adapter using fetch API
|
|
4
|
-
* See https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
|
|
5
|
-
*/
|
|
6
|
-
export class AjaxFetchAdapter {
|
|
7
|
-
static adapterName = "fetch";
|
|
8
|
-
name;
|
|
9
|
-
defaultSettings;
|
|
10
|
-
requestInterceptor;
|
|
11
|
-
constructor() {
|
|
12
|
-
this.name = AjaxFetchAdapter.adapterName;
|
|
13
|
-
this.defaultSettings = {};
|
|
14
|
-
this.requestInterceptor = undefined;
|
|
15
|
-
}
|
|
16
|
-
static register(breezeConfig) {
|
|
17
|
-
breezeConfig = breezeConfig || config;
|
|
18
|
-
breezeConfig.registerAdapter("ajax", AjaxFetchAdapter);
|
|
19
|
-
return breezeConfig.initializeAdapterInstance("ajax", AjaxFetchAdapter.adapterName, true);
|
|
20
|
-
}
|
|
21
|
-
initialize() {
|
|
22
|
-
}
|
|
23
|
-
ajax(config) {
|
|
24
|
-
if (!fetch) {
|
|
25
|
-
throw new Error("fetch API not supported in this browser");
|
|
26
|
-
}
|
|
27
|
-
let init = {
|
|
28
|
-
method: config.type,
|
|
29
|
-
mode: 'cors',
|
|
30
|
-
cache: 'no-cache',
|
|
31
|
-
credentials: 'include',
|
|
32
|
-
headers: {
|
|
33
|
-
'Content-Type': config.contentType || 'application/json',
|
|
34
|
-
// ...config.headers
|
|
35
|
-
// 'Content-Type': 'application/x-www-form-urlencoded',
|
|
36
|
-
},
|
|
37
|
-
redirect: 'follow',
|
|
38
|
-
referrer: 'client', // no-referrer, *client
|
|
39
|
-
};
|
|
40
|
-
if (config.type !== "GET" && config.type !== "HEAD") {
|
|
41
|
-
// body data type must match "Content-Type" header
|
|
42
|
-
// let data = config.params || config.data;
|
|
43
|
-
let data = config.data;
|
|
44
|
-
if (typeof (data) !== "string") {
|
|
45
|
-
data = JSON.stringify(data);
|
|
46
|
-
}
|
|
47
|
-
init.body = data;
|
|
48
|
-
}
|
|
49
|
-
let url = config.url;
|
|
50
|
-
if (!core.isEmpty(config.params)) {
|
|
51
|
-
// Hack: Not sure how Fetch handles writing 'search' parameters to the url.
|
|
52
|
-
// so this approach takes over the url param writing completely.
|
|
53
|
-
url = appendQueryStringParameter(url, encodeParams(config.params));
|
|
54
|
-
}
|
|
55
|
-
if (!core.isEmpty(this.defaultSettings)) {
|
|
56
|
-
let compositeConfig = core.extend({}, this.defaultSettings);
|
|
57
|
-
init = core.extend(compositeConfig, init);
|
|
58
|
-
// extend is shallow; extend headers separately
|
|
59
|
-
let headers = core.extend({}, this.defaultSettings.headers); // copy default headers 1st
|
|
60
|
-
init.headers = core.extend(headers, init.headers);
|
|
61
|
-
}
|
|
62
|
-
let requestInfo = {
|
|
63
|
-
adapter: this,
|
|
64
|
-
config: init,
|
|
65
|
-
dsaConfig: config,
|
|
66
|
-
success: successFn,
|
|
67
|
-
error: errorFn, // adapter's error callback
|
|
68
|
-
};
|
|
69
|
-
if (core.isFunction(this.requestInterceptor)) {
|
|
70
|
-
let ri = this.requestInterceptor;
|
|
71
|
-
ri(requestInfo);
|
|
72
|
-
if (ri.oneTime) {
|
|
73
|
-
this.requestInterceptor = undefined;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
if (requestInfo.config) { // exists unless requestInterceptor killed it.
|
|
77
|
-
fetch(url, requestInfo.config).then(response => {
|
|
78
|
-
if (!response.ok) {
|
|
79
|
-
response.text().then(s => {
|
|
80
|
-
requestInfo.error(response.status, response.statusText, s, response, null);
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
response.json().then(j => {
|
|
85
|
-
requestInfo.success(j, response.statusText, response);
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
}).catch(err => {
|
|
89
|
-
requestInfo.error(0, err && err.message || err, null, null, err);
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
function successFn(data, statusText, response) {
|
|
93
|
-
let httpResponse = {
|
|
94
|
-
config: config,
|
|
95
|
-
data: data,
|
|
96
|
-
getHeaders: getHeadersFn(response),
|
|
97
|
-
status: response.status,
|
|
98
|
-
statusText: statusText
|
|
99
|
-
};
|
|
100
|
-
config.success(httpResponse);
|
|
101
|
-
}
|
|
102
|
-
function errorFn(status, statusText, body, response, errorThrown) {
|
|
103
|
-
let httpResponse = {
|
|
104
|
-
config: config,
|
|
105
|
-
data: body,
|
|
106
|
-
error: errorThrown || statusText,
|
|
107
|
-
getHeaders: getHeadersFn(response),
|
|
108
|
-
status: status,
|
|
109
|
-
statusText: statusText
|
|
110
|
-
};
|
|
111
|
-
config.error(httpResponse);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
config.registerAdapter("ajax", AjaxFetchAdapter);
|
|
116
|
-
function getHeadersFn(response) {
|
|
117
|
-
if (!response || response.status === 0) { // timeout or abort; no headers
|
|
118
|
-
return function (headerName) {
|
|
119
|
-
return (headerName && headerName.length > 0) ? "" : {};
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
return function (headerName) {
|
|
124
|
-
if (headerName && headerName.length > 0) {
|
|
125
|
-
return response.headers.get(headerName);
|
|
126
|
-
}
|
|
127
|
-
let hob = {};
|
|
128
|
-
response.headers.forEach((val, key) => {
|
|
129
|
-
hob[key] = val;
|
|
130
|
-
});
|
|
131
|
-
return hob;
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci1hamF4LWZldGNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FkYXB0ZXItYWpheC1mZXRjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFFOztFQUVFO0FBQ0YsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixNQUFNLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUM3QixJQUFJLENBQVM7SUFDYixlQUFlLENBQTJDO0lBQzFELGtCQUFrQixDQUEwQjtJQUU1QztRQUNFLElBQUksQ0FBQyxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRyxDQUFDO1FBQzNCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxTQUFTLENBQUM7SUFDdEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsWUFBMkI7UUFDekMsWUFBWSxHQUFHLFlBQVksSUFBSSxNQUFNLENBQUM7UUFDdEMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RCxPQUFPLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBcUIsQ0FBQztJQUNoSCxDQUFDO0lBRUQsVUFBVTtJQUNWLENBQUM7SUFFRCxJQUFJLENBQUMsTUFBa0I7UUFDckIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQztTQUM1RDtRQUVELElBQUksSUFBSSxHQUFnQjtZQUN0QixNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUk7WUFDbkIsSUFBSSxFQUFFLE1BQU07WUFD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QUFDOztBQUdILE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFFakQsU0FBUyxZQUFZLENBQUMsUUFBa0I7SUFDdEMsSUFBSSxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxFQUFFLCtCQUErQjtRQUN2RSxPQUFPLFVBQVUsVUFBa0I7WUFDakMsT0FBTyxDQUFDLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN6RCxDQUFDLENBQUM7S0FDSDtTQUFNO1FBQ0wsT0FBTyxVQUFVLFVBQWtCO1lBQ2pDLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUN2QyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3pDO1lBQ0QsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ2IsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQ3BDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUM7WUFDakIsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQztLQUNIO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFqYXhBZGFwdGVyLCBBamF4Q29uZmlnLCBBamF4UmVxdWVzdEludGVyY2VwdG9yLCBCcmVlemVDb25maWcsIGNvbmZpZywgY29yZSB9IGZyb20gJ2JyZWV6ZS1jbGllbnQnO1xyXG5pbXBvcnQgeyBhcHBlbmRRdWVyeVN0cmluZ1BhcmFtZXRlciwgZW5jb2RlUGFyYW1zIH0gZnJvbSAnLi9hZGFwdGVyLWNvcmUnO1xyXG5cclxuLyoqIEJyZWV6ZSBBSkFYIGFkYXB0ZXIgdXNpbmcgZmV0Y2ggQVBJIFxyXG4gKiBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0ZldGNoX0FQSS9Vc2luZ19GZXRjaFxyXG4qL1xyXG5leHBvcnQgY2xhc3MgQWpheEZldGNoQWRhcHRlciBpbXBsZW1lbnRzIEFqYXhBZGFwdGVyIHtcclxuICBzdGF0aWMgYWRhcHRlck5hbWUgPSBcImZldGNoXCI7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGRlZmF1bHRTZXR0aW5nczogeyBoZWFkZXJzPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0gfTtcclxuICByZXF1ZXN0SW50ZXJjZXB0b3I/OiBBamF4UmVxdWVzdEludGVyY2VwdG9yO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMubmFtZSA9IEFqYXhGZXRjaEFkYXB0ZXIuYWRhcHRlck5hbWU7XHJcbiAgICB0aGlzLmRlZmF1bHRTZXR0aW5ncyA9IHsgfTtcclxuICAgIHRoaXMucmVxdWVzdEludGVyY2VwdG9yID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJlZ2lzdGVyKGJyZWV6ZUNvbmZpZz86IEJyZWV6ZUNvbmZpZykge1xyXG4gICAgYnJlZXplQ29uZmlnID0gYnJlZXplQ29uZmlnIHx8IGNvbmZpZztcclxuICAgIGJyZWV6ZUNvbmZpZy5yZWdpc3RlckFkYXB0ZXIoXCJhamF4XCIsIEFqYXhGZXRjaEFkYXB0ZXIpO1xyXG4gICAgcmV0dXJuIGJyZWV6ZUNvbmZpZy5pbml0aWFsaXplQWRhcHRlckluc3RhbmNlKFwiYWpheFwiLCBBamF4RmV0Y2hBZGFwdGVyLmFkYXB0ZXJOYW1lLCB0cnVlKSBhcyBBamF4RmV0Y2hBZGFwdGVyO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZSgpIHtcclxuICB9XHJcblxyXG4gIGFqYXgoY29uZmlnOiBBamF4Q29uZmlnKSB7XHJcbiAgICBpZiAoIWZldGNoKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihcImZldGNoIEFQSSBub3Qgc3VwcG9ydGVkIGluIHRoaXMgYnJvd3NlclwiKTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgaW5pdDogUmVxdWVzdEluaXQgPSB7XHJcbiAgICAgIG1ldGhvZDogY29uZmlnLnR5cGUsIC8vICpHRVQsIFBPU1QsIFBVVCwgREVMRVRFLCBldGMuXHJcbiAgICAgIG1vZGU6ICdjb3JzJywgLy8gbm8tY29ycywgKmNvcnMsIHNhbWUtb3JpZ2luXHJcbiAgICAgIGNhY2hlOiAnbm8tY2FjaGUnLCAvLyAqZGVmYXVsdCwgbm8tY2FjaGUsIHJlbG9hZCwgZm9yY2UtY2FjaGUsIG9ubHktaWYtY2FjaGVkXHJcbiAgICAgIGNyZWRlbnRpYWxzOiAnaW5jbHVkZScsIC8vIGluY2x1ZGUsICpzYW1lLW9yaWdpbiwgb21pdFxyXG4gICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6IGNvbmZpZy5jb250ZW50VHlwZSB8fCAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICAgLy8gLi4uY29uZmlnLmhlYWRlcnNcclxuICAgICAgICAvLyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcsXHJcbiAgICAgIH0sXHJcbiAgICAgIHJlZGlyZWN0OiAnZm9sbG93JywgLy8gbWFudWFsLCAqZm9sbG93LCBlcnJvclxyXG4gICAgICByZWZlcnJlcjogJ2NsaWVudCcsIC8vIG5vLXJlZmVycmVyLCAqY2xpZW50XHJcbiAgICB9O1xyXG4gICAgaWYgKGNvbmZpZy50eXBlICE9PSBcIkdFVFwiICYmIGNvbmZpZy50eXBlICE9PSBcIkhFQURcIikge1xyXG4gICAgICAvLyBib2R5IGRhdGEgdHlwZSBtdXN0IG1hdGNoIFwiQ29udGVudC1UeXBlXCIgaGVhZGVyXHJcbiAgICAgIC8vIGxldCBkYXRhID0gY29uZmlnLnBhcmFtcyB8fCBjb25maWcuZGF0YTtcclxuICAgICAgbGV0IGRhdGEgPSBjb25maWcuZGF0YTtcclxuICAgICAgaWYgKHR5cGVvZihkYXRhKSAhPT0gXCJzdHJpbmdcIikge1xyXG4gICAgICAgIGRhdGEgPSBKU09OLnN0cmluZ2lmeShkYXRhKTtcclxuICAgICAgfVxyXG4gICAgICBpbml0LmJvZHkgPSBkYXRhO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCB1cmwgPSBjb25maWcudXJsO1xyXG4gICAgaWYgKCFjb3JlLmlzRW1wdHkoY29uZmlnLnBhcmFtcykpIHtcclxuICAgICAgLy8gSGFjazogTm90IHN1cmUgaG93IEZldGNoIGhhbmRsZXMgd3JpdGluZyAnc2VhcmNoJyBwYXJhbWV0ZXJzIHRvIHRoZSB1cmwuXHJcbiAgICAgIC8vIHNvIHRoaXMgYXBwcm9hY2ggdGFrZXMgb3ZlciB0aGUgdXJsIHBhcmFtIHdyaXRpbmcgY29tcGxldGVseS5cclxuICAgICAgdXJsID0gYXBwZW5kUXVlcnlTdHJpbmdQYXJhbWV0ZXIodXJsLCBlbmNvZGVQYXJhbXMoY29uZmlnLnBhcmFtcykpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghY29yZS5pc0VtcHR5KHRoaXMuZGVmYXVsdFNldHRpbmdzKSkge1xyXG4gICAgICBsZXQgY29tcG9zaXRlQ29uZmlnID0gY29yZS5leHRlbmQoe30sIHRoaXMuZGVmYXVsdFNldHRpbmdzKTtcclxuICAgICAgaW5pdCA9IGNvcmUuZXh0ZW5kKGNvbXBvc2l0ZUNvbmZpZywgaW5pdCkgYXMgYW55O1xyXG4gICAgICAvLyBleHRlbmQgaXMgc2hhbGxvdzsgZXh0ZW5kIGhlYWRlcnMgc2VwYXJhdGVseVxyXG4gICAgICBsZXQgaGVhZGVycyA9IGNvcmUuZXh0ZW5kKHt9LCB0aGlzLmRlZmF1bHRTZXR0aW5ncy5oZWFkZXJzKTsgLy8gY29weSBkZWZhdWx0IGhlYWRlcnMgMXN0XHJcbiAgICAgIGluaXQuaGVhZGVycyA9IGNvcmUuZXh0ZW5kKGhlYWRlcnMsIGluaXQuaGVhZGVycykgYXMgYW55O1xyXG4gICAgfVxyXG5cclxuICAgIGxldCByZXF1ZXN0SW5mbyA9IHtcclxuICAgICAgYWRhcHRlcjogdGhpcywgICAgICAvLyB0aGlzIGFkYXB0ZXJcclxuICAgICAgY29uZmlnOiBpbml0LCAgIC8vIGZldGNoIGFwaSAnaW5pdCcgb2JqZWN0XHJcbiAgICAgIGRzYUNvbmZpZzogY29uZmlnLCAgLy8gdGhlIGNvbmZpZyBhcmcgZnJvbSB0aGUgY2FsbGluZyBCcmVlemUgRGF0YVNlcnZpY2VBZGFwdGVyXHJcbiAgICAgIHN1Y2Nlc3M6IHN1Y2Nlc3NGbiwgLy8gYWRhcHRlcidzIHN1Y2Nlc3MgY2FsbGJhY2tcclxuICAgICAgZXJyb3I6IGVycm9yRm4sICAgICAgLy8gYWRhcHRlcidzIGVycm9yIGNhbGxiYWNrXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChjb3JlLmlzRnVuY3Rpb24odGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3IpKSB7XHJcbiAgICAgIGxldCByaSA9IHRoaXMucmVxdWVzdEludGVyY2VwdG9yIGFzIGFueTtcclxuICAgICAgcmkocmVxdWVzdEluZm8pO1xyXG4gICAgICBpZiAocmkub25lVGltZSkge1xyXG4gICAgICAgIHRoaXMucmVxdWVzdEludGVyY2VwdG9yID0gdW5kZWZpbmVkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHJlcXVlc3RJbmZvLmNvbmZpZykgeyAvLyBleGlzdHMgdW5sZXNzIHJlcXVlc3RJbnRlcmNlcHRvciBraWxsZWQgaXQuXHJcbiAgICAgIGZldGNoKHVybCwgcmVxdWVzdEluZm8uY29uZmlnKS50aGVuKHJlc3BvbnNlID0+IHtcclxuICAgICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XHJcbiAgICAgICAgICByZXNwb25zZS50ZXh0KCkudGhlbihzID0+IHtcclxuICAgICAgICAgICAgcmVxdWVzdEluZm8uZXJyb3IocmVzcG9uc2Uuc3RhdHVzLCByZXNwb25zZS5zdGF0dXNUZXh0LCBzLCByZXNwb25zZSwgbnVsbCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzcG9uc2UuanNvbigpLnRoZW4oaiA9PiB7XHJcbiAgICAgICAgICAgIHJlcXVlc3RJbmZvLnN1Y2Nlc3MoaiwgcmVzcG9uc2Uuc3RhdHVzVGV4dCwgcmVzcG9uc2UpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KS5jYXRjaChlcnIgPT4ge1xyXG4gICAgICAgIHJlcXVlc3RJbmZvLmVycm9yKDAsIGVyciAmJiBlcnIubWVzc2FnZSB8fCBlcnIsIG51bGwsIG51bGwsIGVycik7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGZ1bmN0aW9uIHN1Y2Nlc3NGbihkYXRhOiBhbnksIHN0YXR1c1RleHQ6IHN0cmluZywgcmVzcG9uc2U6IFJlc3BvbnNlKSB7XHJcbiAgICAgIGxldCBodHRwUmVzcG9uc2UgPSB7XHJcbiAgICAgICAgY29uZmlnOiBjb25maWcsXHJcbiAgICAgICAgZGF0YTogZGF0YSxcclxuICAgICAgICBnZXRIZWFkZXJzOiBnZXRIZWFkZXJzRm4ocmVzcG9uc2UpLFxyXG4gICAgICAgIHN0YXR1czogcmVzcG9uc2Uuc3RhdHVzLFxyXG4gICAgICAgIHN0YXR1c1RleHQ6IHN0YXR1c1RleHRcclxuICAgICAgfTtcclxuICAgICAgY29uZmlnLnN1Y2Nlc3MoaHR0cFJlc3BvbnNlKTtcclxuICAgIH1cclxuXHJcbiAgICBmdW5jdGlvbiBlcnJvckZuKHN0YXR1czogbnVtYmVyLCBzdGF0dXNUZXh0OiBzdHJpbmcsIGJvZHk6IHN0cmluZywgcmVzcG9uc2U6IFJlc3BvbnNlLCBlcnJvclRocm93bjogYW55KSB7XHJcbiAgICAgIGxldCBodHRwUmVzcG9uc2UgPSB7XHJcbiAgICAgICAgY29uZmlnOiBjb25maWcsXHJcbiAgICAgICAgZGF0YTogYm9keSxcclxuICAgICAgICBlcnJvcjogZXJyb3JUaHJvd24gfHwgc3RhdHVzVGV4dCxcclxuICAgICAgICBnZXRIZWFkZXJzOiBnZXRIZWFkZXJzRm4ocmVzcG9uc2UpLFxyXG4gICAgICAgIHN0YXR1czogc3RhdHVzLFxyXG4gICAgICAgIHN0YXR1c1RleHQ6IHN0YXR1c1RleHRcclxuICAgICAgfTtcclxuICAgICAgY29uZmlnLmVycm9yKGh0dHBSZXNwb25zZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5jb25maWcucmVnaXN0ZXJBZGFwdGVyKFwiYWpheFwiLCBBamF4RmV0Y2hBZGFwdGVyKTtcclxuXHJcbmZ1bmN0aW9uIGdldEhlYWRlcnNGbihyZXNwb25zZTogUmVzcG9uc2UpOiBhbnkge1xyXG4gIGlmICghcmVzcG9uc2UgfHwgcmVzcG9uc2Uuc3RhdHVzID09PSAwKSB7IC8vIHRpbWVvdXQgb3IgYWJvcnQ7IG5vIGhlYWRlcnNcclxuICAgIHJldHVybiBmdW5jdGlvbiAoaGVhZGVyTmFtZTogc3RyaW5nKSB7XHJcbiAgICAgIHJldHVybiAoaGVhZGVyTmFtZSAmJiBoZWFkZXJOYW1lLmxlbmd0aCA+IDApID8gXCJcIiA6IHt9O1xyXG4gICAgfTtcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIGZ1bmN0aW9uIChoZWFkZXJOYW1lOiBzdHJpbmcpIHtcclxuICAgICAgaWYgKGhlYWRlck5hbWUgJiYgaGVhZGVyTmFtZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmhlYWRlcnMuZ2V0KGhlYWRlck5hbWUpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBob2IgPSB7fTtcclxuICAgICAgcmVzcG9uc2UuaGVhZGVycy5mb3JFYWNoKCh2YWwsIGtleSkgPT4ge1xyXG4gICAgICAgIGhvYltrZXldID0gdmFsO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIGhvYjtcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/** Appends parameter to url, with appropriate delimiter */
|
|
2
|
-
export function appendQueryStringParameter(url, parameter) {
|
|
3
|
-
if (!parameter)
|
|
4
|
-
return url;
|
|
5
|
-
let separator = url.endsWith("?") ? "" : url.includes("?") ? "&" : "?";
|
|
6
|
-
return url + separator + parameter;
|
|
7
|
-
}
|
|
8
|
-
/** Encodes the object into query string parameters */
|
|
9
|
-
export function encodeParams(obj) {
|
|
10
|
-
let query = '';
|
|
11
|
-
let subValue, innerObj, fullSubName;
|
|
12
|
-
for (let name in obj) {
|
|
13
|
-
if (!obj.hasOwnProperty(name)) {
|
|
14
|
-
continue;
|
|
15
|
-
}
|
|
16
|
-
let value = obj[name];
|
|
17
|
-
if (value instanceof Array) {
|
|
18
|
-
for (let i = 0; i < value.length; ++i) {
|
|
19
|
-
subValue = value[i];
|
|
20
|
-
fullSubName = name + '[' + i + ']';
|
|
21
|
-
innerObj = {};
|
|
22
|
-
innerObj[fullSubName] = subValue;
|
|
23
|
-
query += encodeParams(innerObj) + '&';
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
else if (value && value.toISOString) { // a feature of Date-like things
|
|
27
|
-
query += encodeURIComponent(name) + '=' + encodeURIComponent(value.toISOString()) + '&';
|
|
28
|
-
}
|
|
29
|
-
else if (value instanceof Object) {
|
|
30
|
-
for (let subName in value) {
|
|
31
|
-
if (obj.hasOwnProperty(name)) {
|
|
32
|
-
subValue = value[subName];
|
|
33
|
-
fullSubName = name + '[' + subName + ']';
|
|
34
|
-
innerObj = {};
|
|
35
|
-
innerObj[fullSubName] = subValue;
|
|
36
|
-
query += encodeParams(innerObj) + '&';
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
else if (value === null) {
|
|
41
|
-
query += encodeURIComponent(name) + '=&';
|
|
42
|
-
}
|
|
43
|
-
else if (value !== undefined) {
|
|
44
|
-
query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&';
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return query.length ? query.substr(0, query.length - 1) : query;
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci1jb3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FkYXB0ZXItY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyREFBMkQ7QUFDM0QsTUFBTSxVQUFVLDBCQUEwQixDQUFDLEdBQVcsRUFBRSxTQUFpQjtJQUN2RSxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU8sR0FBRyxDQUFDO0lBRTNCLElBQUksU0FBUyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFFdkUsT0FBTyxHQUFHLEdBQUcsU0FBUyxHQUFHLFNBQVMsQ0FBQztBQUNyQyxDQUFDO0FBRUQsc0RBQXNEO0FBQ3RELE1BQU0sVUFBVSxZQUFZLENBQUMsR0FBTztJQUNsQyxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDZixJQUFJLFFBQWEsRUFBRSxRQUFhLEVBQUUsV0FBZ0IsQ0FBQztJQUVuRCxLQUFLLElBQUksSUFBSSxJQUFJLEdBQUcsRUFBRTtRQUNwQixJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUFFLFNBQVM7U0FBRTtRQUU1QyxJQUFJLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdEIsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO1lBQzFCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dCQUNyQyxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwQixXQUFXLEdBQUcsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDO2dCQUNuQyxRQUFRLEdBQUcsRUFBRSxDQUFDO2dCQUNkLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxRQUFRLENBQUM7Z0JBQ2pDLEtBQUssSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDO2FBQ3ZDO1NBQ0Y7YUFBTSxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsZ0NBQWdDO1lBQ3ZFLEtBQUssSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ3pGO2FBQU0sSUFBSSxLQUFLLFlBQVksTUFBTSxFQUFFO1lBQ2xDLEtBQUssSUFBSSxPQUFPLElBQUksS0FBSyxFQUFFO2dCQUN6QixJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQzVCLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQzFCLFdBQVcsR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLE9BQU8sR0FBRyxHQUFHLENBQUM7b0JBQ3pDLFFBQVEsR0FBRyxFQUFFLENBQUM7b0JBQ2QsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLFFBQVEsQ0FBQztvQkFDakMsS0FBSyxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUM7aUJBQ3ZDO2FBQ0Y7U0FDRjthQUFNLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUN6QixLQUFLLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO1NBQzFDO2FBQU0sSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQzlCLEtBQUssSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQzNFO0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUNsRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIEFwcGVuZHMgcGFyYW1ldGVyIHRvIHVybCwgd2l0aCBhcHByb3ByaWF0ZSBkZWxpbWl0ZXIgKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFwcGVuZFF1ZXJ5U3RyaW5nUGFyYW1ldGVyKHVybDogc3RyaW5nLCBwYXJhbWV0ZXI6IHN0cmluZykge1xyXG4gIGlmICghcGFyYW1ldGVyKSByZXR1cm4gdXJsO1xyXG5cclxuICBsZXQgc2VwYXJhdG9yID0gdXJsLmVuZHNXaXRoKFwiP1wiKSA/IFwiXCIgOiB1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIjtcclxuXHJcbiAgcmV0dXJuIHVybCArIHNlcGFyYXRvciArIHBhcmFtZXRlcjtcclxufVxyXG5cclxuLyoqIEVuY29kZXMgdGhlIG9iamVjdCBpbnRvIHF1ZXJ5IHN0cmluZyBwYXJhbWV0ZXJzICovXHJcbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVQYXJhbXMob2JqOiB7fSkge1xyXG4gIGxldCBxdWVyeSA9ICcnO1xyXG4gIGxldCBzdWJWYWx1ZTogYW55LCBpbm5lck9iajogYW55LCBmdWxsU3ViTmFtZTogYW55O1xyXG5cclxuICBmb3IgKGxldCBuYW1lIGluIG9iaikge1xyXG4gICAgaWYgKCFvYmouaGFzT3duUHJvcGVydHkobmFtZSkpIHsgY29udGludWU7IH1cclxuXHJcbiAgICBsZXQgdmFsdWUgPSBvYmpbbmFtZV07XHJcblxyXG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7ICsraSkge1xyXG4gICAgICAgIHN1YlZhbHVlID0gdmFsdWVbaV07XHJcbiAgICAgICAgZnVsbFN1Yk5hbWUgPSBuYW1lICsgJ1snICsgaSArICddJztcclxuICAgICAgICBpbm5lck9iaiA9IHt9O1xyXG4gICAgICAgIGlubmVyT2JqW2Z1bGxTdWJOYW1lXSA9IHN1YlZhbHVlO1xyXG4gICAgICAgIHF1ZXJ5ICs9IGVuY29kZVBhcmFtcyhpbm5lck9iaikgKyAnJic7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodmFsdWUgJiYgdmFsdWUudG9JU09TdHJpbmcpIHsgLy8gYSBmZWF0dXJlIG9mIERhdGUtbGlrZSB0aGluZ3NcclxuICAgICAgcXVlcnkgKz0gZW5jb2RlVVJJQ29tcG9uZW50KG5hbWUpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlLnRvSVNPU3RyaW5nKCkpICsgJyYnO1xyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdCkge1xyXG4gICAgICBmb3IgKGxldCBzdWJOYW1lIGluIHZhbHVlKSB7XHJcbiAgICAgICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShuYW1lKSkge1xyXG4gICAgICAgICAgc3ViVmFsdWUgPSB2YWx1ZVtzdWJOYW1lXTtcclxuICAgICAgICAgIGZ1bGxTdWJOYW1lID0gbmFtZSArICdbJyArIHN1Yk5hbWUgKyAnXSc7XHJcbiAgICAgICAgICBpbm5lck9iaiA9IHt9O1xyXG4gICAgICAgICAgaW5uZXJPYmpbZnVsbFN1Yk5hbWVdID0gc3ViVmFsdWU7XHJcbiAgICAgICAgICBxdWVyeSArPSBlbmNvZGVQYXJhbXMoaW5uZXJPYmopICsgJyYnO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xyXG4gICAgICBxdWVyeSArPSBlbmNvZGVVUklDb21wb25lbnQobmFtZSkgKyAnPSYnO1xyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHF1ZXJ5ICs9IGVuY29kZVVSSUNvbXBvbmVudChuYW1lKSArICc9JyArIGVuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSkgKyAnJic7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcXVlcnkubGVuZ3RoID8gcXVlcnkuc3Vic3RyKDAsIHF1ZXJ5Lmxlbmd0aCAtIDEpIDogcXVlcnk7XHJcbn1cclxuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './adapter-ajax-fetch';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlZXplLWNsaWVudC1hZGFwdGVyLWFqYXgtZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnJlZXplLWNsaWVudC1hZGFwdGVyLWFqYXgtZmV0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2FkYXB0ZXItYWpheC1mZXRjaCc7XG4iXX0=
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { HttpHeaders, HttpRequest, HttpResponse } from "@angular/common/http";
|
|
2
|
-
import { config, core } from "breeze-client";
|
|
3
|
-
import { filter, map } from "rxjs/operators";
|
|
4
|
-
import { appendQueryStringParameter, encodeParams } from "./adapter-core";
|
|
5
|
-
export class AjaxHttpClientAdapter {
|
|
6
|
-
http;
|
|
7
|
-
static adapterName = 'httpclient';
|
|
8
|
-
name = AjaxHttpClientAdapter.adapterName;
|
|
9
|
-
defaultSettings = {};
|
|
10
|
-
requestInterceptor;
|
|
11
|
-
constructor(http) {
|
|
12
|
-
this.http = http;
|
|
13
|
-
}
|
|
14
|
-
static register(http, breezeConfig) {
|
|
15
|
-
breezeConfig = breezeConfig || config;
|
|
16
|
-
breezeConfig.registerAdapter("ajax", function () { return new AjaxHttpClientAdapter(http); });
|
|
17
|
-
return breezeConfig.initializeAdapterInstance("ajax", AjaxHttpClientAdapter.adapterName, true);
|
|
18
|
-
}
|
|
19
|
-
initialize() { }
|
|
20
|
-
ajax(config) {
|
|
21
|
-
if (!this.http) {
|
|
22
|
-
throw new Error('Unable to locate angular http module for ajax adapter');
|
|
23
|
-
}
|
|
24
|
-
// merge default DataSetAdapter Settings with config arg
|
|
25
|
-
if (!core.isEmpty(this.defaultSettings)) {
|
|
26
|
-
let compositeConfig = core.extend({}, this.defaultSettings);
|
|
27
|
-
config = core.extend(compositeConfig, config);
|
|
28
|
-
// extend is shallow; extend headers separately
|
|
29
|
-
let headers = core.extend({}, this.defaultSettings['headers']); // copy default headers 1st
|
|
30
|
-
config['headers'] = core.extend(headers, config.headers);
|
|
31
|
-
}
|
|
32
|
-
if (config.crossDomain) {
|
|
33
|
-
throw new Error(this.name + ' does not support JSONP (crossDomain) requests');
|
|
34
|
-
}
|
|
35
|
-
// Hack: Not sure how Angular handles writing 'search' parameters to the url.
|
|
36
|
-
// so this approach takes over the url param writing completely.
|
|
37
|
-
const parameters = core.isEmpty(config.params) ? null : encodeParams(config.params);
|
|
38
|
-
const url = appendQueryStringParameter(config.url, parameters);
|
|
39
|
-
let headers = new HttpHeaders(config.headers || {});
|
|
40
|
-
if (!headers.has('Content-Type')) {
|
|
41
|
-
if (config.type !== 'GET' && config.type !== 'DELETE' && !!config.contentType) {
|
|
42
|
-
headers = headers.set('Content-Type', config.contentType || 'application/json; charset=utf-8');
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
let body = config.data;
|
|
46
|
-
let request = new HttpRequest((config.type || 'GET').toUpperCase(), url, body, { headers: headers, responseType: "text" });
|
|
47
|
-
let requestInfo = {
|
|
48
|
-
adapter: this,
|
|
49
|
-
request: request,
|
|
50
|
-
dsaConfig: config,
|
|
51
|
-
success: successFn,
|
|
52
|
-
error: errorFn // adapter's error callback
|
|
53
|
-
};
|
|
54
|
-
if (core.isFunction(this.requestInterceptor)) {
|
|
55
|
-
this.requestInterceptor(requestInfo);
|
|
56
|
-
if (this.requestInterceptor['oneTime']) {
|
|
57
|
-
this.requestInterceptor = null;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
if (requestInfo.request) { // exists unless requestInterceptor killed it.
|
|
61
|
-
const ffilter = filter((response) => response instanceof HttpResponse);
|
|
62
|
-
const fmap = map(extractData);
|
|
63
|
-
fmap(ffilter(this.http.request(requestInfo.request)))
|
|
64
|
-
.forEach(requestInfo.success)
|
|
65
|
-
.catch(requestInfo.error);
|
|
66
|
-
}
|
|
67
|
-
function extractData(event) {
|
|
68
|
-
let response = event;
|
|
69
|
-
let data;
|
|
70
|
-
let dt = requestInfo.dsaConfig.dataType;
|
|
71
|
-
// beware:`res.json` and `res.text` will be async some day
|
|
72
|
-
if (dt && dt !== 'json') {
|
|
73
|
-
data = response.body;
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
data = JSON.parse(response.body);
|
|
77
|
-
}
|
|
78
|
-
return { data, response };
|
|
79
|
-
}
|
|
80
|
-
function successFn(arg) {
|
|
81
|
-
if (arg.response.status < 200 || arg.response.status >= 300) {
|
|
82
|
-
throw { data: arg.data, response: arg.response };
|
|
83
|
-
}
|
|
84
|
-
let httpResponse = {
|
|
85
|
-
config: requestInfo.request,
|
|
86
|
-
data: arg.data,
|
|
87
|
-
getHeaders: makeGetHeaders(arg.response.headers),
|
|
88
|
-
status: arg.response.status
|
|
89
|
-
};
|
|
90
|
-
httpResponse['ngConfig'] = requestInfo.request;
|
|
91
|
-
httpResponse['statusText'] = arg.response.statusText;
|
|
92
|
-
httpResponse['response'] = arg.response;
|
|
93
|
-
config.success(httpResponse);
|
|
94
|
-
}
|
|
95
|
-
function errorFn(response) {
|
|
96
|
-
if (response instanceof Error) {
|
|
97
|
-
throw response; // program error; nothing we can do
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
let data;
|
|
101
|
-
if (response.error instanceof HttpResponse) {
|
|
102
|
-
data = response.error.body;
|
|
103
|
-
}
|
|
104
|
-
else if (response.error instanceof Error) {
|
|
105
|
-
data = response.error.message;
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
data = response.error;
|
|
109
|
-
}
|
|
110
|
-
// Timeout appears as an error with status===0 and no data.
|
|
111
|
-
if (response.status === 0 && data == null) {
|
|
112
|
-
data = 'timeout';
|
|
113
|
-
}
|
|
114
|
-
let errorMessage = response.status + ": " + response.statusText;
|
|
115
|
-
if (data && typeof data === 'object') {
|
|
116
|
-
data["message"] = data["message"] || errorMessage; // breeze looks at the message property
|
|
117
|
-
}
|
|
118
|
-
if (!data) {
|
|
119
|
-
data = errorMessage; // Return the error message as data
|
|
120
|
-
}
|
|
121
|
-
let httpResponse = {
|
|
122
|
-
config: requestInfo.request,
|
|
123
|
-
data: data,
|
|
124
|
-
getHeaders: makeGetHeaders(response.headers),
|
|
125
|
-
status: response.status
|
|
126
|
-
};
|
|
127
|
-
httpResponse['ngConfig'] = requestInfo.request;
|
|
128
|
-
httpResponse['statusText'] = response.statusText;
|
|
129
|
-
httpResponse['response'] = response;
|
|
130
|
-
config.error(httpResponse); // send error to breeze error handler
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
///// Helpers ////
|
|
136
|
-
function makeGetHeaders(headers) {
|
|
137
|
-
return function getHeaders(headerName) { return headers.getAll(headerName).join('\r\n'); };
|
|
138
|
-
}
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci1hamF4LWh0dHBjbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRhcHRlci1hamF4LWh0dHBjbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QyxXQUFXLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hILE9BQU8sRUFBYyxNQUFNLEVBQUUsSUFBSSxFQUF5RixNQUFNLGVBQWUsQ0FBQztBQUNoSixPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRSxNQUFNLE9BQU8scUJBQXFCO0lBTWI7SUFMbkIsTUFBTSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUM7SUFDbEMsSUFBSSxHQUFHLHFCQUFxQixDQUFDLFdBQVcsQ0FBQztJQUN6QyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLGtCQUFrQixDQUF5QjtJQUUzQyxZQUFtQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO0lBQUksQ0FBQztJQUV4QyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQWdCLEVBQUUsWUFBMkI7UUFDM0QsWUFBWSxHQUFHLFlBQVksSUFBSSxNQUFNLENBQUM7UUFDdEMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQU8sY0FBYyxPQUFPLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuRyxPQUFPLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQyxNQUFNLEVBQUUscUJBQXFCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBMEIsQ0FBQztJQUMxSCxDQUFDO0lBRUQsVUFBVSxLQUFLLENBQUM7SUFFaEIsSUFBSSxDQUFDLE1BQWtCO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENB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SUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFFLHVDQUF1QztpQkFDNUY7Z0JBQ0QsSUFBSSxDQUFDLElBQUksRUFBRTtvQkFDVCxJQUFJLEdBQUcsWUFBWSxDQUFDLENBQUcsbUNBQW1DO2lCQUMzRDtnQkFDRCxJQUFJLFlBQVksR0FBdUI7b0JBQ3JDLE1BQU0sRUFBRSxXQUFXLENBQUMsT0FBTztvQkFDM0IsSUFBSSxFQUFFLElBQUk7b0JBQ1YsVUFBVSxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO29CQUM1QyxNQUFNLEVBQUUsUUFBUSxDQUFDLE1BQU07aUJBQ3hCLENBQUM7Z0JBQ0YsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUM7Z0JBQy9DLFlBQVksQ0FBQyxZQUFZLENBQUMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO2dCQUNqRCxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFDO2dCQUVwQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMscUNBQXFDO2FBQ2xFO1FBQ0gsQ0FBQztJQUNILENBQUM7O0FBSUgsa0JBQWtCO0FBRWxCLFNBQVMsY0FBYyxDQUFDLE9BQW9CO0lBQzFDLE9BQU8sU0FBUyxVQUFVLENBQUMsVUFBbUIsSUFBSSxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3RHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cEV2ZW50LCBIdHRwSGVhZGVycywgSHR0cFJlcXVlc3QsIEh0dHBSZXNwb25zZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBBamF4Q29uZmlnLCBjb25maWcsIGNvcmUsIEh0dHBSZXNwb25zZSBhcyBCcmVlemVIdHRwUmVzcG9uc2UsIEJyZWV6ZUNvbmZpZywgQWpheFJlcXVlc3RJbnRlcmNlcHRvciwgQWpheEFkYXB0ZXIgfSBmcm9tIFwiYnJlZXplLWNsaWVudFwiO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBhcHBlbmRRdWVyeVN0cmluZ1BhcmFtZXRlciwgZW5jb2RlUGFyYW1zIH0gZnJvbSBcIi4vYWRhcHRlci1jb3JlXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQWpheEh0dHBDbGllbnRBZGFwdGVyIGltcGxlbWVudHMgQWpheEFkYXB0ZXIge1xyXG4gIHN0YXRpYyBhZGFwdGVyTmFtZSA9ICdodHRwY2xpZW50JztcclxuICBuYW1lID0gQWpheEh0dHBDbGllbnRBZGFwdGVyLmFkYXB0ZXJOYW1lO1xyXG4gIGRlZmF1bHRTZXR0aW5ncyA9IHt9O1xyXG4gIHJlcXVlc3RJbnRlcmNlcHRvcjogQWpheFJlcXVlc3RJbnRlcmNlcHRvcjtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGh0dHA6IEh0dHBDbGllbnQpIHsgfVxyXG5cclxuICBzdGF0aWMgcmVnaXN0ZXIoaHR0cDogSHR0cENsaWVudCwgYnJlZXplQ29uZmlnPzogQnJlZXplQ29uZmlnKSB7XHJcbiAgICBicmVlemVDb25maWcgPSBicmVlemVDb25maWcgfHwgY29uZmlnO1xyXG4gICAgYnJlZXplQ29uZmlnLnJlZ2lzdGVyQWRhcHRlcihcImFqYXhcIiwgPGFueT5mdW5jdGlvbiAoKSB7IHJldHVybiBuZXcgQWpheEh0dHBDbGllbnRBZGFwdGVyKGh0dHApOyB9KTtcclxuICAgIHJldHVybiBicmVlemVDb25maWcuaW5pdGlhbGl6ZUFkYXB0ZXJJbnN0YW5jZShcImFqYXhcIiwgQWpheEh0dHBDbGllbnRBZGFwdGVyLmFkYXB0ZXJOYW1lLCB0cnVlKSBhcyBBamF4SHR0cENsaWVudEFkYXB0ZXI7XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplKCkgeyB9XHJcblxyXG4gIGFqYXgoY29uZmlnOiBBamF4Q29uZmlnKSB7XHJcbiAgICBpZiAoIXRoaXMuaHR0cCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBsb2NhdGUgYW5ndWxhciBodHRwIG1vZHVsZSBmb3IgYWpheCBhZGFwdGVyJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gbWVyZ2UgZGVmYXVsdCBEYXRhU2V0QWRhcHRlciBTZXR0aW5ncyB3aXRoIGNvbmZpZyBhcmdcclxuICAgIGlmICghY29yZS5pc0VtcHR5KHRoaXMuZGVmYXVsdFNldHRpbmdzKSkge1xyXG4gICAgICBsZXQgY29tcG9zaXRlQ29uZmlnID0gY29yZS5leHRlbmQoe30sIHRoaXMuZGVmYXVsdFNldHRpbmdzKTtcclxuICAgICAgY29uZmlnID0gPEFqYXhDb25maWc+Y29yZS5leHRlbmQoY29tcG9zaXRlQ29uZmlnLCBjb25maWcpO1xyXG4gICAgICAvLyBleHRlbmQgaXMgc2hhbGxvdzsgZXh0ZW5kIGhlYWRlcnMgc2VwYXJhdGVseVxyXG4gICAgICBsZXQgaGVhZGVycyA9IGNvcmUuZXh0ZW5kKHt9LCB0aGlzLmRlZmF1bHRTZXR0aW5nc1snaGVhZGVycyddKTsgLy8gY29weSBkZWZhdWx0IGhlYWRlcnMgMXN0XHJcbiAgICAgIGNvbmZpZ1snaGVhZGVycyddID0gY29yZS5leHRlbmQoaGVhZGVycywgY29uZmlnLmhlYWRlcnMpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb25maWcuY3Jvc3NEb21haW4pIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKHRoaXMubmFtZSArICcgZG9lcyBub3Qgc3VwcG9ydCBKU09OUCAoY3Jvc3NEb21haW4pIHJlcXVlc3RzJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSGFjazogTm90IHN1cmUgaG93IEFuZ3VsYXIgaGFuZGxlcyB3cml0aW5nICdzZWFyY2gnIHBhcmFtZXRlcnMgdG8gdGhlIHVybC5cclxuICAgIC8vIHNvIHRoaXMgYXBwcm9hY2ggdGFrZXMgb3ZlciB0aGUgdXJsIHBhcmFtIHdyaXRpbmcgY29tcGxldGVseS5cclxuICAgIGNvbnN0IHBhcmFtZXRlcnMgPSBjb3JlLmlzRW1wdHkoY29uZmlnLnBhcmFtcykgPyBudWxsIDogZW5jb2RlUGFyYW1zKGNvbmZpZy5wYXJhbXMpO1xyXG4gICAgY29uc3QgdXJsID0gYXBwZW5kUXVlcnlTdHJpbmdQYXJhbWV0ZXIoY29uZmlnLnVybCwgcGFyYW1ldGVycyk7XHJcblxyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoY29uZmlnLmhlYWRlcnMgfHwge30pO1xyXG4gICAgaWYgKCFoZWFkZXJzLmhhcygnQ29udGVudC1UeXBlJykpIHtcclxuICAgICAgaWYgKGNvbmZpZy50eXBlICE9PSAnR0VUJyAmJiBjb25maWcudHlwZSAhPT0gJ0RFTEVURScgJiYgISFjb25maWcuY29udGVudFR5cGUpIHtcclxuICAgICAgICBoZWFkZXJzID0gaGVhZGVycy5zZXQoJ0NvbnRlbnQtVHlwZScsXHJcbiAgICAgICAgICA8c3RyaW5nPmNvbmZpZy5jb250ZW50VHlwZSB8fCAnYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGJvZHk6IGFueSA9IGNvbmZpZy5kYXRhO1xyXG4gICAgbGV0IHJlcXVlc3QgPSBuZXcgSHR0cFJlcXVlc3QoKGNvbmZpZy50eXBlIHx8ICdHRVQnKS50b1VwcGVyQ2FzZSgpLCB1cmwsIGJvZHksIHsgaGVhZGVyczogaGVhZGVycywgcmVzcG9uc2VUeXBlOiBcInRleHRcIiB9KTtcclxuXHJcbiAgICBsZXQgcmVxdWVzdEluZm8gPSB7XHJcbiAgICAgIGFkYXB0ZXI6IHRoaXMsICAgICAgLy8gdGhpcyBhZGFwdGVyXHJcbiAgICAgIHJlcXVlc3Q6IHJlcXVlc3QsICAgLy8gdGhlIGh0dHAgcmVxdWVzdCBmcm9tIHRoZSByZXF1ZXN0T3B0aW9uc1xyXG4gICAgICBkc2FDb25maWc6IGNvbmZpZywgIC8vIHRoZSBjb25maWcgYXJnIGZyb20gdGhlIGNhbGxpbmcgQnJlZXplIERhdGFTZXJ2aWNlQWRhcHRlclxyXG4gICAgICBzdWNjZXNzOiBzdWNjZXNzRm4sIC8vIGFkYXB0ZXIncyBzdWNjZXNzIGNhbGxiYWNrXHJcbiAgICAgIGVycm9yOiBlcnJvckZuICAgICAgLy8gYWRhcHRlcidzIGVycm9yIGNhbGxiYWNrXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChjb3JlLmlzRnVuY3Rpb24odGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3IpKSB7XHJcbiAgICAgIHRoaXMucmVxdWVzdEludGVyY2VwdG9yKHJlcXVlc3RJbmZvIGFzIGFueSk7XHJcbiAgICAgIGlmICh0aGlzLnJlcXVlc3RJbnRlcmNlcHRvclsnb25lVGltZSddKSB7XHJcbiAgICAgICAgdGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3IgPSBudWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHJlcXVlc3RJbmZvLnJlcXVlc3QpIHsgLy8gZXhpc3RzIHVubGVzcyByZXF1ZXN0SW50ZXJjZXB0b3Iga2lsbGVkIGl0LlxyXG4gICAgICBjb25zdCBmZmlsdGVyID0gZmlsdGVyKChyZXNwb25zZTogSHR0cEV2ZW50PGFueT4pID0+IHJlc3BvbnNlIGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKTtcclxuICAgICAgY29uc3QgZm1hcCA9IG1hcChleHRyYWN0RGF0YSk7XHJcblxyXG4gICAgICBmbWFwKGZmaWx0ZXIodGhpcy5odHRwLnJlcXVlc3QocmVxdWVzdEluZm8ucmVxdWVzdCkpKVxyXG4gICAgICAgIC5mb3JFYWNoKHJlcXVlc3RJbmZvLnN1Y2Nlc3MpXHJcbiAgICAgICAgLmNhdGNoKHJlcXVlc3RJbmZvLmVycm9yKTtcclxuICAgIH1cclxuXHJcbiAgICBmdW5jdGlvbiBleHRyYWN0RGF0YShldmVudDogSHR0cEV2ZW50PGFueT4pIHtcclxuICAgICAgbGV0IHJlc3BvbnNlID0gZXZlbnQgYXMgSHR0cFJlc3BvbnNlPGFueT47XHJcbiAgICAgIGxldCBkYXRhOiBhbnk7XHJcbiAgICAgIGxldCBkdCA9IHJlcXVlc3RJbmZvLmRzYUNvbmZpZy5kYXRhVHlwZTtcclxuICAgICAgLy8gYmV3YXJlOmByZXMuanNvbmAgYW5kIGByZXMudGV4dGAgd2lsbCBiZSBhc3luYyBzb21lIGRheVxyXG4gICAgICBpZiAoZHQgJiYgZHQgIT09ICdqc29uJykge1xyXG4gICAgICAgIGRhdGEgPSByZXNwb25zZS5ib2R5O1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGRhdGEgPSBKU09OLnBhcnNlKHJlc3BvbnNlLmJvZHkpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB7IGRhdGEsIHJlc3BvbnNlIH07XHJcbiAgICB9XHJcblxyXG4gICAgZnVuY3Rpb24gc3VjY2Vzc0ZuKGFyZzogeyBkYXRhOiBhbnksIHJlc3BvbnNlOiBIdHRwUmVzcG9uc2U8YW55PiB9KSB7XHJcbiAgICAgIGlmIChhcmcucmVzcG9uc2Uuc3RhdHVzIDwgMjAwIHx8IGFyZy5yZXNwb25zZS5zdGF0dXMgPj0gMzAwKSB7XHJcbiAgICAgICAgdGhyb3cgeyBkYXRhOiBhcmcuZGF0YSwgcmVzcG9uc2U6IGFyZy5yZXNwb25zZSB9O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsZXQgaHR0cFJlc3BvbnNlOiBCcmVlemVIdHRwUmVzcG9uc2UgPSB7XHJcbiAgICAgICAgY29uZmlnOiByZXF1ZXN0SW5mby5yZXF1ZXN0LFxyXG4gICAgICAgIGRhdGE6IGFyZy5kYXRhLFxyXG4gICAgICAgIGdldEhlYWRlcnM6IG1ha2VHZXRIZWFkZXJzKGFyZy5yZXNwb25zZS5oZWFkZXJzKSxcclxuICAgICAgICBzdGF0dXM6IGFyZy5yZXNwb25zZS5zdGF0dXNcclxuICAgICAgfTtcclxuICAgICAgaHR0cFJlc3BvbnNlWyduZ0NvbmZpZyddID0gcmVxdWVzdEluZm8ucmVxdWVzdDtcclxuICAgICAgaHR0cFJlc3BvbnNlWydzdGF0dXNUZXh0J10gPSBhcmcucmVzcG9uc2Uuc3RhdHVzVGV4dDtcclxuICAgICAgaHR0cFJlc3BvbnNlWydyZXNwb25zZSddID0gYXJnLnJlc3BvbnNlO1xyXG4gICAgICBjb25maWcuc3VjY2VzcyhodHRwUmVzcG9uc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGZ1bmN0aW9uIGVycm9yRm4ocmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlKSB7XHJcbiAgICAgIGlmIChyZXNwb25zZSBpbnN0YW5jZW9mIEVycm9yKSB7XHJcbiAgICAgICAgdGhyb3cgcmVzcG9uc2U7IC8vIHByb2dyYW0gZXJyb3I7IG5vdGhpbmcgd2UgY2FuIGRvXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IGRhdGE6IGFueTtcclxuICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3IgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpIHtcclxuICAgICAgICAgIGRhdGEgPSByZXNwb25zZS5lcnJvci5ib2R5O1xyXG4gICAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xyXG4gICAgICAgICAgZGF0YSA9IHJlc3BvbnNlLmVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGRhdGEgPSByZXNwb25zZS5lcnJvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFRpbWVvdXQgYXBwZWFycyBhcyBhbiBlcnJvciB3aXRoIHN0YXR1cz09PTAgYW5kIG5vIGRhdGEuXHJcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gMCAmJiBkYXRhID09IG51bGwpIHtcclxuICAgICAgICAgIGRhdGEgPSAndGltZW91dCc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgZXJyb3JNZXNzYWdlID0gcmVzcG9uc2Uuc3RhdHVzICsgXCI6IFwiICsgcmVzcG9uc2Uuc3RhdHVzVGV4dDtcclxuICAgICAgICBpZiAoZGF0YSAmJiB0eXBlb2YgZGF0YSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgIGRhdGFbXCJtZXNzYWdlXCJdID0gZGF0YVtcIm1lc3NhZ2VcIl0gfHwgZXJyb3JNZXNzYWdlOyAgLy8gYnJlZXplIGxvb2tzIGF0IHRoZSBtZXNzYWdlIHByb3BlcnR5XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghZGF0YSkge1xyXG4gICAgICAgICAgZGF0YSA9IGVycm9yTWVzc2FnZTsgICAvLyBSZXR1cm4gdGhlIGVycm9yIG1lc3NhZ2UgYXMgZGF0YVxyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgaHR0cFJlc3BvbnNlOiBCcmVlemVIdHRwUmVzcG9uc2UgPSB7XHJcbiAgICAgICAgICBjb25maWc6IHJlcXVlc3RJbmZvLnJlcXVlc3QsXHJcbiAgICAgICAgICBkYXRhOiBkYXRhLFxyXG4gICAgICAgICAgZ2V0SGVhZGVyczogbWFrZUdldEhlYWRlcnMocmVzcG9uc2UuaGVhZGVycyksXHJcbiAgICAgICAgICBzdGF0dXM6IHJlc3BvbnNlLnN0YXR1c1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgaHR0cFJlc3BvbnNlWyduZ0NvbmZpZyddID0gcmVxdWVzdEluZm8ucmVxdWVzdDtcclxuICAgICAgICBodHRwUmVzcG9uc2VbJ3N0YXR1c1RleHQnXSA9IHJlc3BvbnNlLnN0YXR1c1RleHQ7XHJcbiAgICAgICAgaHR0cFJlc3BvbnNlWydyZXNwb25zZSddID0gcmVzcG9uc2U7XHJcblxyXG4gICAgICAgIGNvbmZpZy5lcnJvcihodHRwUmVzcG9uc2UpOyAvLyBzZW5kIGVycm9yIHRvIGJyZWV6ZSBlcnJvciBoYW5kbGVyXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4vLy8vLyBIZWxwZXJzIC8vLy9cclxuXHJcbmZ1bmN0aW9uIG1ha2VHZXRIZWFkZXJzKGhlYWRlcnM6IEh0dHBIZWFkZXJzKSB7XHJcbiAgcmV0dXJuIGZ1bmN0aW9uIGdldEhlYWRlcnMoaGVhZGVyTmFtZT86IHN0cmluZykgeyByZXR1cm4gaGVhZGVycy5nZXRBbGwoaGVhZGVyTmFtZSkuam9pbignXFxyXFxuJyk7IH07XHJcbn0iXX0=
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/** Appends parameter to url, with appropriate delimiter */
|
|
2
|
-
export function appendQueryStringParameter(url, parameter) {
|
|
3
|
-
if (!parameter)
|
|
4
|
-
return url;
|
|
5
|
-
let separator = url.endsWith("?") ? "" : url.includes("?") ? "&" : "?";
|
|
6
|
-
return url + separator + parameter;
|
|
7
|
-
}
|
|
8
|
-
/** Encodes the object into query string parameters */
|
|
9
|
-
export function encodeParams(obj) {
|
|
10
|
-
let query = '';
|
|
11
|
-
let subValue, innerObj, fullSubName;
|
|
12
|
-
for (let name in obj) {
|
|
13
|
-
if (!obj.hasOwnProperty(name)) {
|
|
14
|
-
continue;
|
|
15
|
-
}
|
|
16
|
-
let value = obj[name];
|
|
17
|
-
if (value instanceof Array) {
|
|
18
|
-
for (let i = 0; i < value.length; ++i) {
|
|
19
|
-
subValue = value[i];
|
|
20
|
-
fullSubName = name + '[' + i + ']';
|
|
21
|
-
innerObj = {};
|
|
22
|
-
innerObj[fullSubName] = subValue;
|
|
23
|
-
query += encodeParams(innerObj) + '&';
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
else if (value && value.toISOString) { // a feature of Date-like things
|
|
27
|
-
query += encodeURIComponent(name) + '=' + encodeURIComponent(value.toISOString()) + '&';
|
|
28
|
-
}
|
|
29
|
-
else if (value instanceof Object) {
|
|
30
|
-
for (let subName in value) {
|
|
31
|
-
if (obj.hasOwnProperty(name)) {
|
|
32
|
-
subValue = value[subName];
|
|
33
|
-
fullSubName = name + '[' + subName + ']';
|
|
34
|
-
innerObj = {};
|
|
35
|
-
innerObj[fullSubName] = subValue;
|
|
36
|
-
query += encodeParams(innerObj) + '&';
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
else if (value === null) {
|
|
41
|
-
query += encodeURIComponent(name) + '=&';
|
|
42
|
-
}
|
|
43
|
-
else if (value !== undefined) {
|
|
44
|
-
query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&';
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return query.length ? query.substr(0, query.length - 1) : query;
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci1jb3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FkYXB0ZXItY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyREFBMkQ7QUFDM0QsTUFBTSxVQUFVLDBCQUEwQixDQUFDLEdBQVcsRUFBRSxTQUFpQjtJQUN2RSxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU8sR0FBRyxDQUFDO0lBRTNCLElBQUksU0FBUyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFFdkUsT0FBTyxHQUFHLEdBQUcsU0FBUyxHQUFHLFNBQVMsQ0FBQztBQUNyQyxDQUFDO0FBRUQsc0RBQXNEO0FBQ3RELE1BQU0sVUFBVSxZQUFZLENBQUMsR0FBTztJQUNsQyxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDZixJQUFJLFFBQWEsRUFBRSxRQUFhLEVBQUUsV0FBZ0IsQ0FBQztJQUVuRCxLQUFLLElBQUksSUFBSSxJQUFJLEdBQUcsRUFBRTtRQUNwQixJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUFFLFNBQVM7U0FBRTtRQUU1QyxJQUFJLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdEIsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO1lBQzFCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dCQUNyQyxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwQixXQUFXLEdBQUcsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDO2dCQUNuQyxRQUFRLEdBQUcsRUFBRSxDQUFDO2dCQUNkLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxRQUFRLENBQUM7Z0JBQ2pDLEtBQUssSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDO2FBQ3ZDO1NBQ0Y7YUFBTSxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsZ0NBQWdDO1lBQ3ZFLEtBQUssSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ3pGO2FBQU0sSUFBSSxLQUFLLFlBQVksTUFBTSxFQUFFO1lBQ2xDLEtBQUssSUFBSSxPQUFPLElBQUksS0FBSyxFQUFFO2dCQUN6QixJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQzVCLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQzFCLFdBQVcsR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLE9BQU8sR0FBRyxHQUFHLENBQUM7b0JBQ3pDLFFBQVEsR0FBRyxFQUFFLENBQUM7b0JBQ2QsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLFFBQVEsQ0FBQztvQkFDakMsS0FBSyxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUM7aUJBQ3ZDO2FBQ0Y7U0FDRjthQUFNLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUN6QixLQUFLLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO1NBQzFDO2FBQU0sSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQzlCLEtBQUssSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQzNFO0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUNsRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIEFwcGVuZHMgcGFyYW1ldGVyIHRvIHVybCwgd2l0aCBhcHByb3ByaWF0ZSBkZWxpbWl0ZXIgKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFwcGVuZFF1ZXJ5U3RyaW5nUGFyYW1ldGVyKHVybDogc3RyaW5nLCBwYXJhbWV0ZXI6IHN0cmluZykge1xyXG4gIGlmICghcGFyYW1ldGVyKSByZXR1cm4gdXJsO1xyXG5cclxuICBsZXQgc2VwYXJhdG9yID0gdXJsLmVuZHNXaXRoKFwiP1wiKSA/IFwiXCIgOiB1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIjtcclxuXHJcbiAgcmV0dXJuIHVybCArIHNlcGFyYXRvciArIHBhcmFtZXRlcjtcclxufVxyXG5cclxuLyoqIEVuY29kZXMgdGhlIG9iamVjdCBpbnRvIHF1ZXJ5IHN0cmluZyBwYXJhbWV0ZXJzICovXHJcbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVQYXJhbXMob2JqOiB7fSkge1xyXG4gIGxldCBxdWVyeSA9ICcnO1xyXG4gIGxldCBzdWJWYWx1ZTogYW55LCBpbm5lck9iajogYW55LCBmdWxsU3ViTmFtZTogYW55O1xyXG5cclxuICBmb3IgKGxldCBuYW1lIGluIG9iaikge1xyXG4gICAgaWYgKCFvYmouaGFzT3duUHJvcGVydHkobmFtZSkpIHsgY29udGludWU7IH1cclxuXHJcbiAgICBsZXQgdmFsdWUgPSBvYmpbbmFtZV07XHJcblxyXG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7ICsraSkge1xyXG4gICAgICAgIHN1YlZhbHVlID0gdmFsdWVbaV07XHJcbiAgICAgICAgZnVsbFN1Yk5hbWUgPSBuYW1lICsgJ1snICsgaSArICddJztcclxuICAgICAgICBpbm5lck9iaiA9IHt9O1xyXG4gICAgICAgIGlubmVyT2JqW2Z1bGxTdWJOYW1lXSA9IHN1YlZhbHVlO1xyXG4gICAgICAgIHF1ZXJ5ICs9IGVuY29kZVBhcmFtcyhpbm5lck9iaikgKyAnJic7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodmFsdWUgJiYgdmFsdWUudG9JU09TdHJpbmcpIHsgLy8gYSBmZWF0dXJlIG9mIERhdGUtbGlrZSB0aGluZ3NcclxuICAgICAgcXVlcnkgKz0gZW5jb2RlVVJJQ29tcG9uZW50KG5hbWUpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlLnRvSVNPU3RyaW5nKCkpICsgJyYnO1xyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdCkge1xyXG4gICAgICBmb3IgKGxldCBzdWJOYW1lIGluIHZhbHVlKSB7XHJcbiAgICAgICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShuYW1lKSkge1xyXG4gICAgICAgICAgc3ViVmFsdWUgPSB2YWx1ZVtzdWJOYW1lXTtcclxuICAgICAgICAgIGZ1bGxTdWJOYW1lID0gbmFtZSArICdbJyArIHN1Yk5hbWUgKyAnXSc7XHJcbiAgICAgICAgICBpbm5lck9iaiA9IHt9O1xyXG4gICAgICAgICAgaW5uZXJPYmpbZnVsbFN1Yk5hbWVdID0gc3ViVmFsdWU7XHJcbiAgICAgICAgICBxdWVyeSArPSBlbmNvZGVQYXJhbXMoaW5uZXJPYmopICsgJyYnO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xyXG4gICAgICBxdWVyeSArPSBlbmNvZGVVUklDb21wb25lbnQobmFtZSkgKyAnPSYnO1xyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHF1ZXJ5ICs9IGVuY29kZVVSSUNvbXBvbmVudChuYW1lKSArICc9JyArIGVuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSkgKyAnJic7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcXVlcnkubGVuZ3RoID8gcXVlcnkuc3Vic3RyKDAsIHF1ZXJ5Lmxlbmd0aCAtIDEpIDogcXVlcnk7XHJcbn1cclxuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './adapter-ajax-httpclient';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlZXplLWNsaWVudC1hZGFwdGVyLWFqYXgtaHR0cGNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9icmVlemUtY2xpZW50LWFkYXB0ZXItYWpheC1odHRwY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9hZGFwdGVyLWFqYXgtaHR0cGNsaWVudCc7XG4iXX0=
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import { config, core } from 'breeze-client';
|
|
2
|
-
export class AjaxJQueryAdapter {
|
|
3
|
-
name;
|
|
4
|
-
defaultSettings;
|
|
5
|
-
requestInterceptor;
|
|
6
|
-
jQuery;
|
|
7
|
-
constructor() {
|
|
8
|
-
this.name = "jQuery";
|
|
9
|
-
this.defaultSettings = {};
|
|
10
|
-
this.requestInterceptor = undefined;
|
|
11
|
-
}
|
|
12
|
-
static register(breezeConfig) {
|
|
13
|
-
breezeConfig = breezeConfig || config;
|
|
14
|
-
breezeConfig.registerAdapter("ajax", AjaxJQueryAdapter);
|
|
15
|
-
return breezeConfig.initializeAdapterInstance("ajax", "jQuery", true);
|
|
16
|
-
}
|
|
17
|
-
initialize() {
|
|
18
|
-
this.jQuery = jQuery;
|
|
19
|
-
// look for the jQuery lib but don't fail immediately if not found
|
|
20
|
-
if (!jQuery) {
|
|
21
|
-
this.jQuery = core.requireLib("jQuery;jquery");
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
ajax(config) {
|
|
25
|
-
if (!this.jQuery) {
|
|
26
|
-
throw new Error("Unable to locate jQuery");
|
|
27
|
-
}
|
|
28
|
-
let jqConfig = {
|
|
29
|
-
type: config.type,
|
|
30
|
-
url: config.url,
|
|
31
|
-
data: config.params || config.data,
|
|
32
|
-
dataType: config.dataType,
|
|
33
|
-
contentType: config.contentType,
|
|
34
|
-
crossDomain: config.crossDomain,
|
|
35
|
-
headers: config.headers || {}
|
|
36
|
-
};
|
|
37
|
-
if (!core.isEmpty(this.defaultSettings)) {
|
|
38
|
-
let compositeConfig = core.extend({}, this.defaultSettings);
|
|
39
|
-
jqConfig = core.extend(compositeConfig, jqConfig);
|
|
40
|
-
// extend is shallow; extend headers separately
|
|
41
|
-
let headers = core.extend({}, this.defaultSettings.headers); // copy default headers 1st
|
|
42
|
-
jqConfig.headers = core.extend(headers, jqConfig.headers);
|
|
43
|
-
}
|
|
44
|
-
let requestInfo = {
|
|
45
|
-
adapter: this,
|
|
46
|
-
config: jqConfig,
|
|
47
|
-
dsaConfig: config,
|
|
48
|
-
success: successFn,
|
|
49
|
-
error: errorFn, // adapter's error callback
|
|
50
|
-
};
|
|
51
|
-
if (core.isFunction(this.requestInterceptor)) {
|
|
52
|
-
let ri = this.requestInterceptor;
|
|
53
|
-
ri(requestInfo);
|
|
54
|
-
if (ri.oneTime) {
|
|
55
|
-
this.requestInterceptor = undefined;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
if (requestInfo.config) { // exists unless requestInterceptor killed it.
|
|
59
|
-
requestInfo.jqXHR = this.jQuery.ajax(requestInfo.config)
|
|
60
|
-
.done(requestInfo.success)
|
|
61
|
-
.fail(requestInfo.error);
|
|
62
|
-
}
|
|
63
|
-
function successFn(data, statusText, jqXHR) {
|
|
64
|
-
let httpResponse = {
|
|
65
|
-
config: config,
|
|
66
|
-
data: data,
|
|
67
|
-
getHeaders: getHeadersFn(jqXHR),
|
|
68
|
-
status: jqXHR.status,
|
|
69
|
-
statusText: statusText
|
|
70
|
-
};
|
|
71
|
-
config.success(httpResponse);
|
|
72
|
-
// TODO: not sure how to do this or if needed.
|
|
73
|
-
// jqXHR.onreadystatechange = null;
|
|
74
|
-
// jqXHR.abort = null;
|
|
75
|
-
}
|
|
76
|
-
function errorFn(jqXHR, statusText, errorThrown) {
|
|
77
|
-
let httpResponse = {
|
|
78
|
-
config: config,
|
|
79
|
-
data: jqXHR.responseText,
|
|
80
|
-
error: errorThrown,
|
|
81
|
-
getHeaders: getHeadersFn(jqXHR),
|
|
82
|
-
status: jqXHR.status,
|
|
83
|
-
statusText: statusText
|
|
84
|
-
};
|
|
85
|
-
config.error(httpResponse);
|
|
86
|
-
// TODO: not sure how to do this or if needed.
|
|
87
|
-
// jqXHR.onreadystatechange = null;
|
|
88
|
-
// jqXHR.abort = null;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
config.registerAdapter("ajax", AjaxJQueryAdapter);
|
|
93
|
-
function getHeadersFn(jqXHR) {
|
|
94
|
-
if (jqXHR.status === 0) { // timeout or abort; no headers
|
|
95
|
-
return function (headerName) {
|
|
96
|
-
return (headerName && headerName.length > 0) ? "" : {};
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
else { // jqXHR should have header functions
|
|
100
|
-
return function (headerName) {
|
|
101
|
-
return (headerName && headerName.length > 0) ?
|
|
102
|
-
jqXHR.getResponseHeader(headerName) :
|
|
103
|
-
jqXHR.getAllResponseHeaders();
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci1hamF4LWpxdWVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hZGFwdGVyLWFqYXgtanF1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk1RyxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLElBQUksQ0FBUztJQUNiLGVBQWUsQ0FBMkM7SUFDMUQsa0JBQWtCLENBQTBCO0lBQzVDLE1BQU0sQ0FBTTtJQUVaO1FBQ0UsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUM7UUFDckIsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFHLENBQUM7UUFDM0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxZQUEyQjtRQUN6QyxZQUFZLEdBQUcsWUFBWSxJQUFJLE1BQU0sQ0FBQztRQUN0QyxZQUFZLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3hELE9BQU8sWUFBWSxDQUFDLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFzQixDQUFDO0lBQzdGLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDaEQ7SUFDSCxDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQWtCO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztTQUM1QztRQUNELElBQUksUUFBUSxHQUFHO1lBQ2IsSUFBSSxFQUFF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WUFDOUMsbUNBQW1DO1lBQ25DLHNCQUFzQjtRQUN4QixDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztBQUVsRCxTQUFTLFlBQVksQ0FBQyxLQUFxQjtJQUN6QyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLEVBQUUsK0JBQStCO1FBQ3ZELE9BQU8sVUFBVSxVQUFrQjtZQUNqQyxPQUFPLENBQUMsVUFBVSxJQUFJLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3pELENBQUMsQ0FBQztLQUNIO1NBQU0sRUFBRSxxQ0FBcUM7UUFDNUMsT0FBTyxVQUFVLFVBQWtCO1lBQ2pDLE9BQU8sQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM1QyxLQUFLLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFDckMsS0FBSyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDbEMsQ0FBQyxDQUFDO0tBQ0g7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWpheEFkYXB0ZXIsIEFqYXhDb25maWcsIEFqYXhSZXF1ZXN0SW50ZXJjZXB0b3IsIEJyZWV6ZUNvbmZpZywgY29uZmlnLCBjb3JlIH0gZnJvbSAnYnJlZXplLWNsaWVudCc7XHJcblxyXG5kZWNsYXJlIHZhciBqUXVlcnk6IGFueTtcclxuXHJcbmV4cG9ydCBjbGFzcyBBamF4SlF1ZXJ5QWRhcHRlciBpbXBsZW1lbnRzIEFqYXhBZGFwdGVyIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgZGVmYXVsdFNldHRpbmdzOiB7IGhlYWRlcnM/OiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfSB9O1xyXG4gIHJlcXVlc3RJbnRlcmNlcHRvcj86IEFqYXhSZXF1ZXN0SW50ZXJjZXB0b3I7XHJcbiAgalF1ZXJ5OiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5uYW1lID0gXCJqUXVlcnlcIjtcclxuICAgIHRoaXMuZGVmYXVsdFNldHRpbmdzID0geyB9O1xyXG4gICAgdGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3IgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgcmVnaXN0ZXIoYnJlZXplQ29uZmlnPzogQnJlZXplQ29uZmlnKSB7XHJcbiAgICBicmVlemVDb25maWcgPSBicmVlemVDb25maWcgfHwgY29uZmlnO1xyXG4gICAgYnJlZXplQ29uZmlnLnJlZ2lzdGVyQWRhcHRlcihcImFqYXhcIiwgQWpheEpRdWVyeUFkYXB0ZXIpO1xyXG4gICAgcmV0dXJuIGJyZWV6ZUNvbmZpZy5pbml0aWFsaXplQWRhcHRlckluc3RhbmNlKFwiYWpheFwiLCBcImpRdWVyeVwiLCB0cnVlKSBhcyBBamF4SlF1ZXJ5QWRhcHRlcjtcclxuICB9XHJcblxyXG4gIGluaXRpYWxpemUoKSB7XHJcbiAgICB0aGlzLmpRdWVyeSA9IGpRdWVyeTtcclxuICAgIC8vIGxvb2sgZm9yIHRoZSBqUXVlcnkgbGliIGJ1dCBkb24ndCBmYWlsIGltbWVkaWF0ZWx5IGlmIG5vdCBmb3VuZFxyXG4gICAgaWYgKCFqUXVlcnkpIHtcclxuICAgICAgdGhpcy5qUXVlcnkgPSBjb3JlLnJlcXVpcmVMaWIoXCJqUXVlcnk7anF1ZXJ5XCIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWpheChjb25maWc6IEFqYXhDb25maWcpIHtcclxuICAgIGlmICghdGhpcy5qUXVlcnkpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5hYmxlIHRvIGxvY2F0ZSBqUXVlcnlcIik7XHJcbiAgICB9XHJcbiAgICBsZXQganFDb25maWcgPSB7XHJcbiAgICAgIHR5cGU6IGNvbmZpZy50eXBlLFxyXG4gICAgICB1cmw6IGNvbmZpZy51cmwsXHJcbiAgICAgIGRhdGE6IGNvbmZpZy5wYXJhbXMgfHwgY29uZmlnLmRhdGEsXHJcbiAgICAgIGRhdGFUeXBlOiBjb25maWcuZGF0YVR5cGUsXHJcbiAgICAgIGNvbnRlbnRUeXBlOiBjb25maWcuY29udGVudFR5cGUsXHJcbiAgICAgIGNyb3NzRG9tYWluOiBjb25maWcuY3Jvc3NEb21haW4sXHJcbiAgICAgIGhlYWRlcnM6IGNvbmZpZy5oZWFkZXJzIHx8IHt9XHJcbiAgICB9O1xyXG5cclxuICAgIGlmICghY29yZS5pc0VtcHR5KHRoaXMuZGVmYXVsdFNldHRpbmdzKSkge1xyXG4gICAgICBsZXQgY29tcG9zaXRlQ29uZmlnID0gY29yZS5leHRlbmQoe30sIHRoaXMuZGVmYXVsdFNldHRpbmdzKTtcclxuICAgICAganFDb25maWcgPSBjb3JlLmV4dGVuZChjb21wb3NpdGVDb25maWcsIGpxQ29uZmlnKSBhcyBhbnk7XHJcbiAgICAgIC8vIGV4dGVuZCBpcyBzaGFsbG93OyBleHRlbmQgaGVhZGVycyBzZXBhcmF0ZWx5XHJcbiAgICAgIGxldCBoZWFkZXJzID0gY29yZS5leHRlbmQoe30sIHRoaXMuZGVmYXVsdFNldHRpbmdzLmhlYWRlcnMpOyAvLyBjb3B5IGRlZmF1bHQgaGVhZGVycyAxc3RcclxuICAgICAganFDb25maWcuaGVhZGVycyA9IGNvcmUuZXh0ZW5kKGhlYWRlcnMsIGpxQ29uZmlnLmhlYWRlcnMpO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCByZXF1ZXN0SW5mbyA9IHtcclxuICAgICAgYWRhcHRlcjogdGhpcywgICAgICAvLyB0aGlzIGFkYXB0ZXJcclxuICAgICAgY29uZmlnOiBqcUNvbmZpZywgICAvLyBqUXVlcnkncyBhamF4ICdzZXR0aW5ncycgb2JqZWN0XHJcbiAgICAgIGRzYUNvbmZpZzogY29uZmlnLCAgLy8gdGhlIGNvbmZpZyBhcmcgZnJvbSB0aGUgY2FsbGluZyBCcmVlemUgRGF0YVNlcnZpY2VBZGFwdGVyXHJcbiAgICAgIHN1Y2Nlc3M6IHN1Y2Nlc3NGbiwgLy8gYWRhcHRlcidzIHN1Y2Nlc3MgY2FsbGJhY2tcclxuICAgICAgZXJyb3I6IGVycm9yRm4sICAgICAgLy8gYWRhcHRlcidzIGVycm9yIGNhbGxiYWNrXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChjb3JlLmlzRnVuY3Rpb24odGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3IpKSB7XHJcbiAgICAgIGxldCByaSA9IHRoaXMucmVxdWVzdEludGVyY2VwdG9yIGFzIGFueTtcclxuICAgICAgcmkocmVxdWVzdEluZm8pO1xyXG4gICAgICBpZiAocmkub25lVGltZSkge1xyXG4gICAgICAgIHRoaXMucmVxdWVzdEludGVyY2VwdG9yID0gdW5kZWZpbmVkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHJlcXVlc3RJbmZvLmNvbmZpZykgeyAvLyBleGlzdHMgdW5sZXNzIHJlcXVlc3RJbnRlcmNlcHRvciBraWxsZWQgaXQuXHJcbiAgICAgIChyZXF1ZXN0SW5mbyBhcyBhbnkpLmpxWEhSID0gdGhpcy5qUXVlcnkuYWpheChyZXF1ZXN0SW5mby5jb25maWcpXHJcbiAgICAgICAgLmRvbmUocmVxdWVzdEluZm8uc3VjY2VzcylcclxuICAgICAgICAuZmFpbChyZXF1ZXN0SW5mby5lcnJvcik7XHJcbiAgICB9XHJcblxyXG4gICAgZnVuY3Rpb24gc3VjY2Vzc0ZuKGRhdGE6IGFueSwgc3RhdHVzVGV4dDogc3RyaW5nLCBqcVhIUjogWE1MSHR0cFJlcXVlc3QpIHtcclxuICAgICAgbGV0IGh0dHBSZXNwb25zZSA9IHtcclxuICAgICAgICBjb25maWc6IGNvbmZpZyxcclxuICAgICAgICBkYXRhOiBkYXRhLFxyXG4gICAgICAgIGdldEhlYWRlcnM6IGdldEhlYWRlcnNGbihqcVhIUiksXHJcbiAgICAgICAgc3RhdHVzOiBqcVhIUi5zdGF0dXMsXHJcbiAgICAgICAgc3RhdHVzVGV4dDogc3RhdHVzVGV4dFxyXG4gICAgICB9O1xyXG4gICAgICBjb25maWcuc3VjY2VzcyhodHRwUmVzcG9uc2UpO1xyXG4gICAgICAvLyBUT0RPOiBub3Qgc3VyZSBob3cgdG8gZG8gdGhpcyBvciBpZiBuZWVkZWQuXHJcbiAgICAgIC8vIGpxWEhSLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IG51bGw7XHJcbiAgICAgIC8vIGpxWEhSLmFib3J0ID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBmdW5jdGlvbiBlcnJvckZuKGpxWEhSOiBYTUxIdHRwUmVxdWVzdCwgc3RhdHVzVGV4dDogc3RyaW5nLCBlcnJvclRocm93bjogYW55KSB7XHJcbiAgICAgIGxldCBodHRwUmVzcG9uc2UgPSB7XHJcbiAgICAgICAgY29uZmlnOiBjb25maWcsXHJcbiAgICAgICAgZGF0YToganFYSFIucmVzcG9uc2VUZXh0LFxyXG4gICAgICAgIGVycm9yOiBlcnJvclRocm93bixcclxuICAgICAgICBnZXRIZWFkZXJzOiBnZXRIZWFkZXJzRm4oanFYSFIpLFxyXG4gICAgICAgIHN0YXR1czoganFYSFIuc3RhdHVzLFxyXG4gICAgICAgIHN0YXR1c1RleHQ6IHN0YXR1c1RleHRcclxuICAgICAgfTtcclxuICAgICAgY29uZmlnLmVycm9yKGh0dHBSZXNwb25zZSk7XHJcbiAgICAgIC8vIFRPRE86IG5vdCBzdXJlIGhvdyB0byBkbyB0aGlzIG9yIGlmIG5lZWRlZC5cclxuICAgICAgLy8ganFYSFIub25yZWFkeXN0YXRlY2hhbmdlID0gbnVsbDtcclxuICAgICAgLy8ganFYSFIuYWJvcnQgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuY29uZmlnLnJlZ2lzdGVyQWRhcHRlcihcImFqYXhcIiwgQWpheEpRdWVyeUFkYXB0ZXIpO1xyXG5cclxuZnVuY3Rpb24gZ2V0SGVhZGVyc0ZuKGpxWEhSOiBYTUxIdHRwUmVxdWVzdCk6IGFueSB7XHJcbiAgaWYgKGpxWEhSLnN0YXR1cyA9PT0gMCkgeyAvLyB0aW1lb3V0IG9yIGFib3J0OyBubyBoZWFkZXJzXHJcbiAgICByZXR1cm4gZnVuY3Rpb24gKGhlYWRlck5hbWU6IHN0cmluZykge1xyXG4gICAgICByZXR1cm4gKGhlYWRlck5hbWUgJiYgaGVhZGVyTmFtZS5sZW5ndGggPiAwKSA/IFwiXCIgOiB7fTtcclxuICAgIH07XHJcbiAgfSBlbHNlIHsgLy8ganFYSFIgc2hvdWxkIGhhdmUgaGVhZGVyIGZ1bmN0aW9uc1xyXG4gICAgcmV0dXJuIGZ1bmN0aW9uIChoZWFkZXJOYW1lOiBzdHJpbmcpIHtcclxuICAgICAgcmV0dXJuIChoZWFkZXJOYW1lICYmIGhlYWRlck5hbWUubGVuZ3RoID4gMCkgP1xyXG4gICAgICAgIGpxWEhSLmdldFJlc3BvbnNlSGVhZGVyKGhlYWRlck5hbWUpIDpcclxuICAgICAgICBqcVhIUi5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKTtcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './adapter-ajax-jquery';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlZXplLWNsaWVudC1hZGFwdGVyLWFqYXgtanF1ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JyZWV6ZS1jbGllbnQtYWRhcHRlci1hamF4LWpxdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vYWRhcHRlci1hamF4LWpxdWVyeSc7XG4iXX0=
|