@washingtonpost/subs-de-inputs 0.0.2 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/dist/components/DESelect/index.d.ts +35 -0
- package/dist/index.d.ts +1 -0
- package/dist/interfaces/index.d.ts +7 -4
- package/dist/subs-de-inputs.cjs.development.js +139 -5
- package/dist/subs-de-inputs.cjs.development.js.map +1 -1
- package/dist/subs-de-inputs.cjs.production.min.js +1 -1
- package/dist/subs-de-inputs.cjs.production.min.js.map +1 -1
- package/dist/subs-de-inputs.esm.js +136 -7
- package/dist/subs-de-inputs.esm.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/DEDataSelectProps/index.d.ts +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See
|
|
4
4
|
[Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
|
|
7
|
+
**[0.1.0 - 2024-04-25]**:
|
|
8
|
+
* Add initial `<DESelect />` component
|
|
9
|
+
|
|
6
10
|
**[0.0.2 - 2024-04-24]**:
|
|
7
11
|
* Fix build error
|
|
8
12
|
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Attribute, AttributeValue } from '../../interfaces';
|
|
3
|
+
import { SubsWindow } from '@washingtonpost/subs-sdk';
|
|
4
|
+
declare global {
|
|
5
|
+
interface Window extends SubsWindow {
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
interface DESelectProps {
|
|
9
|
+
source: string;
|
|
10
|
+
fieldName: string;
|
|
11
|
+
label?: string;
|
|
12
|
+
dataDictionaryConfig?: Attribute;
|
|
13
|
+
defaultValue?: string;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
submit: boolean;
|
|
16
|
+
onChange?: ({ value }: {
|
|
17
|
+
value: string;
|
|
18
|
+
}) => void;
|
|
19
|
+
onFinished?: ({ isFinished, isError, }: {
|
|
20
|
+
isFinished: boolean;
|
|
21
|
+
isError: boolean;
|
|
22
|
+
}) => void;
|
|
23
|
+
valuesFilter?: (value: AttributeValue) => boolean;
|
|
24
|
+
selectProps?: {
|
|
25
|
+
root?: any;
|
|
26
|
+
trigger?: any;
|
|
27
|
+
label?: any;
|
|
28
|
+
value?: any;
|
|
29
|
+
content?: any;
|
|
30
|
+
item?: any;
|
|
31
|
+
};
|
|
32
|
+
children?: React.ReactNode;
|
|
33
|
+
}
|
|
34
|
+
export declare const DESelect: React.FC<DESelectProps>;
|
|
35
|
+
export {};
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export declare type AttributeValue = {
|
|
|
3
3
|
date_created: Number;
|
|
4
4
|
last_modified_date: Number;
|
|
5
5
|
archived: boolean;
|
|
6
|
-
order:
|
|
6
|
+
order: number;
|
|
7
7
|
};
|
|
8
8
|
export declare const CollectionBehaviors: {
|
|
9
9
|
readonly COLLECT: "COLLECT";
|
|
@@ -11,14 +11,17 @@ export declare const CollectionBehaviors: {
|
|
|
11
11
|
};
|
|
12
12
|
export declare type Attribute = {
|
|
13
13
|
name: string;
|
|
14
|
-
approved_for_use
|
|
15
|
-
collection_behavior
|
|
14
|
+
approved_for_use?: boolean;
|
|
15
|
+
collection_behavior?: (typeof CollectionBehaviors)[keyof typeof CollectionBehaviors];
|
|
16
16
|
datatype: 'string';
|
|
17
17
|
explicit: boolean;
|
|
18
18
|
multiple_value: boolean;
|
|
19
19
|
last_modified_date: Number;
|
|
20
20
|
date_created: Number;
|
|
21
|
-
values: Array<
|
|
21
|
+
values: Array<AttributeValue>;
|
|
22
|
+
};
|
|
23
|
+
export declare const AttributesState: {
|
|
24
|
+
readonly SUCCESS: "100";
|
|
22
25
|
};
|
|
23
26
|
export declare const IngestResponseState: {
|
|
24
27
|
readonly SUCCESS: "100";
|
|
@@ -2,12 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
|
6
|
+
|
|
5
7
|
var subsSdk = require('@washingtonpost/subs-sdk');
|
|
8
|
+
var React = require('react');
|
|
9
|
+
var React__default = _interopDefault(React);
|
|
10
|
+
var wpdsUiKit = require('@washingtonpost/wpds-ui-kit');
|
|
6
11
|
|
|
7
12
|
var CollectionBehaviors = {
|
|
8
13
|
COLLECT: 'COLLECT',
|
|
9
14
|
DO_NOT_COLLECT: 'DO_NOT_COLLECT'
|
|
10
15
|
};
|
|
16
|
+
var AttributesState = {
|
|
17
|
+
SUCCESS: '100'
|
|
18
|
+
};
|
|
11
19
|
var IngestResponseState = {
|
|
12
20
|
SUCCESS: '100',
|
|
13
21
|
SYSTEM_ERROR: '101',
|
|
@@ -359,12 +367,22 @@ function _asyncToGenerator(fn) {
|
|
|
359
367
|
});
|
|
360
368
|
};
|
|
361
369
|
}
|
|
370
|
+
function _extends() {
|
|
371
|
+
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
372
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
373
|
+
var source = arguments[i];
|
|
374
|
+
for (var key in source) {
|
|
375
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
376
|
+
target[key] = source[key];
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
return target;
|
|
381
|
+
};
|
|
382
|
+
return _extends.apply(this, arguments);
|
|
383
|
+
}
|
|
362
384
|
|
|
363
385
|
var base = subsSdk.ENDPOINTS.base + "/de/v1";
|
|
364
|
-
var JSONHeaders = {
|
|
365
|
-
Accept: 'application/json',
|
|
366
|
-
'Content-Type': 'application/json'
|
|
367
|
-
};
|
|
368
386
|
var attributesCache = {};
|
|
369
387
|
var getAttributes = /*#__PURE__*/function () {
|
|
370
388
|
var _ref2 = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref) {
|
|
@@ -386,7 +404,7 @@ var getAttributes = /*#__PURE__*/function () {
|
|
|
386
404
|
_context.next = 9;
|
|
387
405
|
return fetch(url.toString(), {
|
|
388
406
|
credentials: 'include',
|
|
389
|
-
headers:
|
|
407
|
+
headers: subsSdk.JSON_HEADERS
|
|
390
408
|
});
|
|
391
409
|
case 9:
|
|
392
410
|
data = _context.sent;
|
|
@@ -422,7 +440,123 @@ var getAttributes = /*#__PURE__*/function () {
|
|
|
422
440
|
};
|
|
423
441
|
}();
|
|
424
442
|
|
|
443
|
+
var DESelect = function DESelect(_ref) {
|
|
444
|
+
var source = _ref.source,
|
|
445
|
+
fieldName = _ref.fieldName,
|
|
446
|
+
label = _ref.label,
|
|
447
|
+
dataDictionaryConfig = _ref.dataDictionaryConfig,
|
|
448
|
+
defaultValue = _ref.defaultValue,
|
|
449
|
+
disabled = _ref.disabled,
|
|
450
|
+
submit = _ref.submit,
|
|
451
|
+
_ref$onChange = _ref.onChange,
|
|
452
|
+
onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
|
|
453
|
+
_ref$onFinished = _ref.onFinished,
|
|
454
|
+
onFinished = _ref$onFinished === void 0 ? function () {} : _ref$onFinished,
|
|
455
|
+
_ref$valuesFilter = _ref.valuesFilter,
|
|
456
|
+
valuesFilter = _ref$valuesFilter === void 0 ? function () {
|
|
457
|
+
return true;
|
|
458
|
+
} : _ref$valuesFilter,
|
|
459
|
+
children = _ref.children;
|
|
460
|
+
var _useState = React.useState(dataDictionaryConfig),
|
|
461
|
+
config = _useState[0],
|
|
462
|
+
setConfig = _useState[1];
|
|
463
|
+
var _useState2 = React.useState(''),
|
|
464
|
+
selected = _useState2[0],
|
|
465
|
+
setSelected = _useState2[1];
|
|
466
|
+
React.useEffect(function () {
|
|
467
|
+
if (children) {
|
|
468
|
+
if (process.env.NODE_ENV !== "production") {
|
|
469
|
+
console.debug('childen props', children);
|
|
470
|
+
}
|
|
471
|
+
return;
|
|
472
|
+
}
|
|
473
|
+
if (!config) {
|
|
474
|
+
_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
475
|
+
var config;
|
|
476
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
477
|
+
while (1) switch (_context.prev = _context.next) {
|
|
478
|
+
case 0:
|
|
479
|
+
_context.next = 2;
|
|
480
|
+
return getAttributes({
|
|
481
|
+
fieldName: fieldName
|
|
482
|
+
});
|
|
483
|
+
case 2:
|
|
484
|
+
config = _context.sent;
|
|
485
|
+
if (process.env.NODE_ENV !== "production") {
|
|
486
|
+
console.debug('config from API', config);
|
|
487
|
+
}
|
|
488
|
+
setConfig(config[0]);
|
|
489
|
+
case 5:
|
|
490
|
+
case "end":
|
|
491
|
+
return _context.stop();
|
|
492
|
+
}
|
|
493
|
+
}, _callee);
|
|
494
|
+
}))();
|
|
495
|
+
}
|
|
496
|
+
}, []);
|
|
497
|
+
React.useEffect(function () {
|
|
498
|
+
if (submit && selected) {
|
|
499
|
+
if (process.env.NODE_ENV !== "production") {
|
|
500
|
+
console.error('push not implemented', selected, source);
|
|
501
|
+
}
|
|
502
|
+
onFinished({
|
|
503
|
+
isFinished: true,
|
|
504
|
+
isError: false
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
}, [submit, selected]);
|
|
508
|
+
if (!(children || config)) {
|
|
509
|
+
return React__default.createElement("span", null, "loading");
|
|
510
|
+
}
|
|
511
|
+
var defaultValueProp = defaultValue ? {
|
|
512
|
+
defaultValue: defaultValue
|
|
513
|
+
} : {};
|
|
514
|
+
var disabledProp = disabled ? {
|
|
515
|
+
disabled: true
|
|
516
|
+
} : {};
|
|
517
|
+
// sort and filter out archived values
|
|
518
|
+
var values = config ? config.values.sort(function (a, b) {
|
|
519
|
+
return a.order - b.order;
|
|
520
|
+
}).filter(function (value) {
|
|
521
|
+
return value.archived !== true;
|
|
522
|
+
}).filter(valuesFilter) : [];
|
|
523
|
+
return React__default.createElement(SelectWrapper, null, React__default.createElement(wpdsUiKit.Select.Root, _extends({
|
|
524
|
+
onValueChange: function onValueChange(e) {
|
|
525
|
+
onChange({
|
|
526
|
+
value: e
|
|
527
|
+
});
|
|
528
|
+
setSelected(e);
|
|
529
|
+
}
|
|
530
|
+
}, defaultValueProp, disabledProp), children ? children : null, !children && config && React__default.createElement(React__default.Fragment, null, React__default.createElement(wpdsUiKit.Select.Trigger, {
|
|
531
|
+
"data-test-id": config.name + "-select-trigger"
|
|
532
|
+
}, React__default.createElement(wpdsUiKit.Select.Label, null, label || config.name), React__default.createElement(wpdsUiKit.Select.Value, null)), React__default.createElement(wpdsUiKit.Select.Content, {
|
|
533
|
+
css: {
|
|
534
|
+
zIndex: wpdsUiKit.theme.zIndices.page
|
|
535
|
+
},
|
|
536
|
+
"data-test-id": config.name + "-select-content"
|
|
537
|
+
}, values.map(function (value) {
|
|
538
|
+
return React__default.createElement(wpdsUiKit.Select.Item, {
|
|
539
|
+
value: value.name,
|
|
540
|
+
key: value.name
|
|
541
|
+
}, value.name);
|
|
542
|
+
})))));
|
|
543
|
+
};
|
|
544
|
+
var SelectWrapper = /*#__PURE__*/wpdsUiKit.styled('div', {
|
|
545
|
+
boxSizing: 'border-box',
|
|
546
|
+
display: 'flex',
|
|
547
|
+
marginBottom: '$100',
|
|
548
|
+
flexDirection: 'column',
|
|
549
|
+
'& button': {
|
|
550
|
+
padding: '1px 6px'
|
|
551
|
+
},
|
|
552
|
+
'& *': {
|
|
553
|
+
boxSizing: 'border-box'
|
|
554
|
+
}
|
|
555
|
+
});
|
|
556
|
+
|
|
557
|
+
exports.AttributesState = AttributesState;
|
|
425
558
|
exports.CollectionBehaviors = CollectionBehaviors;
|
|
559
|
+
exports.DESelect = DESelect;
|
|
426
560
|
exports.IngestResponseState = IngestResponseState;
|
|
427
561
|
exports.getAttributes = getAttributes;
|
|
428
562
|
exports.hasRequiredPrivacyCookies = hasRequiredPrivacyCookies;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subs-de-inputs.cjs.development.js","sources":["../src/interfaces/index.ts","../src/utils/hasRequiredPrivacyCookies.ts","../src/services/dataEnrichment.ts"],"sourcesContent":["export type AttributeValue = {\n name: string;\n date_created: Number;\n last_modified_date: Number;\n archived: boolean;\n order: Number;\n};\n\nexport const CollectionBehaviors = {\n COLLECT: 'COLLECT',\n DO_NOT_COLLECT: 'DO_NOT_COLLECT',\n} as const;\n\nexport type Attribute = {\n name: string;\n approved_for_use: boolean;\n collection_behavior: (typeof CollectionBehaviors)[keyof typeof CollectionBehaviors];\n datatype: 'string';\n explicit: boolean;\n multiple_value: boolean;\n last_modified_date: Number;\n date_created: Number;\n values: Array<any>;\n};\n\nexport const IngestResponseState = {\n SUCCESS: '100',\n SYSTEM_ERROR: '101',\n INVALID_TYPE: '102',\n INVALID_IDENTIFIER: '103',\n INVALID_DATA: '104',\n INVALID_ATTRIBUTE_DEFINITION: '105',\n INVALID_META_DEFINITION: '106',\n} as const;\n","import { WPGeo, getCookie } from '@washingtonpost/subs-sdk';\n\nexport const hasRequiredPrivacyCookies = () => {\n if (typeof window === 'undefined') {\n return false;\n }\n\n const wp_usp = getCookie('wp_usp');\n\n const countryCode = WPGeo()?.country_code;\n\n return !!(wp_usp && countryCode === 'US');\n};\n","import { ENDPOINTS, ResponseStatus } from '@washingtonpost/subs-sdk';\n\nconst base = `${ENDPOINTS.base}/de/v1`;\n\nconst JSONHeaders = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n};\n\nconst attributesCache: Record<string, any> = {};\nexport const getAttributes = async ({ fieldName }: { fieldName: string }) => {\n if (attributesCache[fieldName]) {\n return attributesCache[fieldName];\n }\n\n const fieldNames = [fieldName];\n\n try {\n const url = new URL(`${base}/attributes`);\n url.searchParams.set('attributes', fieldNames.join(','));\n\n const data = await fetch(url.toString(), {\n credentials: 'include',\n headers: JSONHeaders,\n });\n const json = await data.json();\n\n if (data.ok && json.status === ResponseStatus.SUCCESS) {\n const attributes = json.attributes || [];\n attributesCache[fieldName] = attributes;\n return attributes;\n } else {\n return [];\n }\n } catch (e) {\n console.debug(e);\n return [];\n }\n};\n"],"names":["CollectionBehaviors","COLLECT","DO_NOT_COLLECT","IngestResponseState","SUCCESS","SYSTEM_ERROR","INVALID_TYPE","INVALID_IDENTIFIER","INVALID_DATA","INVALID_ATTRIBUTE_DEFINITION","INVALID_META_DEFINITION","hasRequiredPrivacyCookies","window","wp_usp","getCookie","countryCode","_WPGeo","WPGeo","country_code","base","ENDPOINTS","JSONHeaders","Accept","attributesCache","getAttributes","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","fieldName","fieldNames","url","data","json","attributes","wrap","_callee$","_context","prev","next","abrupt","URL","searchParams","set","join","fetch","toString","credentials","headers","sent","ok","status","ResponseStatus","t0","console","debug","stop","_x","apply","arguments"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"subs-de-inputs.cjs.development.js","sources":["../src/interfaces/index.ts","../src/utils/hasRequiredPrivacyCookies.ts","../src/services/dataEnrichment.ts","../src/components/DESelect/index.tsx"],"sourcesContent":["export type AttributeValue = {\n name: string;\n date_created: Number;\n last_modified_date: Number;\n archived: boolean;\n order: number;\n};\n\nexport const CollectionBehaviors = {\n COLLECT: 'COLLECT',\n DO_NOT_COLLECT: 'DO_NOT_COLLECT',\n} as const;\n\nexport type Attribute = {\n name: string;\n approved_for_use?: boolean;\n collection_behavior?: (typeof CollectionBehaviors)[keyof typeof CollectionBehaviors];\n datatype: 'string';\n explicit: boolean;\n multiple_value: boolean;\n last_modified_date: Number;\n date_created: Number;\n values: Array<AttributeValue>;\n};\n\nexport const AttributesState = {\n SUCCESS: '100',\n} as const;\n\nexport const IngestResponseState = {\n SUCCESS: '100',\n SYSTEM_ERROR: '101',\n INVALID_TYPE: '102',\n INVALID_IDENTIFIER: '103',\n INVALID_DATA: '104',\n INVALID_ATTRIBUTE_DEFINITION: '105',\n INVALID_META_DEFINITION: '106',\n} as const;\n","import { WPGeo, getCookie } from '@washingtonpost/subs-sdk';\n\nexport const hasRequiredPrivacyCookies = () => {\n if (typeof window === 'undefined') {\n return false;\n }\n\n const wp_usp = getCookie('wp_usp');\n\n const countryCode = WPGeo()?.country_code;\n\n return !!(wp_usp && countryCode === 'US');\n};\n","import {\n ENDPOINTS,\n ResponseStatus,\n JSON_HEADERS,\n} from '@washingtonpost/subs-sdk';\n\nconst base = `${ENDPOINTS.base}/de/v1`;\n\nconst attributesCache: Record<string, any> = {};\nexport const getAttributes = async ({ fieldName }: { fieldName: string }) => {\n if (attributesCache[fieldName]) {\n return attributesCache[fieldName];\n }\n\n const fieldNames = [fieldName];\n\n try {\n const url = new URL(`${base}/attributes`);\n url.searchParams.set('attributes', fieldNames.join(','));\n\n const data = await fetch(url.toString(), {\n credentials: 'include',\n headers: JSON_HEADERS,\n });\n const json = await data.json();\n\n if (data.ok && json.status === ResponseStatus.SUCCESS) {\n const attributes = json.attributes || [];\n attributesCache[fieldName] = attributes;\n return attributes;\n } else {\n return [];\n }\n } catch (e) {\n console.debug(e);\n return [];\n }\n};\n","import React, { useState, useEffect } from 'react';\nimport { Select, styled, theme } from '@washingtonpost/wpds-ui-kit';\nimport { Attribute, AttributeValue } from '../../interfaces';\nimport { SubsWindow } from '@washingtonpost/subs-sdk';\nimport { getAttributes } from '../../services/dataEnrichment';\n\ndeclare global {\n interface Window extends SubsWindow {}\n}\n\ninterface DESelectProps {\n source: string;\n fieldName: string;\n label?: string;\n dataDictionaryConfig?: Attribute;\n defaultValue?: string;\n disabled?: boolean;\n submit: boolean;\n onChange?: ({ value }: { value: string }) => void;\n onFinished?: ({\n isFinished,\n isError,\n }: {\n isFinished: boolean;\n isError: boolean;\n }) => void;\n valuesFilter?: (value: AttributeValue) => boolean;\n selectProps?: {\n root?: any;\n trigger?: any;\n label?: any;\n value?: any;\n content?: any;\n item?: any;\n };\n children?: React.ReactNode;\n}\n\nexport const DESelect: React.FC<DESelectProps> = ({\n source,\n fieldName,\n label,\n dataDictionaryConfig,\n defaultValue,\n disabled,\n submit,\n onChange = () => {},\n onFinished = () => {},\n valuesFilter = () => true,\n children,\n}) => {\n const [config, setConfig] = useState(dataDictionaryConfig);\n\n const [selected, setSelected] = useState('');\n\n useEffect(() => {\n if (children) {\n if (__DEV__) {\n console.debug('childen props', children);\n }\n return;\n }\n\n if (!config) {\n (async () => {\n // TODO: Switch to window.__twpdeu.getFieldConfigs\n const config = await getAttributes({ fieldName });\n if (__DEV__) {\n console.debug('config from API', config);\n }\n setConfig(config[0]);\n })();\n }\n }, []);\n\n useEffect(() => {\n if (submit && selected) {\n if (__DEV__) {\n console.error('push not implemented', selected, source);\n }\n onFinished({ isFinished: true, isError: false });\n }\n }, [submit, selected]);\n\n if (!(children || config)) {\n return <span>loading</span>;\n }\n\n const defaultValueProp = defaultValue ? { defaultValue } : {};\n\n const disabledProp = disabled ? { disabled: true } : {};\n\n // sort and filter out archived values\n const values = config\n ? config.values\n .sort((a, b) => a.order - b.order)\n .filter((value) => value.archived !== true)\n .filter(valuesFilter)\n : [];\n\n return (\n <SelectWrapper>\n <Select.Root\n onValueChange={(e: string) => {\n onChange({ value: e });\n setSelected(e);\n }}\n {...defaultValueProp}\n {...disabledProp}\n >\n {children ? children : null}\n {!children && config && (\n <>\n <Select.Trigger data-test-id={`${config.name}-select-trigger`}>\n <Select.Label>{label || config.name}</Select.Label>\n <Select.Value />\n </Select.Trigger>\n <Select.Content\n css={{ zIndex: theme.zIndices.page }}\n data-test-id={`${config.name}-select-content`}\n >\n {values.map((value) => (\n <Select.Item value={value.name} key={value.name}>\n {value.name}\n </Select.Item>\n ))}\n </Select.Content>\n </>\n )}\n </Select.Root>\n </SelectWrapper>\n );\n};\n\nconst SelectWrapper = styled('div', {\n boxSizing: 'border-box',\n display: 'flex',\n marginBottom: '$100',\n flexDirection: 'column',\n '& button': {\n padding: '1px 6px',\n },\n '& *': { boxSizing: 'border-box' },\n});\n"],"names":["CollectionBehaviors","COLLECT","DO_NOT_COLLECT","AttributesState","SUCCESS","IngestResponseState","SYSTEM_ERROR","INVALID_TYPE","INVALID_IDENTIFIER","INVALID_DATA","INVALID_ATTRIBUTE_DEFINITION","INVALID_META_DEFINITION","hasRequiredPrivacyCookies","window","wp_usp","getCookie","countryCode","_WPGeo","WPGeo","country_code","base","ENDPOINTS","attributesCache","getAttributes","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","fieldName","fieldNames","url","data","json","attributes","wrap","_callee$","_context","prev","next","abrupt","URL","searchParams","set","join","fetch","toString","credentials","headers","JSON_HEADERS","sent","ok","status","ResponseStatus","t0","console","debug","stop","_x","apply","arguments","DESelect","source","label","dataDictionaryConfig","defaultValue","disabled","submit","_ref$onChange","onChange","_ref$onFinished","onFinished","_ref$valuesFilter","valuesFilter","children","_useState","useState","config","setConfig","_useState2","selected","setSelected","useEffect","process","env","NODE_ENV","error","isFinished","isError","React","defaultValueProp","disabledProp","values","sort","a","b","order","filter","value","archived","SelectWrapper","Select","Root","_extends","onValueChange","e","Trigger","name","Label","Value","Content","css","zIndex","theme","zIndices","page","map","Item","key","styled","boxSizing","display","marginBottom","flexDirection","padding"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@washingtonpost/subs-sdk");function e(){e=function(){return t};var t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function s(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(t){s=function(t,e,r){return t[e]=r}}function f(t,e,r,n){var i=Object.create((e&&e.prototype instanceof p?e:p).prototype),a=new I(n||[]);return o(i,"_invoke",{value:x(t,r,a)}),i}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=f;var h={};function p(){}function v(){}function d(){}var y={};s(y,a,(function(){return this}));var g=Object.getPrototypeOf,m=g&&g(g(N([])));m&&m!==r&&n.call(m,a)&&(y=m);var w=d.prototype=p.prototype=Object.create(y);function L(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){var r;o(this,"_invoke",{value:function(o,i){function a(){return new e((function(r,a){!function r(o,i,a,u){var c=l(t[o],t,i);if("throw"!==c.type){var s=c.arg,f=s.value;return f&&"object"==typeof f&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,a,u)}),(function(t){r("throw",t,a,u)})):e.resolve(f).then((function(t){s.value=t,a(s)}),(function(t){return r("throw",t,a,u)}))}u(c.arg)}(o,i,r,a)}))}return r=r?r.then(a,a):a()}})}function x(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var u=E(a,r);if(u){if(u===h)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=l(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===h)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function E(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),h;var o=l(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,h;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,h):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,h)}function _(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(_,this),this.reset(!0)}function N(t){if(t){var e=t[a];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:T}}function T(){return{value:void 0,done:!0}}return v.prototype=d,o(w,"constructor",{value:d,configurable:!0}),o(d,"constructor",{value:v,configurable:!0}),v.displayName=s(d,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===v||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,d):(t.__proto__=d,s(t,c,"GeneratorFunction")),t.prototype=Object.create(w),t},t.awrap=function(t){return{__await:t}},L(b.prototype),s(b.prototype,u,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(f(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},L(w),s(w,c,"Generator"),s(w,a,(function(){return this})),s(w,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=N,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var u=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,h):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),h},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),O(r),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;O(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:N(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),h}},t}function r(t,e,r,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,o)}function n(t){return function(){var e=this,n=arguments;return new Promise((function(o,i){var a=t.apply(e,n);function u(t){r(a,o,i,u,c,"next",t)}function c(t){r(a,o,i,u,c,"throw",t)}u(void 0)}))}}var o=t.ENDPOINTS.base+"/de/v1",i={Accept:"application/json","Content-Type":"application/json"},a={},u=function(){var r=n(e().mark((function r(n){var u,c,s,f,l,h;return e().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!a[u=n.fieldName]){e.next=3;break}return e.abrupt("return",a[u]);case 3:return c=[u],e.prev=4,(s=new URL(o+"/attributes")).searchParams.set("attributes",c.join(",")),e.next=9,fetch(s.toString(),{credentials:"include",headers:i});case 9:return f=e.sent,e.next=12,f.json();case 12:if(l=e.sent,!f.ok||l.status!==t.ResponseStatus.SUCCESS){e.next=19;break}return a[u]=h=l.attributes||[],e.abrupt("return",h);case 19:return e.abrupt("return",[]);case 20:e.next=26;break;case 22:return e.prev=22,e.t0=e.catch(4),console.debug(e.t0),e.abrupt("return",[]);case 26:case"end":return e.stop()}}),r,null,[[4,22]])})));return function(t){return r.apply(this,arguments)}}();exports.CollectionBehaviors={COLLECT:"COLLECT",DO_NOT_COLLECT:"DO_NOT_COLLECT"},exports.IngestResponseState={SUCCESS:"100",SYSTEM_ERROR:"101",INVALID_TYPE:"102",INVALID_IDENTIFIER:"103",INVALID_DATA:"104",INVALID_ATTRIBUTE_DEFINITION:"105",INVALID_META_DEFINITION:"106"},exports.getAttributes=u,exports.hasRequiredPrivacyCookies=function(){var e;if("undefined"==typeof window)return!1;var r=t.getCookie("wp_usp"),n=null==(e=t.WPGeo())?void 0:e.country_code;return!(!r||"US"!==n)};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=require("@washingtonpost/subs-sdk"),r=require("react"),n=(t=r)&&"object"==typeof t&&"default"in t?t.default:t,o=require("@washingtonpost/wpds-ui-kit");function i(){i=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",u=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function s(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(t){s=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=Object.create((e&&e.prototype instanceof p?e:p).prototype),a=new _(o||[]);return n(i,"_invoke",{value:x(t,r,a)}),i}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var h={};function p(){}function d(){}function v(){}var y={};s(y,a,(function(){return this}));var g=Object.getPrototypeOf,m=g&&g(g(N([])));m&&m!==e&&r.call(m,a)&&(y=m);var b=v.prototype=p.prototype=Object.create(y);function E(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){var o;n(this,"_invoke",{value:function(n,i){function a(){return new e((function(o,a){!function n(o,i,a,u){var c=f(t[o],t,i);if("throw"!==c.type){var s=c.arg,l=s.value;return l&&"object"==typeof l&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):e.resolve(l).then((function(t){s.value=t,a(s)}),(function(t){return n("throw",t,a,u)}))}u(c.arg)}(n,i,o,a)}))}return o=o?o.then(a,a):a()}})}function x(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var u=L(a,r);if(u){if(u===h)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=f(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===h)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function L(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,L(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),h;var o=f(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,h;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,h):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,h)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function _(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function N(t){if(t){var e=t[a];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:I}}function I(){return{value:void 0,done:!0}}return d.prototype=v,n(b,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:d,configurable:!0}),d.displayName=s(v,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===d||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,s(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},E(w.prototype),s(w.prototype,u,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},E(b),s(b,c,"Generator"),s(b,a,(function(){return this})),s(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=N,_.prototype={constructor:_,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,h):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),h},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),O(r),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;O(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:N(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),h}},t}function a(t,e,r,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,o)}function u(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function u(t){a(i,n,o,u,c,"next",t)}function c(t){a(i,n,o,u,c,"throw",t)}u(void 0)}))}}function c(){return(c=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}var s=e.ENDPOINTS.base+"/de/v1",l={},f=function(){var t=u(i().mark((function t(r){var n,o,a,u,c,f;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!l[n=r.fieldName]){t.next=3;break}return t.abrupt("return",l[n]);case 3:return o=[n],t.prev=4,(a=new URL(s+"/attributes")).searchParams.set("attributes",o.join(",")),t.next=9,fetch(a.toString(),{credentials:"include",headers:e.JSON_HEADERS});case 9:return u=t.sent,t.next=12,u.json();case 12:if(c=t.sent,!u.ok||c.status!==e.ResponseStatus.SUCCESS){t.next=19;break}return l[n]=f=c.attributes||[],t.abrupt("return",f);case 19:return t.abrupt("return",[]);case 20:t.next=26;break;case 22:return t.prev=22,t.t0=t.catch(4),console.debug(t.t0),t.abrupt("return",[]);case 26:case"end":return t.stop()}}),t,null,[[4,22]])})));return function(e){return t.apply(this,arguments)}}(),h=o.styled("div",{boxSizing:"border-box",display:"flex",marginBottom:"$100",flexDirection:"column","& button":{padding:"1px 6px"},"& *":{boxSizing:"border-box"}});exports.AttributesState={SUCCESS:"100"},exports.CollectionBehaviors={COLLECT:"COLLECT",DO_NOT_COLLECT:"DO_NOT_COLLECT"},exports.DESelect=function(t){var e=t.source,a=t.fieldName,s=t.label,l=t.defaultValue,p=t.disabled,d=t.submit,v=t.onChange,y=void 0===v?function(){}:v,g=t.onFinished,m=void 0===g?function(){}:g,b=t.valuesFilter,E=void 0===b?function(){return!0}:b,w=t.children,x=r.useState(t.dataDictionaryConfig),L=x[0],S=x[1],O=r.useState(""),_=O[0],N=O[1];if(r.useEffect((function(){w?"production"!==process.env.NODE_ENV&&console.debug("childen props",w):L||u(i().mark((function t(){var e;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,f({fieldName:a});case 2:e=t.sent,"production"!==process.env.NODE_ENV&&console.debug("config from API",e),S(e[0]);case 5:case"end":return t.stop()}}),t)})))()}),[]),r.useEffect((function(){d&&_&&("production"!==process.env.NODE_ENV&&console.error("push not implemented",_,e),m({isFinished:!0,isError:!1}))}),[d,_]),!w&&!L)return n.createElement("span",null,"loading");var I=l?{defaultValue:l}:{},T=p?{disabled:!0}:{},C=L?L.values.sort((function(t,e){return t.order-e.order})).filter((function(t){return!0!==t.archived})).filter(E):[];return n.createElement(h,null,n.createElement(o.Select.Root,c({onValueChange:function(t){y({value:t}),N(t)}},I,T),w||null,!w&&L&&n.createElement(n.Fragment,null,n.createElement(o.Select.Trigger,{"data-test-id":L.name+"-select-trigger"},n.createElement(o.Select.Label,null,s||L.name),n.createElement(o.Select.Value,null)),n.createElement(o.Select.Content,{css:{zIndex:o.theme.zIndices.page},"data-test-id":L.name+"-select-content"},C.map((function(t){return n.createElement(o.Select.Item,{value:t.name,key:t.name},t.name)}))))))},exports.IngestResponseState={SUCCESS:"100",SYSTEM_ERROR:"101",INVALID_TYPE:"102",INVALID_IDENTIFIER:"103",INVALID_DATA:"104",INVALID_ATTRIBUTE_DEFINITION:"105",INVALID_META_DEFINITION:"106"},exports.getAttributes=f,exports.hasRequiredPrivacyCookies=function(){var t;if("undefined"==typeof window)return!1;var r=e.getCookie("wp_usp"),n=null==(t=e.WPGeo())?void 0:t.country_code;return!(!r||"US"!==n)};
|
|
2
2
|
//# sourceMappingURL=subs-de-inputs.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subs-de-inputs.cjs.production.min.js","sources":["../src/services/dataEnrichment.ts","../src/interfaces/index.ts","../src/utils/hasRequiredPrivacyCookies.ts"],"sourcesContent":["import { ENDPOINTS, ResponseStatus } from '@washingtonpost/subs-sdk';\n\nconst base = `${ENDPOINTS.base}/de/v1`;\n\nconst JSONHeaders = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n};\n\nconst attributesCache: Record<string, any> = {};\nexport const getAttributes = async ({ fieldName }: { fieldName: string }) => {\n if (attributesCache[fieldName]) {\n return attributesCache[fieldName];\n }\n\n const fieldNames = [fieldName];\n\n try {\n const url = new URL(`${base}/attributes`);\n url.searchParams.set('attributes', fieldNames.join(','));\n\n const data = await fetch(url.toString(), {\n credentials: 'include',\n headers: JSONHeaders,\n });\n const json = await data.json();\n\n if (data.ok && json.status === ResponseStatus.SUCCESS) {\n const attributes = json.attributes || [];\n attributesCache[fieldName] = attributes;\n return attributes;\n } else {\n return [];\n }\n } catch (e) {\n console.debug(e);\n return [];\n }\n};\n","export type AttributeValue = {\n name: string;\n date_created: Number;\n last_modified_date: Number;\n archived: boolean;\n order: Number;\n};\n\nexport const CollectionBehaviors = {\n COLLECT: 'COLLECT',\n DO_NOT_COLLECT: 'DO_NOT_COLLECT',\n} as const;\n\nexport type Attribute = {\n name: string;\n approved_for_use: boolean;\n collection_behavior: (typeof CollectionBehaviors)[keyof typeof CollectionBehaviors];\n datatype: 'string';\n explicit: boolean;\n multiple_value: boolean;\n last_modified_date: Number;\n date_created: Number;\n values: Array<any>;\n};\n\nexport const IngestResponseState = {\n SUCCESS: '100',\n SYSTEM_ERROR: '101',\n INVALID_TYPE: '102',\n INVALID_IDENTIFIER: '103',\n INVALID_DATA: '104',\n INVALID_ATTRIBUTE_DEFINITION: '105',\n INVALID_META_DEFINITION: '106',\n} as const;\n","import { WPGeo, getCookie } from '@washingtonpost/subs-sdk';\n\nexport const hasRequiredPrivacyCookies = () => {\n if (typeof window === 'undefined') {\n return false;\n }\n\n const wp_usp = getCookie('wp_usp');\n\n const countryCode = WPGeo()?.country_code;\n\n return !!(wp_usp && countryCode === 'US');\n};\n"],"names":["base","ENDPOINTS","JSONHeaders","Accept","Content-Type","attributesCache","getAttributes","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","fieldName","fieldNames","url","data","json","attributes","wrap","_context","prev","next","abrupt","URL","searchParams","set","join","fetch","toString","credentials","headers","sent","ok","status","ResponseStatus","SUCCESS","t0","console","debug","stop","_x","apply","arguments","COLLECT","DO_NOT_COLLECT","SYSTEM_ERROR","INVALID_TYPE","INVALID_IDENTIFIER","INVALID_DATA","INVALID_ATTRIBUTE_DEFINITION","INVALID_META_DEFINITION","window","wp_usp","getCookie","countryCode","_WPGeo","WPGeo","country_code"],"mappings":"i3NAEA,IAAMA,EAAUC,YAAUD,cAEpBE,EAAc,CAClBC,OAAQ,mBACRC,eAAgB,oBAGZC,EAAuC,GAChCC,aAAa,IAAAC,EAAAC,EAAAC,IAAAC,MAAG,SAAAC,EAAAC,GAAA,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAT,IAAAU,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAAkB,IACzCjB,EADgCQ,EAASD,EAATC,YACNO,EAAAE,OAAA,MAAA,OAAAF,EAAAG,gBACrBlB,EAAgBQ,IAAU,OAOwB,OAJrDC,EAAa,CAACD,GAAUO,EAAAC,QAGtBN,EAAM,IAAIS,IAAOxB,kBACnByB,aAAaC,IAAI,aAAcZ,EAAWa,KAAK,MAAMP,EAAAE,OAEtCM,MAAMb,EAAIc,WAAY,CACvCC,YAAa,UACbC,QAAS7B,IACT,OAHQ,OAAJc,EAAII,EAAAY,KAAAZ,EAAAE,QAISN,EAAKC,OAAM,QAApB,GAAJA,EAAIG,EAAAY,MAENhB,EAAKiB,IAAMhB,EAAKiB,SAAWC,iBAAeC,SAAOhB,EAAAE,QAAA,MAEX,OAAxCjB,EAAgBQ,GADVK,EAAaD,EAAKC,YAAc,GACEE,EAAAG,gBACjCL,GAAU,QAAA,OAAAE,EAAAG,gBAEV,IAAE,QAAAH,EAAAE,QAAA,MAAA,QAGM,OAHNF,EAAAC,QAAAD,EAAAiB,GAAAjB,WAGXkB,QAAQC,MAAKnB,EAAAiB,IAAIjB,EAAAG,gBACV,IAAE,QAAA,UAAA,OAAAH,EAAAoB,UAAA7B,qBAEZ,gBA5ByB8B,GAAA,OAAAlC,EAAAmC,WAAAC,2CCFS,CACjCC,QAAS,UACTC,eAAgB,8CAeiB,CACjCT,QAAS,MACTU,aAAc,MACdC,aAAc,MACdC,mBAAoB,MACpBC,aAAc,MACdC,6BAA8B,MAC9BC,wBAAyB,iEC9Bc,iBACvC,GAAsB,oBAAXC,OACT,OAAO,EAGT,IAAMC,EAASC,YAAU,UAEnBC,SAAWC,EAAGC,kBAAAD,EAASE,aAE7B,SAAUL,GAA0B,OAAhBE"}
|
|
1
|
+
{"version":3,"file":"subs-de-inputs.cjs.production.min.js","sources":["../src/services/dataEnrichment.ts","../src/components/DESelect/index.tsx","../src/interfaces/index.ts","../src/utils/hasRequiredPrivacyCookies.ts"],"sourcesContent":["import {\n ENDPOINTS,\n ResponseStatus,\n JSON_HEADERS,\n} from '@washingtonpost/subs-sdk';\n\nconst base = `${ENDPOINTS.base}/de/v1`;\n\nconst attributesCache: Record<string, any> = {};\nexport const getAttributes = async ({ fieldName }: { fieldName: string }) => {\n if (attributesCache[fieldName]) {\n return attributesCache[fieldName];\n }\n\n const fieldNames = [fieldName];\n\n try {\n const url = new URL(`${base}/attributes`);\n url.searchParams.set('attributes', fieldNames.join(','));\n\n const data = await fetch(url.toString(), {\n credentials: 'include',\n headers: JSON_HEADERS,\n });\n const json = await data.json();\n\n if (data.ok && json.status === ResponseStatus.SUCCESS) {\n const attributes = json.attributes || [];\n attributesCache[fieldName] = attributes;\n return attributes;\n } else {\n return [];\n }\n } catch (e) {\n console.debug(e);\n return [];\n }\n};\n","import React, { useState, useEffect } from 'react';\nimport { Select, styled, theme } from '@washingtonpost/wpds-ui-kit';\nimport { Attribute, AttributeValue } from '../../interfaces';\nimport { SubsWindow } from '@washingtonpost/subs-sdk';\nimport { getAttributes } from '../../services/dataEnrichment';\n\ndeclare global {\n interface Window extends SubsWindow {}\n}\n\ninterface DESelectProps {\n source: string;\n fieldName: string;\n label?: string;\n dataDictionaryConfig?: Attribute;\n defaultValue?: string;\n disabled?: boolean;\n submit: boolean;\n onChange?: ({ value }: { value: string }) => void;\n onFinished?: ({\n isFinished,\n isError,\n }: {\n isFinished: boolean;\n isError: boolean;\n }) => void;\n valuesFilter?: (value: AttributeValue) => boolean;\n selectProps?: {\n root?: any;\n trigger?: any;\n label?: any;\n value?: any;\n content?: any;\n item?: any;\n };\n children?: React.ReactNode;\n}\n\nexport const DESelect: React.FC<DESelectProps> = ({\n source,\n fieldName,\n label,\n dataDictionaryConfig,\n defaultValue,\n disabled,\n submit,\n onChange = () => {},\n onFinished = () => {},\n valuesFilter = () => true,\n children,\n}) => {\n const [config, setConfig] = useState(dataDictionaryConfig);\n\n const [selected, setSelected] = useState('');\n\n useEffect(() => {\n if (children) {\n if (__DEV__) {\n console.debug('childen props', children);\n }\n return;\n }\n\n if (!config) {\n (async () => {\n // TODO: Switch to window.__twpdeu.getFieldConfigs\n const config = await getAttributes({ fieldName });\n if (__DEV__) {\n console.debug('config from API', config);\n }\n setConfig(config[0]);\n })();\n }\n }, []);\n\n useEffect(() => {\n if (submit && selected) {\n if (__DEV__) {\n console.error('push not implemented', selected, source);\n }\n onFinished({ isFinished: true, isError: false });\n }\n }, [submit, selected]);\n\n if (!(children || config)) {\n return <span>loading</span>;\n }\n\n const defaultValueProp = defaultValue ? { defaultValue } : {};\n\n const disabledProp = disabled ? { disabled: true } : {};\n\n // sort and filter out archived values\n const values = config\n ? config.values\n .sort((a, b) => a.order - b.order)\n .filter((value) => value.archived !== true)\n .filter(valuesFilter)\n : [];\n\n return (\n <SelectWrapper>\n <Select.Root\n onValueChange={(e: string) => {\n onChange({ value: e });\n setSelected(e);\n }}\n {...defaultValueProp}\n {...disabledProp}\n >\n {children ? children : null}\n {!children && config && (\n <>\n <Select.Trigger data-test-id={`${config.name}-select-trigger`}>\n <Select.Label>{label || config.name}</Select.Label>\n <Select.Value />\n </Select.Trigger>\n <Select.Content\n css={{ zIndex: theme.zIndices.page }}\n data-test-id={`${config.name}-select-content`}\n >\n {values.map((value) => (\n <Select.Item value={value.name} key={value.name}>\n {value.name}\n </Select.Item>\n ))}\n </Select.Content>\n </>\n )}\n </Select.Root>\n </SelectWrapper>\n );\n};\n\nconst SelectWrapper = styled('div', {\n boxSizing: 'border-box',\n display: 'flex',\n marginBottom: '$100',\n flexDirection: 'column',\n '& button': {\n padding: '1px 6px',\n },\n '& *': { boxSizing: 'border-box' },\n});\n","export type AttributeValue = {\n name: string;\n date_created: Number;\n last_modified_date: Number;\n archived: boolean;\n order: number;\n};\n\nexport const CollectionBehaviors = {\n COLLECT: 'COLLECT',\n DO_NOT_COLLECT: 'DO_NOT_COLLECT',\n} as const;\n\nexport type Attribute = {\n name: string;\n approved_for_use?: boolean;\n collection_behavior?: (typeof CollectionBehaviors)[keyof typeof CollectionBehaviors];\n datatype: 'string';\n explicit: boolean;\n multiple_value: boolean;\n last_modified_date: Number;\n date_created: Number;\n values: Array<AttributeValue>;\n};\n\nexport const AttributesState = {\n SUCCESS: '100',\n} as const;\n\nexport const IngestResponseState = {\n SUCCESS: '100',\n SYSTEM_ERROR: '101',\n INVALID_TYPE: '102',\n INVALID_IDENTIFIER: '103',\n INVALID_DATA: '104',\n INVALID_ATTRIBUTE_DEFINITION: '105',\n INVALID_META_DEFINITION: '106',\n} as const;\n","import { WPGeo, getCookie } from '@washingtonpost/subs-sdk';\n\nexport const hasRequiredPrivacyCookies = () => {\n if (typeof window === 'undefined') {\n return false;\n }\n\n const wp_usp = getCookie('wp_usp');\n\n const countryCode = WPGeo()?.country_code;\n\n return !!(wp_usp && countryCode === 'US');\n};\n"],"names":["base","ENDPOINTS","attributesCache","getAttributes","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","fieldName","fieldNames","url","data","json","attributes","wrap","_context","prev","next","abrupt","URL","searchParams","set","join","fetch","toString","credentials","headers","JSON_HEADERS","sent","ok","status","ResponseStatus","SUCCESS","t0","console","debug","stop","_x","apply","arguments","SelectWrapper","styled","boxSizing","display","marginBottom","flexDirection","& button","padding","& *","COLLECT","DO_NOT_COLLECT","source","label","defaultValue","disabled","submit","_ref$onChange","onChange","_ref$onFinished","onFinished","_ref$valuesFilter","valuesFilter","children","_useState","useState","dataDictionaryConfig","config","setConfig","_useState2","selected","setSelected","useEffect","process","env","NODE_ENV","error","isFinished","isError","React","defaultValueProp","disabledProp","values","sort","a","b","order","filter","value","archived","Select","Root","_extends","onValueChange","e","Trigger","name","Label","Value","Content","css","zIndex","theme","zIndices","page","map","Item","key","SYSTEM_ERROR","INVALID_TYPE","INVALID_IDENTIFIER","INVALID_DATA","INVALID_ATTRIBUTE_DEFINITION","INVALID_META_DEFINITION","window","wp_usp","getCookie","countryCode","_WPGeo","WPGeo","country_code"],"mappings":"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"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
import { getCookie, WPGeo, ENDPOINTS, ResponseStatus } from '@washingtonpost/subs-sdk';
|
|
1
|
+
import { getCookie, WPGeo, JSON_HEADERS, ENDPOINTS, ResponseStatus } from '@washingtonpost/subs-sdk';
|
|
2
|
+
import React, { useState, useEffect } from 'react';
|
|
3
|
+
import { Select, theme, styled } from '@washingtonpost/wpds-ui-kit';
|
|
2
4
|
|
|
3
5
|
var CollectionBehaviors = {
|
|
4
6
|
COLLECT: 'COLLECT',
|
|
5
7
|
DO_NOT_COLLECT: 'DO_NOT_COLLECT'
|
|
6
8
|
};
|
|
9
|
+
var AttributesState = {
|
|
10
|
+
SUCCESS: '100'
|
|
11
|
+
};
|
|
7
12
|
var IngestResponseState = {
|
|
8
13
|
SUCCESS: '100',
|
|
9
14
|
SYSTEM_ERROR: '101',
|
|
@@ -355,12 +360,22 @@ function _asyncToGenerator(fn) {
|
|
|
355
360
|
});
|
|
356
361
|
};
|
|
357
362
|
}
|
|
363
|
+
function _extends() {
|
|
364
|
+
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
365
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
366
|
+
var source = arguments[i];
|
|
367
|
+
for (var key in source) {
|
|
368
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
369
|
+
target[key] = source[key];
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
return target;
|
|
374
|
+
};
|
|
375
|
+
return _extends.apply(this, arguments);
|
|
376
|
+
}
|
|
358
377
|
|
|
359
378
|
var base = ENDPOINTS.base + "/de/v1";
|
|
360
|
-
var JSONHeaders = {
|
|
361
|
-
Accept: 'application/json',
|
|
362
|
-
'Content-Type': 'application/json'
|
|
363
|
-
};
|
|
364
379
|
var attributesCache = {};
|
|
365
380
|
var getAttributes = /*#__PURE__*/function () {
|
|
366
381
|
var _ref2 = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref) {
|
|
@@ -382,7 +397,7 @@ var getAttributes = /*#__PURE__*/function () {
|
|
|
382
397
|
_context.next = 9;
|
|
383
398
|
return fetch(url.toString(), {
|
|
384
399
|
credentials: 'include',
|
|
385
|
-
headers:
|
|
400
|
+
headers: JSON_HEADERS
|
|
386
401
|
});
|
|
387
402
|
case 9:
|
|
388
403
|
data = _context.sent;
|
|
@@ -418,5 +433,119 @@ var getAttributes = /*#__PURE__*/function () {
|
|
|
418
433
|
};
|
|
419
434
|
}();
|
|
420
435
|
|
|
421
|
-
|
|
436
|
+
var DESelect = function DESelect(_ref) {
|
|
437
|
+
var source = _ref.source,
|
|
438
|
+
fieldName = _ref.fieldName,
|
|
439
|
+
label = _ref.label,
|
|
440
|
+
dataDictionaryConfig = _ref.dataDictionaryConfig,
|
|
441
|
+
defaultValue = _ref.defaultValue,
|
|
442
|
+
disabled = _ref.disabled,
|
|
443
|
+
submit = _ref.submit,
|
|
444
|
+
_ref$onChange = _ref.onChange,
|
|
445
|
+
onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
|
|
446
|
+
_ref$onFinished = _ref.onFinished,
|
|
447
|
+
onFinished = _ref$onFinished === void 0 ? function () {} : _ref$onFinished,
|
|
448
|
+
_ref$valuesFilter = _ref.valuesFilter,
|
|
449
|
+
valuesFilter = _ref$valuesFilter === void 0 ? function () {
|
|
450
|
+
return true;
|
|
451
|
+
} : _ref$valuesFilter,
|
|
452
|
+
children = _ref.children;
|
|
453
|
+
var _useState = useState(dataDictionaryConfig),
|
|
454
|
+
config = _useState[0],
|
|
455
|
+
setConfig = _useState[1];
|
|
456
|
+
var _useState2 = useState(''),
|
|
457
|
+
selected = _useState2[0],
|
|
458
|
+
setSelected = _useState2[1];
|
|
459
|
+
useEffect(function () {
|
|
460
|
+
if (children) {
|
|
461
|
+
if (process.env.NODE_ENV !== "production") {
|
|
462
|
+
console.debug('childen props', children);
|
|
463
|
+
}
|
|
464
|
+
return;
|
|
465
|
+
}
|
|
466
|
+
if (!config) {
|
|
467
|
+
_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
468
|
+
var config;
|
|
469
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
470
|
+
while (1) switch (_context.prev = _context.next) {
|
|
471
|
+
case 0:
|
|
472
|
+
_context.next = 2;
|
|
473
|
+
return getAttributes({
|
|
474
|
+
fieldName: fieldName
|
|
475
|
+
});
|
|
476
|
+
case 2:
|
|
477
|
+
config = _context.sent;
|
|
478
|
+
if (process.env.NODE_ENV !== "production") {
|
|
479
|
+
console.debug('config from API', config);
|
|
480
|
+
}
|
|
481
|
+
setConfig(config[0]);
|
|
482
|
+
case 5:
|
|
483
|
+
case "end":
|
|
484
|
+
return _context.stop();
|
|
485
|
+
}
|
|
486
|
+
}, _callee);
|
|
487
|
+
}))();
|
|
488
|
+
}
|
|
489
|
+
}, []);
|
|
490
|
+
useEffect(function () {
|
|
491
|
+
if (submit && selected) {
|
|
492
|
+
if (process.env.NODE_ENV !== "production") {
|
|
493
|
+
console.error('push not implemented', selected, source);
|
|
494
|
+
}
|
|
495
|
+
onFinished({
|
|
496
|
+
isFinished: true,
|
|
497
|
+
isError: false
|
|
498
|
+
});
|
|
499
|
+
}
|
|
500
|
+
}, [submit, selected]);
|
|
501
|
+
if (!(children || config)) {
|
|
502
|
+
return React.createElement("span", null, "loading");
|
|
503
|
+
}
|
|
504
|
+
var defaultValueProp = defaultValue ? {
|
|
505
|
+
defaultValue: defaultValue
|
|
506
|
+
} : {};
|
|
507
|
+
var disabledProp = disabled ? {
|
|
508
|
+
disabled: true
|
|
509
|
+
} : {};
|
|
510
|
+
// sort and filter out archived values
|
|
511
|
+
var values = config ? config.values.sort(function (a, b) {
|
|
512
|
+
return a.order - b.order;
|
|
513
|
+
}).filter(function (value) {
|
|
514
|
+
return value.archived !== true;
|
|
515
|
+
}).filter(valuesFilter) : [];
|
|
516
|
+
return React.createElement(SelectWrapper, null, React.createElement(Select.Root, _extends({
|
|
517
|
+
onValueChange: function onValueChange(e) {
|
|
518
|
+
onChange({
|
|
519
|
+
value: e
|
|
520
|
+
});
|
|
521
|
+
setSelected(e);
|
|
522
|
+
}
|
|
523
|
+
}, defaultValueProp, disabledProp), children ? children : null, !children && config && React.createElement(React.Fragment, null, React.createElement(Select.Trigger, {
|
|
524
|
+
"data-test-id": config.name + "-select-trigger"
|
|
525
|
+
}, React.createElement(Select.Label, null, label || config.name), React.createElement(Select.Value, null)), React.createElement(Select.Content, {
|
|
526
|
+
css: {
|
|
527
|
+
zIndex: theme.zIndices.page
|
|
528
|
+
},
|
|
529
|
+
"data-test-id": config.name + "-select-content"
|
|
530
|
+
}, values.map(function (value) {
|
|
531
|
+
return React.createElement(Select.Item, {
|
|
532
|
+
value: value.name,
|
|
533
|
+
key: value.name
|
|
534
|
+
}, value.name);
|
|
535
|
+
})))));
|
|
536
|
+
};
|
|
537
|
+
var SelectWrapper = /*#__PURE__*/styled('div', {
|
|
538
|
+
boxSizing: 'border-box',
|
|
539
|
+
display: 'flex',
|
|
540
|
+
marginBottom: '$100',
|
|
541
|
+
flexDirection: 'column',
|
|
542
|
+
'& button': {
|
|
543
|
+
padding: '1px 6px'
|
|
544
|
+
},
|
|
545
|
+
'& *': {
|
|
546
|
+
boxSizing: 'border-box'
|
|
547
|
+
}
|
|
548
|
+
});
|
|
549
|
+
|
|
550
|
+
export { AttributesState, CollectionBehaviors, DESelect, IngestResponseState, getAttributes, hasRequiredPrivacyCookies };
|
|
422
551
|
//# sourceMappingURL=subs-de-inputs.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subs-de-inputs.esm.js","sources":["../src/interfaces/index.ts","../src/utils/hasRequiredPrivacyCookies.ts","../src/services/dataEnrichment.ts"],"sourcesContent":["export type AttributeValue = {\n name: string;\n date_created: Number;\n last_modified_date: Number;\n archived: boolean;\n order: Number;\n};\n\nexport const CollectionBehaviors = {\n COLLECT: 'COLLECT',\n DO_NOT_COLLECT: 'DO_NOT_COLLECT',\n} as const;\n\nexport type Attribute = {\n name: string;\n approved_for_use: boolean;\n collection_behavior: (typeof CollectionBehaviors)[keyof typeof CollectionBehaviors];\n datatype: 'string';\n explicit: boolean;\n multiple_value: boolean;\n last_modified_date: Number;\n date_created: Number;\n values: Array<any>;\n};\n\nexport const IngestResponseState = {\n SUCCESS: '100',\n SYSTEM_ERROR: '101',\n INVALID_TYPE: '102',\n INVALID_IDENTIFIER: '103',\n INVALID_DATA: '104',\n INVALID_ATTRIBUTE_DEFINITION: '105',\n INVALID_META_DEFINITION: '106',\n} as const;\n","import { WPGeo, getCookie } from '@washingtonpost/subs-sdk';\n\nexport const hasRequiredPrivacyCookies = () => {\n if (typeof window === 'undefined') {\n return false;\n }\n\n const wp_usp = getCookie('wp_usp');\n\n const countryCode = WPGeo()?.country_code;\n\n return !!(wp_usp && countryCode === 'US');\n};\n","import { ENDPOINTS, ResponseStatus } from '@washingtonpost/subs-sdk';\n\nconst base = `${ENDPOINTS.base}/de/v1`;\n\nconst JSONHeaders = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n};\n\nconst attributesCache: Record<string, any> = {};\nexport const getAttributes = async ({ fieldName }: { fieldName: string }) => {\n if (attributesCache[fieldName]) {\n return attributesCache[fieldName];\n }\n\n const fieldNames = [fieldName];\n\n try {\n const url = new URL(`${base}/attributes`);\n url.searchParams.set('attributes', fieldNames.join(','));\n\n const data = await fetch(url.toString(), {\n credentials: 'include',\n headers: JSONHeaders,\n });\n const json = await data.json();\n\n if (data.ok && json.status === ResponseStatus.SUCCESS) {\n const attributes = json.attributes || [];\n attributesCache[fieldName] = attributes;\n return attributes;\n } else {\n return [];\n }\n } catch (e) {\n console.debug(e);\n return [];\n }\n};\n"],"names":["CollectionBehaviors","COLLECT","DO_NOT_COLLECT","IngestResponseState","SUCCESS","SYSTEM_ERROR","INVALID_TYPE","INVALID_IDENTIFIER","INVALID_DATA","INVALID_ATTRIBUTE_DEFINITION","INVALID_META_DEFINITION","hasRequiredPrivacyCookies","window","wp_usp","getCookie","countryCode","_WPGeo","WPGeo","country_code","base","ENDPOINTS","JSONHeaders","Accept","attributesCache","getAttributes","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","fieldName","fieldNames","url","data","json","attributes","wrap","_callee$","_context","prev","next","abrupt","URL","searchParams","set","join","fetch","toString","credentials","headers","sent","ok","status","ResponseStatus","t0","console","debug","stop","_x","apply","arguments"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"subs-de-inputs.esm.js","sources":["../src/interfaces/index.ts","../src/utils/hasRequiredPrivacyCookies.ts","../src/services/dataEnrichment.ts","../src/components/DESelect/index.tsx"],"sourcesContent":["export type AttributeValue = {\n name: string;\n date_created: Number;\n last_modified_date: Number;\n archived: boolean;\n order: number;\n};\n\nexport const CollectionBehaviors = {\n COLLECT: 'COLLECT',\n DO_NOT_COLLECT: 'DO_NOT_COLLECT',\n} as const;\n\nexport type Attribute = {\n name: string;\n approved_for_use?: boolean;\n collection_behavior?: (typeof CollectionBehaviors)[keyof typeof CollectionBehaviors];\n datatype: 'string';\n explicit: boolean;\n multiple_value: boolean;\n last_modified_date: Number;\n date_created: Number;\n values: Array<AttributeValue>;\n};\n\nexport const AttributesState = {\n SUCCESS: '100',\n} as const;\n\nexport const IngestResponseState = {\n SUCCESS: '100',\n SYSTEM_ERROR: '101',\n INVALID_TYPE: '102',\n INVALID_IDENTIFIER: '103',\n INVALID_DATA: '104',\n INVALID_ATTRIBUTE_DEFINITION: '105',\n INVALID_META_DEFINITION: '106',\n} as const;\n","import { WPGeo, getCookie } from '@washingtonpost/subs-sdk';\n\nexport const hasRequiredPrivacyCookies = () => {\n if (typeof window === 'undefined') {\n return false;\n }\n\n const wp_usp = getCookie('wp_usp');\n\n const countryCode = WPGeo()?.country_code;\n\n return !!(wp_usp && countryCode === 'US');\n};\n","import {\n ENDPOINTS,\n ResponseStatus,\n JSON_HEADERS,\n} from '@washingtonpost/subs-sdk';\n\nconst base = `${ENDPOINTS.base}/de/v1`;\n\nconst attributesCache: Record<string, any> = {};\nexport const getAttributes = async ({ fieldName }: { fieldName: string }) => {\n if (attributesCache[fieldName]) {\n return attributesCache[fieldName];\n }\n\n const fieldNames = [fieldName];\n\n try {\n const url = new URL(`${base}/attributes`);\n url.searchParams.set('attributes', fieldNames.join(','));\n\n const data = await fetch(url.toString(), {\n credentials: 'include',\n headers: JSON_HEADERS,\n });\n const json = await data.json();\n\n if (data.ok && json.status === ResponseStatus.SUCCESS) {\n const attributes = json.attributes || [];\n attributesCache[fieldName] = attributes;\n return attributes;\n } else {\n return [];\n }\n } catch (e) {\n console.debug(e);\n return [];\n }\n};\n","import React, { useState, useEffect } from 'react';\nimport { Select, styled, theme } from '@washingtonpost/wpds-ui-kit';\nimport { Attribute, AttributeValue } from '../../interfaces';\nimport { SubsWindow } from '@washingtonpost/subs-sdk';\nimport { getAttributes } from '../../services/dataEnrichment';\n\ndeclare global {\n interface Window extends SubsWindow {}\n}\n\ninterface DESelectProps {\n source: string;\n fieldName: string;\n label?: string;\n dataDictionaryConfig?: Attribute;\n defaultValue?: string;\n disabled?: boolean;\n submit: boolean;\n onChange?: ({ value }: { value: string }) => void;\n onFinished?: ({\n isFinished,\n isError,\n }: {\n isFinished: boolean;\n isError: boolean;\n }) => void;\n valuesFilter?: (value: AttributeValue) => boolean;\n selectProps?: {\n root?: any;\n trigger?: any;\n label?: any;\n value?: any;\n content?: any;\n item?: any;\n };\n children?: React.ReactNode;\n}\n\nexport const DESelect: React.FC<DESelectProps> = ({\n source,\n fieldName,\n label,\n dataDictionaryConfig,\n defaultValue,\n disabled,\n submit,\n onChange = () => {},\n onFinished = () => {},\n valuesFilter = () => true,\n children,\n}) => {\n const [config, setConfig] = useState(dataDictionaryConfig);\n\n const [selected, setSelected] = useState('');\n\n useEffect(() => {\n if (children) {\n if (__DEV__) {\n console.debug('childen props', children);\n }\n return;\n }\n\n if (!config) {\n (async () => {\n // TODO: Switch to window.__twpdeu.getFieldConfigs\n const config = await getAttributes({ fieldName });\n if (__DEV__) {\n console.debug('config from API', config);\n }\n setConfig(config[0]);\n })();\n }\n }, []);\n\n useEffect(() => {\n if (submit && selected) {\n if (__DEV__) {\n console.error('push not implemented', selected, source);\n }\n onFinished({ isFinished: true, isError: false });\n }\n }, [submit, selected]);\n\n if (!(children || config)) {\n return <span>loading</span>;\n }\n\n const defaultValueProp = defaultValue ? { defaultValue } : {};\n\n const disabledProp = disabled ? { disabled: true } : {};\n\n // sort and filter out archived values\n const values = config\n ? config.values\n .sort((a, b) => a.order - b.order)\n .filter((value) => value.archived !== true)\n .filter(valuesFilter)\n : [];\n\n return (\n <SelectWrapper>\n <Select.Root\n onValueChange={(e: string) => {\n onChange({ value: e });\n setSelected(e);\n }}\n {...defaultValueProp}\n {...disabledProp}\n >\n {children ? children : null}\n {!children && config && (\n <>\n <Select.Trigger data-test-id={`${config.name}-select-trigger`}>\n <Select.Label>{label || config.name}</Select.Label>\n <Select.Value />\n </Select.Trigger>\n <Select.Content\n css={{ zIndex: theme.zIndices.page }}\n data-test-id={`${config.name}-select-content`}\n >\n {values.map((value) => (\n <Select.Item value={value.name} key={value.name}>\n {value.name}\n </Select.Item>\n ))}\n </Select.Content>\n </>\n )}\n </Select.Root>\n </SelectWrapper>\n );\n};\n\nconst SelectWrapper = styled('div', {\n boxSizing: 'border-box',\n display: 'flex',\n marginBottom: '$100',\n flexDirection: 'column',\n '& button': {\n padding: '1px 6px',\n },\n '& *': { boxSizing: 'border-box' },\n});\n"],"names":["CollectionBehaviors","COLLECT","DO_NOT_COLLECT","AttributesState","SUCCESS","IngestResponseState","SYSTEM_ERROR","INVALID_TYPE","INVALID_IDENTIFIER","INVALID_DATA","INVALID_ATTRIBUTE_DEFINITION","INVALID_META_DEFINITION","hasRequiredPrivacyCookies","window","wp_usp","getCookie","countryCode","_WPGeo","WPGeo","country_code","base","ENDPOINTS","attributesCache","getAttributes","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","fieldName","fieldNames","url","data","json","attributes","wrap","_callee$","_context","prev","next","abrupt","URL","searchParams","set","join","fetch","toString","credentials","headers","JSON_HEADERS","sent","ok","status","ResponseStatus","t0","console","debug","stop","_x","apply","arguments","DESelect","source","label","dataDictionaryConfig","defaultValue","disabled","submit","_ref$onChange","onChange","_ref$onFinished","onFinished","_ref$valuesFilter","valuesFilter","children","_useState","useState","config","setConfig","_useState2","selected","setSelected","useEffect","process","env","NODE_ENV","error","isFinished","isError","React","defaultValueProp","disabledProp","values","sort","a","b","order","filter","value","archived","SelectWrapper","Select","Root","_extends","onValueChange","e","Trigger","name","Label","Value","Content","css","zIndex","theme","zIndices","page","map","Item","key","styled","boxSizing","display","marginBottom","flexDirection","padding"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|